Androidアプリケーション開発はエミュレータだけでも可能ですが、Androidデバイスを持っているのであれば、実機上でも動かしてみた方がデバッグはしやすいと思います。
というわけで今回はAndroid開発の実機環境としてXperia(SO-01B)を使う手順を紹介します。
まず、XperiaとPCをUSBケーブルで接続します。
次に、Xperia側でUSBデバッグ(設定→アプリケーション→開発)を有効にします。
この時点でLinux PCが正常にXperiaを認識していればadb devicesでXperiaが表示されるはずですが、Ubuntu Linux 9.10では正常に認識されませんでした。
# adb devices
List of devices attached
???????????? no permissions
認識しない理由はudevのルールファイルにXperiaが存在しないためです。
udevとはLinux PCに接続されたデバイスに対して動的にデバイスファイルを生成する為のしくみのことです。
したがって、udevのルールファイルにXperiaの情報を追加してやれば正常にXperiaを認識してくれるはずです。
では、以下のようにルールファイルを追加します。
# nano -w /etc/udev/rules.d/51-android.rules
SUBSYSTEM==”usb”, SYSFS{idVendor}==”0fce”, MODE=”0666″
SYSFS{idVendor}==”0fce”の「0fce」がXperiaを指しています。
この記述によりLinux PCにXperiaが接続されたとき、udevが自動的にXperia用のデバイスファイルを生成します。
ルールファイルを作ったらadbを再起動します。
再起動はroot権限で行わないとXperiaを正常に認識しませんので注意して下さい。
# sudo adb kill-server
# sudo adb start-server
* daemon not running. starting it now *
* daemon started successfully *
あとはもう一度XperiaとLinux PCをUSB接続しなおせば、adb devicesでちゃんとXperiaを認識します。
# adb devices
List of devices attached
CB511GUDGK device