AI4AプロジェクトのGary Frederickさんが週末に
App Inventor - Personal Server install
というお題でHangoutsイベントを実施されていました。
この録画を見ていて気付いたのですが、AI4AのV1.4.5Aというバージョンが存在しておりました。
AI4A-Configurations V.1.4.5A
内訳を見るとGoogleAppEngineを含んだAI4A V1.4.5Aアーカイブとそれを起動するためのバッチファイルがアップロードされています。
その中に、
launch-buildserver32.cmdというバッチファイルが含まれています。
※他にもBuildサーバ起動時に付加するオプション引数を与えられるようにソースに手が入っているようです。
これは32bitOS環境でBuildサーバを起動するためのバッチファイルです。
(※追記)
このエントリを公開した直後にGary Frederickさんから「<1GBメモリでも動くよ」とご指摘をいただきました。再度確認してエントリの修正をしてみたいと思います。
↓
(※エントリ内容の訂正)
その後動作確認ができましたのでご報告します。32bit OS用バッチファイルにおいてJavaの引数を
... -Xmx900m ... --childProcessRamMb 900と物理メモリ量よりも少なくすることで Buildサーバの起動およびAPKファイルの構築が完全にできることを確認しましたので訂正します。
素早くアドバイスをいただきましたGary Frederickさんに感謝申し上げます。
確かに物理メモリ量よりも大きな値を設定していたのではVMが起動しないですのでこの点に注意をして設定する必要がありました(デフォルトで指定されていた値分のメモリが無いと動作しないと思い込んでおりました)。
launch-buildserver32.cmdの内容は保有しているシステムのメモリ状況によって調整する必要がある点に注意すれば動作させることが可能ということになります。
書き換えのポイントとしては、最初のJAVA_HOME設定の部分を以下のようにサーバ起動に関係なく64bitと32bit判定のみするようにすることと、
もう1つはBuildサーバ起動部分を以下のようにすることの2点です。IF NOT "%PROCESSOR_ARCHITECTURE%" == "AMD64" (echo "JAVA_HOMEをUSBメモリ内のJDK(32bit)に指定"set JAVA_HOME=%CURDIR%\jdk1.7.0_11_32) ELSE (echo "64bit OSの場合はUSBメモリ内のJDK(64bit)に指定"set JAVA_HOME=%CURDIR%\jdk1.7.0_11)
IF %SERVER% == 1 (echo **************************************************echo App Inventor Serverを起動しますecho **************************************************start /MIN %~dp0\AI4A\AppEngine\startAI.cmdecho **************************************************echo Build Serverを起動しますecho **************************************************IF NOT "%PROCESSOR_ARCHITECTURE%" == "AMD64" (start /MIN %~dp0\AI4A\BuildServer\launch-buildserver32.cmd) ELSE (start /MIN %~dp0\AI4A\BuildServer\launch-buildserver.cmd))
Gary Frederickさんについては、AI4AのGoogleグループにて
AdMob in App Inventorなるキーワードの含まれた投稿をされており、非常に興味深い取り組みをされているので今後の動向をチェックしていきたいと思います。
このあたりのノウハウが充実してくるとApp Inventorの活用の幅が大きく広がってくるのではないかと期待しています。
0 件のコメント:
コメントを投稿