• Ubuntuに関連したハード、ソフトの備忘録サイトです

PythonでAndroidアプリを作成する方法(暫定投稿)


Androidアプリを作成するにはEclipse+Android SDK+Javaというのが正道ですが、Pythonでも作れるようです。Android端末で、Pythonなどのスクリプト言語を実行させるAndroid Scripting Environmentという環境が準備されています。

公式サイトは、http://code.google.com/p/android-scripting/です。ここのダウンロードで、sl4a_r*.apk、PythonForAndroid_r*.apkをAndroid端末でダウンロードし、ファイルマネージャーでたたけば、ASEとPythonをインストールしてくれます。秀和システムの好著「Python2/3入門」に掲載のソースコードをFTPなどで端末に送り、タップして実行すると次のようになります。

Screenshot_2014-04-07-19-28-41

 

上図の画面キャプチャに表示されているウィンドウがPythonで作成したものです。ソースコードは、

import android

droid = android.Android()

#ダイアログ表示をするにはdialog~系APIを使います
droid.dialogCreateAlert("Alert","Are you OK?")
droid.dialogSetPositiveButtonText("OK")
droid.dialogSetNegativeButtonText("NG")

#ダイアログの表示
droid.dialogShow()

#ダイアログレスポンスの取得
res = droid.dialogGetResponse()

if res.result['which'] == 'positive':
    droid.makeToast("OK")
elif res.result['which'] == 'negative':
    droid.makeToast("NG")
else:
    raise Exception()

ただし、コメント文は削除する必要がありました。ただし、Android端末でコードを書くのは苦痛ですので、VirtaulBoxにAndroid for X86をインストールしたところ、Google Play Storeでアプリをダウンロードできるようになっていました。シメシメと思ったのですが、Android4.4のRC1なので、ASEは動作しません。正式版では対応するようにして欲しいものです。スクリプト言語Pythonの膨大なライブラリーがそれなりに活用できると思いますので、Javaで開発するよりは手間暇が省けると思います。ただし、統合開発環境はまだないようです。

なお、Nexus5で画面キャプチャをする方法は、電源ボタン+音量ボタンの同時押し下げでした。

capture

 

キャプチャした画像は/storage/emulated/0/Pictures/Screenshotsに保存されます。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA