Android Debug Bridge

-->
| ver layout =
| discontinued =
| latest release version = 34.0.1 (March 2023)
| latest release date =
| latest preview version =
| latest preview date =
| repo = android.googlesource.com
| programming language = C++
| engine =
| operating system = Windows, Linux, macOS
| platform =
| included with = Android SDK
| replaces =
| replaced_by =
| service_name =
| size =
| standard =
| language =
| language count =
| language footnote =
| genre = Software development tool
| license = Apache License 2.0
| website =
| AsOf =
}}

Android Debug Bridge (tạm dịch: Cầu gỡ lỗi Android) (thường được viết tắt là adb) là một công cụ lập trình sử dụng cho việc gỡ lỗi các thiết bị dựa trên nền tảng Android. Phương thức trình nền (Daemon) trên thiết bị Android kết nối với máy chủ trên PC chủ qua USB hoặc TCP kết nối với máy khách được người dùng cuối sử dụng qua TCP. Được cung cấp dưới dạng Phần mềm nguồn mở theo Giấy phép Apache của Google từ năm 2007, các tính năng bao gồm shell và khả năng tạo bản sao lưu.. Phần mềm adb tương thích với Windows, Linux và macOS. Nó đã bị lạm dụng bởi botnets và các Phần mềm độc hại, trong đó các biện pháp giảm thiểu đã được phát triển như xác thực RSA và danh sách trắng.

Tính năng nổi bật

Các tính năng của adb bao gồm sao chép tệp từ máy tính chủ, cài đặt ứng dụng, xem đầu ra logcat, tải Unix shell, và khởi động lại để vào chế độ Qualcomm EDL mode. Lấy ví dụ, gói ứng dụng Android có thể được lưu bằng lệnh backup để tạo thành một tệp. ADB cũng hỗ trợ bao gồm Java Debug Wire Protocol.

Một số giao diện đồ họa cũng được cung cấp. Giao diện từ phần mền Android Device Monitor trong Android Studio có thể được sử dụng để truy xuất thông tin từ thiết bị Android.

Lịch sử phát triển
Bộ công cụ phát triển phần mềm Android (SDK) được phát hành lần đầu tiên vào năm 2007. Kể từ năm 2017, Google đã cho phép tải xuống adb một cách riêng biệt từ SDK Android.

Vào năm 2015, Microsoft đã phát hành trình giả lập Android có thể kết nối với ứng dụng khách adb (adb client). Vào năm 2016 Android Studio 2.0 đã cải thiện hiệu suất gấp 5 lần để cài đặt ứng dụng và đẩy tệp qua adb. Để sử dụng Android Things dễ dàng hơn, , một trình bao bọc (wrapper) đã được tạo vào năm 2017 xung quanh các lệnh adb thủ công. Đối với Android 11 vào năm 2020, Google đã thêm adb incremental installations. Cũng vào năm 2020, Wi-Fi adb đã được tích hợp vào Android Studio dành cho macOS. Vào năm 2021, đối với Android 12, Lệnh adb backup đã bị giới hạn để việc sao lưu dữ liệu người dùng từ các ứng dụng được chọn tham gia bằng cách sử dụng cấu hình bản kê khai cho mỗi ứng dụng. Fuchsia sẽ tương thích ngược với adb. nó sẽ thay thế bằng fx và ffx.

Thiết lập

Máy tính chủ
Đối với Windows, SDK Android chứa tệp nhị phân adb.exe có thể được giải nén và cài đặt. How-To Geek khuyên bạn nên thêm thư mục chứa các tệp nhị phân vào biến môi trường PATH

Trên Ubuntu, adb có thể được cài đặt cùng với android-tools-adb package. Đối với Debian, khuyến khích bạn cài gói android-sdk-platform-tools-common bên cạnh gói adb, cài đặt các quy tắc udev giúp bạn có thể chạy công cụ mà không cần quyền root. Với macOS và các họ hệ điều hành Linux, bạn có thể tải xuống các công cụ nền tảng và biến PATH có thể được sửa đổi trong bashrc.

Thiết bị Android
Từ hệ điều hành Android 4.2.2 trở đi (API level 17), một hộp thoại được hiển thị với dấu vân tay RSA mà người dùng cần phải chấp nhận. các máy tính khai thác cơ chế gỡ lỗi mà không có sự đồng ý của người dùng thiết bị. Bắt đầu từ Android 4.2, cài đặt dành cho nhà phát triển được ẩn theo mặc định. Nhấn bảy lần vào số bản dựng trong menu giới thiệu về điện thoại sẽ khiến tùy chọn nhà phát triển hiển thị ra cho người dùng.Sau đó bạn có thể bật gỡ lỗi adb trong cài đặt cho nhà phát triển. Một số nhà cung cấp Android có các quy trình khác nhau để kích hoạt nó. Ví dụ: Huawei yêu cầu nhập mã pin trước khi có thể bật adb.

Nếu Màn hình cảm ứng của thiết bị Android bị hỏng, bạn có thể kết nối chuột với thiết bị bằng USB On-The-Go và bật gỡ lỗi USB.

Kiến trúc
Giao thức adb có thể được truyền qua USB hoặc qua Wi-Fi thông qua TCP. It uses a kiến trúc máy khách-máy chủ. Có hai giao thức khác nhau được sử dụng. Đầu tiên là giữa máy khách và máy chủ và thứ hai là giữa máy chủ và daemon. Adb daemon được triển khai trong C à nằm trong không gian người dùng Android. Daemon được hỗ trợ bởi Android USB framework, UsbDeviceManager và UsbDebuggingManager. Sau đó, adb đã cung cấp trình bao gốc. [25] Vào năm 2017, một lỗ hổng bảo mật đã được tiết lộ đã khai thác ADB để chiếm lấy modem tích hợp. Cuộc tấn công yêu cầu adb phải được kích hoạt và cấp quyền, mặc dù đã có sẵn một số cách giải quyết.

Nhiều dòng phần mềm độc hại khác nhau như ADB.Miner, Ares, IPStorm, Fbot and Trinity đã quét internet để tìm tính khả dụng công khai của giao diện adb và cài đặt phần mềm độc hại trên các thiết bị đó. adb cũng có thể dùng để gỡ Phần mềm độc hại, bằng cách khởi động vào chế độ safe mode và chạy dòng lệnh adb uninstall.

Xem thêm

Android recovery mode
Fastboot

Tài liệu tham khảo

Liên kết ngoài