App Inventorがオープンソースで公開されたのでGoogle App Engineにデプロイしてみた
プログラミングの知識がなくてもAndroidアプリを作ることが出来るApp Inventorがオープンソースで公開されたので早速試してみた。簡単に手順を紹介。
必要なもの
- Google App Engine
- Google App EngineのJava用SDK
- apkをパッケージングするためのビルドサーバ
- Google App Engineからアクセスできる必要がある
- Java実行環境が必要
- 2012/01/22時点ではWindows不可
Google App Engineの設定。
Google App Engineでアプリケーションを新規作成。アプリケーションIDを控えておく。
http://code.google.com/intl/ja/appengine/downloads.html からJava 用 Google App Engine SDKをダウンロード、解凍。
http://appinventoredu.mit.edu/download-jar-files から最新のappinventor-serviceのzipファイルをダウンロード、解凍。
$ unzip appinventor-service-*.zip $ cd appinventor-service-*/
解凍したら、まずappinventor-*.tgzを解凍。
$ tar zxf appinventor-*.tgz $ cd appinventor-*/appinventor/
設定ファイルwar/WEB-INF/appengine-web.xmlを編集、ビルドサーバにするマシンを指定する。
<property name="build.server.host" value="localhost:9990" />
このlocalhostを後ほど用意するビルドサーバのホスト名もしくはIPアドレスに置き換える。
App Inventorを特定のGoogleアカウントのみに制限する場合は、use.whitelistを有効に。同じwar/WEB-INF/appengine-web.xmlを編集。
<property name="use.whitelist" value="false"/>
このfalseをtrueに。war/WEB-INF/whitelistに許可するGoogleアカウントを羅列。
GAEにデプロイ。
$ (GAE SDKのディレクトリ)/bin/appcfg.sh -A (アプリケーションID) update war
正しくデプロイできることを確認。
ビルドサーバの設定
先程ダウンロードしたappinventor-serviceのzipファイルに含まれているfor-BuildServer-*.tgzをビルドサーバで解凍。中に含まれるBuildServer.tarも解凍。
$ tar zxf for-BuildServer-*.tgz $ cd for-BuildServer-*/ $ tar xf BuildServer.tar
ビルドサーバを起動。
$ ./launch-buildserver
試してみる
http://(アプリケーションID).appspot.com/ にアクセス。はいあとはお好きにどうぞ。
右上プルダウンのPackage for PhoneからDownload to this computerを選択、しばらく待ってapkがダウンロードされたらビルドサーバ含めて正しく動作しているんだと思います。
ビルドサーバとしてさくらのVPS512で試してみましたが、512MBのメモリではキツイです。
詳しい手順
上記手順はこちらの手順書の抄訳です。
Running App Inventor services with the MIT JAR files