Archos 43インターネットタブレット(Android 2.3.26)でUSBデバッグをオンにしましたが、adbはデバイスを検出しません。
Kubuntu 11.04があります。
シェルコマンド「lsusb」の出力:
michael@schlepptop777:~/.Android_sdk/platform-tools$ lsusb
Bus 008 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 002: ID 0e79:1411 Archos, Inc.
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
私の「ベンダーID」は0e79ですよね?
次のステップでは、次のファイルを作成しました。
Sudo kate /etc/udev/rules.d/51-Android.rules
次の内容で:
SUBSYSTEM=="usb", SYSFS{idVendor}=="0e79", MODE="0666"
その後、アクセス許可を設定しました。
Sudo chmod a+rx /etc/udev/rules.d/51-Android.rules
次に、保存してudevを再起動しました。
Sudo /etc/init.d/udev restart
そして、すべてのステップを実行した後、adbはまだ私のデバイスを表示しません:
michael@schlepptop777:~/.Android_sdk/platform-tools$ ./adb devices
List of devices attached
<empty line, because stackoverflow does not display this>
場合によっては、このファイルにベンダーIDを追加する必要があります:~/.Android/adb_usb.ini
# Android 3RD PARTY USB VENDOR ID LIST -- DO NOT EDIT.
# USE 'Android update adb' TO GENERATE.
# 1 USB VENDOR ID PER LINE.
0x0e79
SDKをアップグレードすると、このファイルが上書きされる可能性があるため、後で再編集する必要がある場合があることに注意してください。
マゲイア2
最初は、次のようなものを得ました:
$ adb devices
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
List of devices attached
それから、設定を行う必要があることがわかりました|アプリケーション|開発し、[USBデバッグ]チェックボックスをオンにします。
$ adb devices
List of devices attached
???????????????? no permissions
ルートとして試して、私は得た:
$ su -l
# adb devices
List of devices attached
???????????????? no permissions
それから、adbが通常のユーザーとしてまだ実行されていることに気付きました。ルートとして、私がやったとき:
# adb kill-server
# adb devices
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
List of devices attached
A43-A44C0002-9BF80000-0C60C4CC-0D020027 offline
ADB for Android Developers(ARCHOS Internet Tablet) は役に立ちましたが、最終的にはルートとしてこれを行うことになりました。
# cat /etc/udev/rules.d/51-Android.rules
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device",
SUBSYSTEM=="usb", ENV{PRODUCT}=="e79/*", MODE="0666"
SUBSYSTEM=="usb", SYSFS{idVendor}=="e79", MODE="0666"
# udevadm control --reload-rules
# udevadm monitor
.
.
.
^C
Monitorコマンドは、デバイスの接続、切断、パスなどを表示するので役立ちました。
その後、ルートとして実行されているサーバーを停止し、通常のユーザーとして起動することができました。
# adb kill-server
# exit
$ adb devices
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
List of devices attached
A43-A44C0002-9BF80000-0C60C4CC-0D020027 offline
「オフライン」の場合、デバイスは機能しません。これを修正するには、Archos 43を再起動する必要がありました。
$ adb devices
List of devices attached
A43-A44C0002-9BF80000-0C60C4CC-0D020027 device
これらのアクションが必要だったとは思いませんが、再起動後に安全にプレイするには、USBデバッグをオンにする前に、必ずUSBを接続し、充電のみを選択してください。 WiFiと同期も無効にしていましたが、いったん機能し始めても、adbは接続しているユーザーと接続していました。
この時点で、私のアプリのダウンロードは機能しました:
$ adb install bin/HelloWorld.apk
2914 KB/s (157589 bytes in 0.052s)
pkg: /data/local/tmp/HelloWorld.apk
Success
追伸翌日、すべてが前夜に機能することを知って、開発システムを起動し、再度接続しようとしました。これにより、「オフライン」ステータスになりました。 Archos 43を再起動せずに、同期とWiFiを無効にしてから、adb devices
は、「オフライン」ではなく「デバイス」ステータスを示しました。それをどうすればよいのかわかりませんが、この機能をオフにすることは、結局は重要なことです。
コマンドを実行した後Sudo /etc/init.d/udev restart
システムを再起動する必要があります! Windowsの動作のように聞こえますが、このことを発見する前に3時間頭を骨折しました。
Sdカードリーダーからケーブルを借りましたが、adbでは機能しませんでしたが、sdカードリーダーでは機能しました。新しいケーブルを試してみましたが、adbデバイスがデバイスを認識しているのを見てください!
実際、Aultbotと同じように、ケーブルを交換することも私にとってはうまくいきました。突然ADBで動作しなくなったとき、数時間ケーブルを使用していたので奇妙です。
また、必ず電話での接続を受け入れてください(Android 4)の新しいセキュリティ機能)
編集:最近、adbサービスに関していくつかの問題がありました。開始されない場合(デバッグメッセージを取得するためにadbコマンドを実行する前にnetstatなどで確認するか、「set ADB_TRACE = 1」と入力します)、そのエラーメッセージを処理するスレッドを確認します。一般的な問題は、デフォルトポートが他のアプリケーションで使用されていることです(adbコマンドの前に「set Android_ADB_SERVER_PORT = 12345」と入力してポートを変更します)。
私はubuntu 11.04を使用していますが、adbをAtrixに接続する唯一の方法は、USB接続モードを「Windows Media Sync」に変更することです。そもそもこれは奇妙ですが、Windows上のADBがメディア同期を獲得するように設定されていると接続できないため、特に奇妙です。または、ワイヤレスadbを使用できます。 wifi adbを簡単に有効にできるウィジェットがいくつかあります。彼らは、ウィジェットとすべてにIPアドレスを示しています。 :)