2011-06-26 78 views
29

Tôi đã bật USB gỡ lỗi trên máy tính bảng Archos 43 Internet của tôi (Android 2.3.26), nhưng adb không phát hiện thiết bị.Phát hiện thiết bị gỡ lỗi (ADB) không hoạt động

Tôi có Kubuntu 11.04.

Sản lượng lệnh shell "lsusb":

[email protected]:~/.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 

Vì vậy, tôi "Vendor ID" là 0e79, phải không?

Đối với bước tiếp theo tôi đã tạo ra các tập tin sau đây:

sudo kate /etc/udev/rules.d/51-android.rules 

với các nội dung sau đây:

SUBSYSTEM=="usb", SYSFS{idVendor}=="0e79", MODE="0666" 

Sau đó tôi đã thiết lập các điều khoản:

sudo chmod a+rx /etc/udev/rules.d/51-android.rules 

Sau đó, tôi đã lưu và khởi động lại udev:

sudo /etc/init.d/udev restart 

Và sau khi làm tất cả những gì bước adb vẫn không hiển thị điện thoại của tôi:

[email protected]:~/.android_sdk/platform-tools$ ./adb devices 
List of devices attached 
<empty line, because stackoverflow does not display this> 
+0

Bạn đã thử khởi động lại ADB chưa, và sau đó có thể ngắt kết nối/kết nối lại thiết bị, khởi động lại PC? –

Trả lời

32

Trong một số trường hợp, bạn cũng cần phải thêm id nhà cung cấp để tập tin này: ~/.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 

tâm rằng tập tin này có thể được ghi đè khi bạn nâng cấp SDK, vì vậy bạn có thể cần phải chỉnh sửa lại nó sau đó .

+2

Cảm ơn bạn, tôi vừa mới sử dụng hướng dẫn sau: http://www.archos.com/support/support_tech/updates.html?country=us&lang=vi (Mục: ADB dành cho nhà phát triển Android (ARCHOS Internet Tablet))) Bằng đề xuất của bạn :) – Spitfire777

+0

Tuyệt vời! Nó luôn luôn tốt để có thể adb thiết bị của bạn;). –

+2

Và tôi luôn quên thêm "0x" trước id. Thật là bực mình !!! Cảm ơn rất nhiều! –

0

Tôi đang trên ubuntu 11.04, cách duy nhất tôi có thể nhận được adb để kết nối với Atrix của tôi là bằng cách thay đổi USB chế độ kết nối đến "Windows Media Sync". Đó là lẻ ở nơi đầu tiên, nhưng nó đặc biệt là lẻ vì ADB trên cửa sổ sẽ không kết nối khi nó được thiết lập để giành chiến thắng đồng bộ phương tiện truyền thông. Hoặc bạn có thể sử dụng adb không dây. Có một vài vật dụng mà làm cho nó thực sự dễ dàng để kích hoạt quảng cáo wifi. Họ hiển thị địa chỉ ip trên tiện ích và mọi thứ. :)

2

Sau khi thực hiện lệnh sudo /etc/init.d/udev restart bạn phải khởi động lại hệ thống! Tôi biết, nó có vẻ giống như một hành vi cửa sổ, nhưng tôi đã phá vỡ đầu của tôi trong 3 giờ trước khi phát hiện ra điều này.

+1

Không đúng sự thật. Bạn có thể cần phải giết máy chủ adb đang chạy. –

+1

đúng !! sau gần nửa giờ thử nghiệm tất cả các lệnh khác, việc khởi động lại hoạt động như một sự quyến rũ, cảm ơn;) có thể có cách khác nhưng nó hoạt động đối với tôi – Hugo

2

Tôi mượn cáp từ đầu đọc thẻ sd và nó không hoạt động cho adb, trong khi nó hoạt động với đầu đọc thẻ sd. Tôi đã thử cáp mới và thiết bị ade thấp và nhìn nhận được Thiết bị!

7

Mageia 2

Lúc đầu, tôi nhận được một cái gì đó như:

$ adb devices 
* daemon not running. starting it now on port 5037 * 
* daemon started successfully * 
List of devices attached 

Sau đó, tôi thấy mình cần phải làm Cài đặt | Ứng dụng | Phát triển và kiểm tra hộp kiểm USB Debugging.

$ adb devices 
List of devices attached 
???????????????? no permissions 

Đang cố gắng như là người chủ, tôi nhận:

$ su -l 
# adb devices 
List of devices attached 
???????????????? no permissions 

Sau đó, tôi nhận ra rằng adb vẫn chạy như người dùng thường xuyên.Khi nào, như là người chủ, tôi đã làm:

# 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) là hữu ích, ngoại trừ tôi đã kết thúc làm điều này như là người chủ:

# 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 

Lệnh màn hình là hữu ích vì nó cho thấy các thiết bị kết nối, ngắt kết nối, đường dẫn vv

tôi sau đó có thể ngăn chặn các máy chủ chạy bằng root, và bắt đầu nó như là một người sử dụng thường xuyên:

# 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 

Thiết bị sẽ không hoạt động khi "ngoại tuyến". Để khắc phục điều đó tôi phải khởi động lại máy Archos 43.

$ adb devices 
List of devices attached 
A43-A44C0002-9BF80000-0C60C4CC-0D020027 device 

Mặc dù tôi nghi ngờ rằng những hành động này đã được yêu cầu, để chơi nó an toàn, sau khi khởi động lại, tôi chắc chắn để cắm USB và chọn Charge Chỉ trước khi tôi đặt Gỡ lỗi USB trên. Tôi cũng đã vô hiệu hóa WiFi và Đồng bộ hóa, nhưng một khi nó bắt đầu hoạt động, adb vẫn sẽ kết nối với những người đang ở trên.

Tại thời điểm này, tải ứng dụng của tôi làm việc:

$ adb install bin/HelloWorld.apk 
2914 KB/s (157589 bytes in 0.052s) 
     pkg: /data/local/tmp/HelloWorld.apk 
Success 

T.B. Ngày hôm sau, biết rằng mọi thứ đã hoạt động vào đêm hôm trước, tôi khởi động hệ thống phát triển của mình và cố gắng kết nối lại. Điều này đã cho trạng thái "ngoại tuyến". Tôi đã tắt đồng bộ hóa và WiFi mà không cần khởi động lại Archos 43, sau đó adb devices hiển thị trạng thái "thiết bị" thay vì "ngoại tuyến". Tôi không chắc chắn phải làm gì với điều đó, nhưng sau này tất cả mọi thứ đều biến mất.

1

Thực ra, cũng giống như Aultbot, thay thế dây cáp cũng là một mẹo cho tôi. Lạ lùng như tôi đã sử dụng cáp trong vài giờ khi nó đột nhiên không hoạt động với ADB.

Ngoài ra, hãy chắc chắn rằng bạn chấp nhận các kết nối trên điện thoại (chức năng bảo mật mới trong Android 4)

Chỉnh sửa: Gần đây, đã có một số vấn đề liên quan đến dịch vụ adb. Nếu nó không được bắt đầu (hãy kiểm tra với netstat hoặc tương tự hoặc gõ "set ADB_TRACE = 1" trước khi chạy lệnh adb của bạn để nhận các thông báo lỗi), sau đó kiểm tra các luồng xử lý thông báo lỗi đó. Một vấn đề phổ biến là cổng mặc định đang được sử dụng bởi một số ứng dụng khác (thay đổi cổng bằng cách nhập "thiết lập ANDROID_ADB_SERVER_PORT = 12345" trước lệnh adb).

Các vấn đề liên quan