Tiện ích `adb` này tôi tiếp tục nhận được lời khuyên để sử dụng là gì?


10

Trong một loạt các câu hỏi trên trang web này, tôi thấy các câu trả lời yêu cầu chúng tôi thực hiện adb shellhoặc adb logcatv.v.

Bây giờ, tôi không phải là người dùng hoàn toàn không biết gì, vì vậy tôi đã tải xuống và cài đặt Termux và có một dấu nhắc shell khi tôi có thể nhập lệnh, nhưng - adbthứ này đến từ đâu? Tôi có tải xuống dưới dạng một ứng dụng không? Nó dường như không được cài đặt theo mặc định (Trên Redmi 3S, Android 6.0.1).

Ngoài ra, có vẻ như đó là một loại thang máy cho phép. Có phải như thế sukhông? Nếu không, nó khác nhau như thế nào?



@RahulGopi: Vâng, tôi chỉ nghĩ rằng có thể có một câu trả lời ngắn gọn ở đây trên trang web.
einpoklum

5
Đó là công cụ được mô tả trong wiki thẻ adb của chúng tôi , với các tài nguyên được liên kết - đã nói với bạn rằng trước khi tôi đoán :) Hãy nhớ rằng: Nhiều thẻ của chúng tôi có wiki khá tốt :) Cũng xem, ở đây trên trang web của chúng tôi: ADB là gì và tại sao nó được sử dụng cho? Làm cách nào để cài đặt nó trên thiết bị của tôi?
Izzy

Các ADB được sử dụng để kết nối chuột và bàn phím để nhà nước-of-the-art máy tính.

Câu trả lời:


33

Trong khoảng adb

Nói ngắn gọn, adb(Cầu gỡ lỗi Android) là một tiện ích được cài đặt trên máy tính, để cho phép nó có được vỏ trên điện thoại được kết nối qua cáp USB hoặc trên cùng một mạng Wi-Fi.

Trên một số thiết bị chạy Android Lollipop (5.1.1) và có thể là các phiên bản HĐH thấp hơn, có thể lừa một thiết bị kết nối với chính nó, vì adbmáy khách cũng được gói trong điện thoại. Điều này là không thể nữa bởi vì, từ Android Marshmallow (6.0) trở đi, Google đã loại bỏ adbnhị phân khỏi điện thoại để giảm bề mặt tấn công có thể sử dụng.

Tuy nhiên, có thể tự giới thiệu lại adbứng dụng khách trên điện thoại mà không cần phải tự biên dịch nhị phân. Tham khảo wiki thẻ adb để biết thêm thông tin về chủ đề này, cũng như về cài đặt trên máy tính và xử lý sự cố chung.


Lấy nó ở đâu

Cách đây một thời gian, để có được adbvà một tiện ích khác, được gọi fastboot, người ta phải tải xuống SDK Android đầy đủ từ Google, nếu họ muốn có một gói chính thức. Ngày nay, một gói nhỏ, chính thức đã trở nên có sẵn, như XDA nói . Nó bao gồm các tệp nhị phân cho các hệ điều hành phổ biến nhất.


Làm thế nào nó hoạt động

Máy adbkhách, được cài đặt trên máy tính của bạn, tạo kết nối với điện thoại được cắm hoặc có thể phát hiện được, bằng máy chủ nội bộ. Sau đó, người dùng sẽ có thể gửi một loạt các lệnh đến chính điện thoại, sẽ được lắng nghe bởi adbd, một daemon cư trú trên điện thoại.

Khi sử dụng adb, bạn mạo danh người dùng được gọi shell(UID 2000). Người dùng này đặc biệt, ở chỗ họ có thể cấp quyền cho ứng dụng và truy cập nhiều thông tin hơn một người dùng đơn giản. Mặc dù vậy, thực tế này không có nghĩa adblà giống như su, vì điều này cho phép bạn mạo danh bất kỳ người dùng nào.

Thông tin thêm về adbvà hoạt động của nó có thể có được bằng cách xem tài liệu chính thức .


Phát lệnh từ điện thoại

Phần lớn các lệnh có thể được ban hành thông qua adbcó xu hướng là các tiện ích được cài đặt sẵn trong điện thoại.

Để truy cập chúng, bạn cần cài đặt một ứng dụng giả lập thiết bị đầu cuối trên điện thoại của bạn (lưu ý rằng Termux là đặc biệt, trong đó nó chỉ định riêng của nó PATH, do đó bỏ qua các nhị phân hệ thống). Điều này sẽ, ví dụ, cho phép bạn đưa ra các lệnh như logcattrực tiếp trên thiết bị di động của bạn. Tuy nhiên, hãy nhớ bỏ qua adbtiền tố.

Điều đáng nói là, nếu bạn thiếu quyền root, phạm vi lệnh bạn sẽ có thể thực thi và thông tin bạn có thể truy cập sẽ ít hơn đáng kể so với khi sử dụng adb, vì UID gọi chúng sẽ là bản thân ứng dụng và ứng dụng có ít quyền hơn UID 2000.


Làm tốt! Thật không may, tôi không thể upvote hai lần :) // Vâng, wiki của chúng tôi quá thường xuyên là "số lượng không xác định". Không thể có điểm thường xuyên đủ. Nhưng bao gồm một liên kết trong bất kỳ câu trả lời nào được đề cập trong đó sẽ đi xa hơn một chút IMHO :) Trường hợp phù hợp (như ở đây: "để biết thêm chi tiết"), một ý tưởng hay. Hãy tiếp tục với điều đó - Trong khi đó, tôi tiếp tục dọn dẹp bình luận :)
Izzy

@Izzy Điểm tốt. Chúng ta hãy chờ xem liệu spam liên kết có thực sự cần thiết không.
Grimoire

Có upvote của tôi, xin vui lòng.
iBug

@iBug Tôi rất vinh dự.
Grimoire

2

Cầu gỡ lỗi Android (ADB) .

Nó gửi lệnh qua USB hoặc Wifi đến thiết bị Android. Nó thường được cài đặt trên máy tính kết nối với thiết bị. Máy khách ADB cũng có thể được chạy trên chính thiết bị tuy nhiên ý tưởng là gỡ lỗi thiết bị từ xa.

Nó là một phần của Bộ công cụ phát triển phần mềm Android

Sau đó, bạn có thể sử dụng trình quản lý SDK để tải xuống các công cụ nền tảng.

Ngoài ra còn có một liên kết trực tiếp hơn ở đây trong trường hợp bạn chỉ quan tâm đến các công cụ nền tảng

Tài liệu ADB


Đợi đã, nếu nó không được cài đặt trên thiết bị, tại sao mọi người đề nghị tôi sử dụng nó trong vỏ trên thiết bị? ví dụ trong các ví dụ tôi đã đưa ra?
einpoklum

Đó là một điểm hay. Có lẽ chính xác hơn để nói lệnh adb là "máy khách" kết nối với thiết bị Android. Thiết bị Android cũng có thể có ứng dụng khách trên đó vì tại sao không. Nhưng đó là giống như chạy ssh localhost
jdwolf

Thành thật mà nói, tài liệu này giải thích tất cả điều này tốt: developer.android.com/studio/command-line/adb.html
jdwolf
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.