Dev PhoneにUbuntuマシンから接続しようとしたら'error: insufficient permissions for device'などと怒られるときの対処法
Ubuntu 9.10のマシンにADP2を繋げてadbから操作しようとして少しハマっていたが、なんとかできるようになった。
手順としては、
- AndroidManifest.xmlファイルでandroid:debuggable="true"にする
- Dev Phone側でUSB debuggingを有効にする
- ホスト側(Ubuntu)のマシンで/etc/udev/rules.d/51-android.rulesを作成する
- adbをroot権限で実行する。
具体的には、1〜3はDeveloping on a Device | Android Developersに記載されているのでそちらを参考に。
私は4でしばらく躓いていた。
誤ってユーザ権限で実行すると、
$ adb devices List of devices attached ???????????? no permissions
とか
$ adb shell error: insufficient permissions for device
とか表示されたりするので、一度終了してから再度adbを起動する必要がある。
$ adb kill-server $ sudo adb start-server $ adb devices
これでシリアルナンバーらしきものが表示されたらOK。以後はsudoしなくてもadbを実行できる。
これまでエミュレータで作成していたサンプルプログラムを試しに実行してみたら、Eclipse上ではいくらかエラーが出力されるみたいだけど実機上でちゃんと動いていたのでとりあえずは気にしないことにする。