Android Scripting Environment (ASE)によって、Android端末にスクリプティング機能が付け加えられた。ASEをインストールすることによって、デバイス上でスクリプトを書き、実行することが可能になったのだ。
Androidのアプリケーション開発を支援するツールはたくさんあるが、端末上でスクリプトを書くことにより、素早く実験しプロトタイピングまで端末上でできるようになる。IDEからロードしたり、コンパイルしたりデプロイしたりする必要がないのだ。
ASEはAndroid APIにアクセスするために2つの方式を使っている。現在のところ、PythonとLuaランタイムがASEでスクリプトを実行させるために利用できる。これらのランタイムはネイティブアプリケーションであり、JSOP-RPCを経由してAPIにアクセスする。
AndroidはJavaをベースとしているので、JVM上の言語を実行させるという選択肢もある。現在のところJava言語の動的言語バージョンであるBeanShellが利用可能だ。JVMをベースとしたインタプリタはASEの内部で起動し、RPC呼び出しを経由する必要はない。
ASEによって、Android上で動作するJVM言語は増えてくるだろう。JRubyが、Android上で初めてサポートされたが、問題が残っている。問題一つは、AndroidがDalvik VM(AndroidのアプリケーションはDalvik VMのバイトコードにコンパイルされる)を使っていることである。
ASEのSVNレポジトリを見てみるとJSON RPCをベースとしたRubyサポートの兆候が見られる。
AndroidでRubyを使う別の方法は、Rhodesを使う方法だ。
ASEがどのようにして継続的に開発されていくか興味深い。アプリケーションによってプラットフォームにインタプリタを提供することを許可していないiPhoneと違い、ASEによってAndroid端末はスクリプトによる拡張が可能となった。スクリプトはユーザによって作成、編集が可能なのだ。
InfoQ ホームページ ニュース Android上でのスクリプト言語のサポート、Python、Lua、Beanshellが利用可能に。Ruby対応の計画もあり