Android Debug Bridge (ADB) là công cụ dòng lệnh tích hợp trong Android SDK. Nó cho phép giao tiếp với thiết bị và thực hiện nhiều hành động: cài đặt và debug ứng dụng, sao chép file hai chiều, truy cập Unix shell để chạy lệnh.
Bạn có thể dùng ADB để tinh chỉnh cài đặt ẩn, thiết lập ứng dụng kết hợp ADB để kích hoạt tính năng mạnh mẽ, và nâng cao trải nghiệm thiết bị. Chúng tôi sẽ hướng dẫn cài đặt ADB và các lệnh shell quan trọng để thực hiện hành động hữu ích.
Cách ADB hoạt động
ADB là chương trình client-server gồm ba thành phần:
Client: Client chạy lệnh adb từ shell hoặc script trên máy phát triển. Vai trò: gửi lệnh đến server.
Daemon (adbd): Daemon chạy dưới dạng tiến trình nền trên thiết bị. Mục đích: kết nối với ADB server qua USB hoặc TCP cho emulator. ADB server coi thiết bị "online" khi kết nối thành công với daemon.
Server: Server chạy tiến trình nền trên máy phát triển. Mục đích: phát hiện cổng USB khi gắn/tháo thiết bị, duy trì danh sách thiết bị kết nối, gán trạng thái khác nhau như "online", "offline", "bootloader", "recovery".
Khi bạn gọi lệnh "adb", client trước tiên kiểm tra xem adb server đã chạy chưa. Nếu chưa, server thử kết nối với daemon cho đến khi tìm thấy. Khi thành công, bạn nhận yêu cầu ủy quyền trên thiết bị và bind cổng TCP cục bộ. Từ đó, nó tiếp tục lắng nghe cổng đó cho các lệnh.
Thiết lập ADB trên thiết bị
Gói ADB đã có sẵn trong "Android SDK Platform Tools" tích hợp trong Android Studio. Nếu bạn người dùng thông thường hoặc mới bắt đầu ADB, không cần cài IDE. Truy cập Android SDK Platform Tools và chọn link cho hệ điều hành của bạn.
Vì Google cập nhật platform tools định kỳ, có thể xảy ra sự cố khi nâng cấp. Khuyên dùng package manager để tự động cập nhật ADB và thiết lập Environment Variable (Windows) hoặc PATH (Mac) cho bạn. Xem hướng dẫn cài đặt và dùng Chocolatey cho Windows và Homebrew cho Mac để quản lý ADB.
Bật USB Debugging trên Android
Mở app Cài đặt (Settings) → Giới thiệu điện thoại (About Phone). Kéo xuống dưới cùng, tap Số bản dựng (Build Number) 7 lần. Sẽ hiện thông báo "bạn hiện là nhà phát triển". Quay lại Cài đặt > Hệ thống, tap Nâng cao (Advanced) để hiện Tùy chọn nhà phát triển (Developer Options). Ở đây, bật Gỡ lỗi USB (USB Debugging).
Ở mức bề mặt, USB Debugging cho phép thiết bị giao tiếp với máy tính chạy Android SDK. Để biết thêm, đọc hướng dẫn cách chế độ USB Debugging hoạt động trên Android.
Thiết lập ADB trên Windows
Mở File Explorer, duyệt đến nơi lưu file ZIP. Chuột phải giải nén nội dung vào C:\platform-tools. Cắm thiết bị vào PC, chuyển chế độ USB sang "Chuyển tệp" (File Transfer). Một số OEM có thể yêu cầu hoặc không, bạn có thể để chế độ này để tương thích.
Giữ phím Shift và chuột phải thư mục platform-tools chứa gói ADB. Chọn Mở cửa sổ PowerShell tại đây.
Sau đó gõ:
./adb devices
Lưu ý: Trong PowerShell, nhớ thêm dấu chấm-slash trước lệnh "adb devices". Không cần nếu dùng CMD.
Trên thiết bị, sẽ hiện prompt "Cho phép gỡ lỗi USB". Tích Luôn cho phép từ máy tính này và bấm OK. Gõ lại lệnh "./adb devices", nếu thành công bạn sẽ thấy số serial thiết bị.
Quy trình trên sẽ hoạt động, nhưng thiết bị Android đôi khi không kết nối qua ADB. Xem hướng dẫn sửa lỗi kết nối ADB trên Windows PC.
Thiết lập ADB trên Mac
Mở Finder, giải nén file zip đến vị trí ưa thích, Desktop hoặc Downloads. Cắm thiết bị vào Mac, chuyển chế độ USB. Mở Terminal, gõ đường dẫn thư mục platform-tools:
cd /Users/[UserName]/Downloads/platform-tools
Sau đó gõ:
adb devices
Trên thiết bị, chấp nhận prompt "Cho phép gỡ lỗi USB" và bấm OK để luôn cho phép kết nối. Gõ lại "adb devices" để thấy số serial thiết bị.
Thiết lập ADB không dây với Android
Thiết lập ADB qua USB suôn sẻ nhưng quy trình phức tạp. Có nhược điểm: số thiết bị cắm phụ thuộc cổng rảnh; có thể lỗi tương thích driver.
Có thể loại bỏ phiền toái bằng ADB qua Wi-Fi. Phương pháp này dùng lệnh "tcpip" và "connect" của ADB để dùng thiết bị không dây. Nhưng để chạy các lệnh này, thiết bị phải cắm qua USB trước.
Nếu bạn dùng Android 11 (với SDK platform tool phiên bản 30 trở lên) trở lên, có thể dùng wireless debugging để ghép đôi thiết bị với máy tính. Phương pháp này dùng lệnh mới "pair" và hoạt động tương tự ghép đôi Bluetooth.
Vào Cài đặt > Tùy chọn nhà phát triển > Bật Gỡ lỗi không dây (Wireless Debugging). Chọn Ghép đôi thiết bị bằng mã ghép đôi (Pair device with pairing code). Ghi nhớ mã ghép đôi, địa chỉ IP và số cổng.
Làm theo quy trình trên, sau đó gõ:
adb pair ipaddr:port
Thay "ipaddr" bằng địa chỉ IP, "port" bằng số cổng. Khi nhắc, nhập mã ghép đôi nhận được trước đó. Nếu thành công, sẽ thấy thông báo thiết bị đã ghép đôi.
Các lệnh ADB hữu ích
ADB làm được rất nhiều việc, trong hầu hết trường hợp hữu ích cho cả người dùng phổ thông và developer. Danh sách lệnh bạn có thể thấy hữu ích (dấu ngoặc đơn trong lệnh chỉ để minh họa):
- adb devices: Hiển thị thiết bị hỗ trợ ADB đang kết nối với máy tính.
- adb reboot: Khởi động lại điện thoại.
- adb install "đường_dẫn_apk": Cài ứng dụng.
- adb pull "remote local": Sao chép file và thư mục con từ thiết bị. Thay local/remote bằng đường dẫn đến file/thư mục đích trên máy (local) và thiết bị (remote).
- adb push "local remote": Sao chép file và thư mục con đến thiết bị.
- adb kill-server: Kết thúc tiến trình adb server và khởi động lại.
- adb fastboot: Kích hoạt chế độ fastboot.
- adb help: Hiển thị tài liệu trợ giúp lệnh ADB.
- adb uninstall "tên_gói": Gỡ cài đặt ứng dụng.
Liệt kê tất cả gói Android:
adb shell pm list packages
In danh sách gói. Gõ "-d" chỉ hiện gói bị vô hiệu, "-e" chỉ hiện gói kích hoạt, "-s" chỉ hiện gói hệ thống.
Gỡ ứng dụng cài sẵn không mong muốn:
adb shell pm uninstall -k --user 0 <tên_gói>
Với lệnh này, bạn gỡ ứng dụng cài sẵn không cần root. Tên gói là tên file .apk. Có thể dùng app miễn phí App Inspector tìm tên gói.
Liệt kê thành phần ứng dụng:
Thành phần ứng dụng bao gồm activities, services, v.v. Với lệnh này, bạn có thể khởi chạy activity ẩn hoặc gửi broadcast với dữ liệu cụ thể.
adb shell dumpsys package <tên_gói>
Xem danh sách activities dưới Activity Resolver Table và Service Resolver Table cho services.
Thử các ứng dụng ADB để kích hoạt tính năng mạnh mẽ
Àn nhìn quy trình thiết lập có vẻ phức tạp – nhưng thực tế không khó. Bạn chỉ cần làm theo thứ tự các bước và ghi lại lỗi (nếu có). Vì giờ bạn đã biết lệnh ADB, hãy thử các app này và cấu hình ADB để kiểm soát Android tốt hơn.