早いもので、立冬ををむかえました。ご機嫌いかがでしょうか。
android開発の実機にパッド型のマシンが欲しいと思ってヤフオクを探していましたところ、
ありました。InfoTMICという中国製のパッド。
なにやら巷では「中華パッド」というあだ名があるそうですね。
iPadに似たマシンですが、これにAppleのクオリティを求めては駄目だと、おっさんは思います。
そもそも、Appleのクオリティを他社に求めるのは間違いで、「それ」が欲しければ、
AppleのiPad2を購入する
というのが、「最適解」と思うのです。
届いた、中国製のパッド。
android 2.3で、Wifiと有線LANでネットに接続でき、USBX2、MicroSDX2,HDMI出力という
強者です。
どうやら、FlyTouch,WowPadなどと同種のようです。亜種がたくさん出回っているみたい。
しばらく使っていると、「設定」に「開発」のメニューがありません。
ええっ、デバッグできないの?
いままでは、USB接続してデバッグしていたのに...
そういうことならば、「LAN越し」でデバッグできるように設定をしましょう。
■用意するもの
・ルート権限を取得するために
Universal Androot
・ファイルを探すために
ESファイルエクスプローラー
・コマンドを実行するために
Terminal Emulator
■手順
1.[Universal Androot]をインストール、実行。
「Go Root」ボタンをぽちっと押す。
「Superuser for Android 2.0〜2.2」でも取得できました。
設定で見せた、2.3というのは嘘かもしれません。
2.「ESエクスプローラー」をインストール、実行。
「設定」から、
「Rootエクスプローラー」にチェック
「ファイルシステムをマウントする」にチェック
「ホームディレクトリ」を「/]に変更
一度、終了させて、再実行。
「init.rc」を探します。はい「/]直下にありました。これをコピーして、sdcard1などにペースト。
3.コピーした「init.rc」を開いてみます。
長押しして、「テキスト」を選択、「ESテキストエディター」で。
androidをPCでデバッグする仕組みは、平たく言うと
androidで「adbd」デーモン(サービス)が起動していて、PC側の「adb」と通信して行なっている
と、おっさんは理解しています。
androidが起動するときに先の「init.rc」の設定によって行われているようですので、
「adbd」がサービスとして起動されているかを調べます。
はい、ありました。以下のような記述があります。
# adbd is controlled by the persist.service.adb.enable system property
service adbd /sbin/adbd
disabled
と、あって
on property:persist.service.adb.enable=1
start adbd
on property:persist.service.adb.enable=0
stop adbd
なるほど、「/sbin/adbd」を「adbd」という名前のサービスで定義しています。
「persist.service.adb.enable」というシステムプロパティの値によって
「start」
「stop」
しています。
adbとadbdが通信するポートのデフォルトは「5555」のようですので、adbdの通信ポート番号も設定しておきます。
どちらも、「システムプロパティ」で実現できそうですので、
「init.rc」をいじらなくても済みそうです。システム周りのものはあまり触りたくありませんから。
4.システムプロパティをセットするために「Terminal Emulator」をインストール、実行。
$su でスーパーユーザになって、以下の設定を行います。
ポートを「5555」に
#setprop service.adb.tcp.port 5555
システム起動時に「adbd」サービスを起動するために
#setprop persist.service.adb.enable 1
おもむろに、再起動。これで、「adbd」がサービスとして起動しているはずです。
再起動後に、psでプロセスを確認しても良いかもしれません。
PC側で試してみます。おっさんの場合、MacBookですが。
1.ターミナルを開く
念のため、adbを再起動
./adb kill-server
./adb start-server
androidのIPが「192.168.0.1」の場合
./adb connect 192.168.0.1
メッセージが出れば、接続ができました。
connected to 192.168.0.1:5555
おもむろに
./adb shell
先に、「Universal Androot」でルートを取得していますので、
#su でスーパーユーザーになれちゃいます。
2.「eclipse」でも、いままでどおりデバッグができます
あーよかった。
「感圧式」であろうと、マルチタッチができなくても、これが諭吉1人位で手に入ることを考えると
中国おそるべし、と思うのです。
さて、しばらくは、オモロイことができそうです。
焦っても、よいことはありませんので、ぼちぼちゆきましょう。