がぶちゃんの日記

札幌からフルリモートCTO

MIT版App Inventorをローカルで動かしてみた。動いたよ!

このエントリーは 日本App Inventorユーザー会 Advent Calendar 2011 のエントリーです。

いよいよ、12月末で現在のGoogle版App Inventorはサービス停止します。既にアプリを作成している皆様は、App Inventorのプロジェクト一覧のページで「Download All Projects」をクリックして、大事なプロジェクトを全てダウンロードしておきましょう。

そして、MIT版App Inventorは2012年第1四半期にサービスを開始するとのことです。1月1日から利用できないのは残念ですが、少し待つと再び使えるようになりますので、ご安心ください。また、正式に発表されたらご連絡したいと思います。

ついにApp Inventor自体をダウンロードできるようになったよ!

MITに移管され、オープンソース化する予定のApp Inventorですが、実は、まだソースコードはダウンロードできませんが、バイナリはダウンロードできます。これで誰でもApp Inventor自体をダウンロードして動かすことができます。

今回は、ローカルで動かすところまでできたので手順を共有したいと思います。

App Inventorを動かすには

MITがApp Inventorを動かす方法を公開しています。
Running App Inventor services with the MIT JAR files (英語)

MITのドキュメントは英語なので、日本App Inventorユーザー会の方々が和訳してくださいました。
http://www.app-inventor.jp/shiryoushuu/transrate (日本語)

基本的に手順どおりでOKです。

手順メモ

ここから開発者向けなので丁寧さが下がりますがご了承ください。おそらく開発者の方ではないと難しいと思いますので。

Google App Engine SDK for Java

App InventorはApp Engineで動作するのでGoogle App Engine SDK for Javaが必要です。
http://code.google.com/intl/ja/appengine/downloads.html#Google_App_Engine_SDK_for_Java からダウンロード、解凍して、適当なフォルダに置いて、bin/にパスを通します。

App Inventorのバイナリをダウンロード

http://appinventoredu.mit.edu/download-jar-files から最新のファイルをダウンロードします。これは随時アップデートされるので、ページにも書いてありますが http://groups.google.com/group/mit-appinventor-jars にJoinしてアップデート情報をウォッチしておきましょう。

解凍すると以下の2つのファイルができます。

  • appinventor-Nov-24.tgz : App Engine用
  • for-BuildServer.tgz : ビルドサーバ用
ビルドサーバ用

for-BuildServer.tgzを解凍すると、

  • BuildServer.tar
  • launch-buildserver

が、できます。BuildServer.tarも解凍します。すると、lib/フォルダができます。
これで、

  • launch-buildserver
  • lib/

の状態になればOKです。
あとは、launch-buildserverを実行するだけです。

./launch-buildserver

ログがbuildserver-log.outというファイルに出力されるので見てみます。

tail -f buildserver-log.out

情報: Root resource classes found:
  class com.google.appinventor.buildserver.BuildServer
2011/12/17 22:23:12 com.sun.jersey.api.core.ScanningResourceConfig init
情報: No provider classes found.
2011/12/17 22:23:12 com.sun.jersey.server.impl.application.WebApplicationImpl _initiate
情報: Initiating Jersey application, version 'Jersey: 1.3 06/17/2010 05:04 PM'
2011/12/17 22:23:13 com.sun.grizzly.Controller logVersion
情報: Starting Grizzly Framework 1.9.18-i - Sat Dec 17 22:23:13 JST 2011
Visit: http://192.168.11.3:9990/buildserver
Server running

9990ポートで起動しているようです。(現状、ポートを変える方法は探したけどないみたいです。)

とりあえず、上のようにログがでていればOKです。

ちなみに、停止したいときは、それっぽいコマンドがないのでkillします。

App Engine側

appinventor-Nov-24.tgzを解凍すると、appinventor/war/というフォルダができます。このwar/フォルダがApp Engine用Webアプリのエントリポイントです。

以下のコマンドで実行します。

dev_appserver.sh appinventor/war/

Webブラウザから http://localhost:8080/ にアクセスすると、

そのままLog InでOKです。(ホワイトリストを設定している場合は、そのメールアドレスでログインしてください。)

利用規約(?)にacceptすると・・・

動いたー!ローカルでApp Inventorが動いてるー!

Google版App Inventorのプロジェクトファイルがアップロードできるか確認します。

ダウンロードしておいたzipファイルを選択して、OK!

うおー!ちゃんと引き継げてるー!おかえり!アリバイツイート!

さてさて、Blocks Editorを・・・

許可すると・・・

うおー!Blocks Editorも動いてるー!

では、さっそく実機で動くか確認を・・・

動いたー!Google版と同等に使えるようです!さすがMITさん!

ちなみに、App Inventorをローカルではなくサーバで運用するためには、上の手順書を参照してください。ホワイトリストぐらいはやっておいた方が良いかと思います。

てか、ソースコードまだー(ばんばん

ということで

App InventorのMIT移管は順調のようです。ほっと一安心。ただ、スタートが2012年第1四半期としか言われていないので1月1日からはしばらく使えなくなります。生まれ変わったApp Inventorが使えるようになるまでぐっと待ちましょう。

ちなみに、日本App Inventorユーザ会でMITがサービスを開始するまでの空白期間を自分たちのサーバで運用しようという活動をしています。

興味がある方は、以下をチェックしてみてください。

申し込みページ: https://sites.google.com/site/appinventorjp/noahs_arc_project
MLのディスカッション: https://groups.google.com/group/app-inventor-jp/browse_thread/thread/ff7491bee4be8380?hl=ja

それでは!

30分でつくれるAndroidアプリ Google App Inventorではじめよう!

30分でつくれるAndroidアプリ Google App Inventorではじめよう!