Debian on IS01 から Androidのプログラムを利用する。

Androidでは am というコマンドで下記の様にコマンドラインからインテントを投げる事が可能です。(暗黙的インテントの例)

Googleのトップページの表示


am start -a android.intent.action.VIEW http://www.google.com
電話をかける

am start -a android.intent.action.CALL tel:090XXXXXXXX

このような仕組みをchrootしたDebianから使えないものかと悩んだ末、「chrootを脱出して本来のAndroidのrootディレクトリに再chroot」する方法を思いつきました。
具体的には以下の様にします(Google表示の例)。Debianのシェルから、


chroot /proc/1/root /data/busybox/bash -c "/system/bin/am start -a android.intent.action.VIEW http://www.google.com"
と1行打ち込むだけです。
/proc/1/root というのはinitの / ディレクトリへのシンボリックリンクだそうで、chroot状態でもここから外の世界がみえちゃいます(^^;
色々な応用法があると思いますが、手始めにw3mの外部ブラウザに下記のスクリプトを登録して試して見ましょう。ほとんどさっきの例と同じです。

chroot /proc/1/root /data/busybox/bash -c "/system/bin/am start -a android.intent.action.VIEW $1"
Debianw3mでyahooの天気にアクセス

そんでもって[shift]+[M]で外部ブラウザ起動

IS01の場合は終話キーでアプリ終了できるので、押せばまたDebianシェルに戻ります。
こんなカンジですね。他にも色々試したいと思いますー。