Ubuntu 13.10 64bit の ADT(adb) に Android デバイスを認識させる

1.ADT でエラー発生

Ubuntu 64bit に、ADT をインストールし、Android 実機を接続するも、全く認識しない。

以前インストールしたとき(32bit) では、????? と認識していた。

こんなエラー

Error executing aapt: Cannot run program "/home/piroto/opt/adt-bundle-linux-x86_64-20131030/sdk/build-tools/android-4.4/aapt": error=2, そのようなファイルやディレクトリはありません: error=2, そのようなファイルやディレクトリはありません UbuntuTest line 1 Android ADT Problem

Description Resource Path Location Type
Hint: On 64-bit systems, make sure the 32-bit libraries are installed: sudo apt-get install ia32-libs UbuntuTest line 1 Android ADT Problem

adt_install_on_ubuntu_error

2.ia32-libs のインストール

sudo apt-get install ia32-libs

せよと、エラーメッセージが言っているので、してみる。

ia32-libs というのは、64bit 版で 32bit のプログラムを利用するときに導入するライブラリのようだ。

$ sudo apt-get install ia32-libs
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています 
状態情報を読み取っています... 完了
パッケージ ia32-libs はデータベースには存在しますが、利用できません。
おそらく、そのパッケージが見つからないか、もう古くなっているか、
あるいは別のソースからのみしか利用できないという状況が考えられます
しかし、以下のパッケージで置き換えられています:
lib32z1 lib32ncurses5 lib32bz2-1.0

ぐぐって、以下の記事を発見。

Fix Android adb on Ubuntu 13.10 64bit

言われたとおりに、

$ sudo apt-get install libc6-i386 lib32stdc++6 lib32gcc1 lib32ncurses5
$ sudo apt-get install lib32	z1
$ sudo apt-get install android-tools-adb

adb サーバーを立ち上げ直す。

$ sudo adb kill-server

$ sudo adb start-server

adt_detected_android_device_failure

3.Androidデバイスの認識

OK認識した。

????? になっているが、これは、想定内。

http://developer.android.com/tools/device.html

接続したまま、ベンダーIDを調べる。

$ lsusb
Bus 
002 Device 005: ID 0bb4:0cf2 HTC (High Tech Computer Corp.)

以下のファイルを作成(2行目がファイルの内容0bb4がベンダーID)

$ sudo vi /etc/udev/rules.d/51-android.rules
SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", MODE="0666", GROUP="plugdev" 
$ sudo chmod a+r /etc/udev/rules.d/51-android.rules 

adt_detected_android_device_success

正しく、認識されました。めでたしめでたし。

正しく認識されない場合、以下を試す

設定ファイルの再読み込み

$sudo udevadm control --reload-rules

ADBリスタート

$sudo adb kill-server

ADBにデバイスが認識されるか確認

$sudo adb devices