Android hỗ trợ nhiều thiết bị ngoại vi USB và phụ kiện USB Android (phần cứng triển khai giao thức phụ kiện Android) thông qua 2 chế độ: phụ kiện USB và máy chủ USB. Ở chế độ phụ kiện USB, phần cứng USB bên ngoài đóng vai trò là USB host. Ví dụ về phụ kiện có thể bao gồm:
- bộ điều khiển robot
- trạm lấy và trả xe
- thiết bị chẩn đoán và âm nhạc
- kiosk
- máy đọc thẻ
và nhiều câu hỏi khác. Điều này giúp các thiết bị chạy Android không có tính năng lưu trữ có thể tương tác với phần cứng USB. Các phụ kiện USB của Android phải được thiết kế để hoạt động với các thiết bị chạy Android và phải tuân thủ giao thức giao tiếp của phụ kiện Android. Ở chế độ hỗ trợ USB, thiết bị chạy Android đóng vai trò là máy chủ lưu trữ. Ví dụ về các thiết bị bao gồm máy ảnh kỹ thuật số, bàn phím, chuột và tay điều khiển trò chơi. Các thiết bị USB được thiết kế cho nhiều ứng dụng và môi trường vẫn có thể tương tác với những ứng dụng Android có thể giao tiếp chính xác với thiết bị.
Hình 1 cho thấy sự khác biệt giữa hai chế độ. Khi ở chế độ lưu trữ, thiết bị chạy Android sẽ hoạt động như USB host và cung cấp năng lượng cho xe buýt. Khi thiết bị chạy Android đang ở chế độ phụ kiện USB, phần cứng USB được kết nối (trong trường hợp này là phụ kiện USB Android) sẽ đóng vai trò là máy chủ lưu trữ và cấp nguồn cho xe buýt.
Hình 1. Chế độ máy chủ và phụ kiện USB
Các chế độ máy chủ và phụ kiện USB được hỗ trợ trực tiếp trong Android 3.1 (API cấp 12) hoặc các nền tảng mới hơn. Chế độ phụ kiện USB cũng được điều chỉnh cho phiên bản cũ là Android 2.3.4 (API cấp 10) dưới dạng một thư viện tiện ích bổ sung để hỗ trợ nhiều thiết bị hơn. Nhà sản xuất thiết bị có thể chọn có đưa thư viện tiện ích bổ sung vào hình ảnh hệ thống của thiết bị hay không.
Lưu ý: Cuối cùng, khả năng hỗ trợ các chế độ phụ kiện và máy chủ USB sẽ phụ thuộc vào phần cứng của thiết bị, bất kể cấp độ nền tảng. Bạn có thể lọc tìm các thiết bị hỗ trợ máy chủ USB và phụ kiện thông qua phần tử <uses-feature>
.
Xem tài liệu về phụ kiện và máy chủ USB để biết thêm thông tin chi tiết.
Những điều cần lưu ý khi gỡ lỗi
Khi gỡ lỗi ứng dụng sử dụng phụ kiện USB hoặc tính năng lưu trữ, rất có thể bạn đã kết nối phần cứng USB với thiết bị chạy Android. Thao tác này sẽ ngăn bạn kết nối adb
với thiết bị chạy Android qua USB. Bạn vẫn có thể truy cập adb
qua kết nối mạng. Cách bật adb
qua kết nối mạng:
- Kết nối thiết bị chạy Android bằng USB với máy tính của bạn.
- Trong thư mục
platform-tools/
của SDK, hãy nhậpadb tcpip 5555
tại dấu nhắc lệnh. - Nhập
adb connect <device-ip-address>:5555
. Bây giờ, bạn sẽ được kết nối với thiết bị chạy Android và có thể đưa ra các lệnhadb
thông thường nhưadb logcat
. - Để đặt thiết bị của bạn ở chế độ nghe trên USB, hãy nhập
adb usb
.