Adb 介紹
Adb 是 Android Debug Bridge 的簡稱,是 Android 的命令行調(diào)試工具,可以完成多種功能,如跟蹤系統(tǒng)日志、上傳下載文件、安裝應(yīng)用等。
準(zhǔn)備工作
使用 adb時(shí),你需要:
ROC-RK3399-PC用Type-C數(shù)據(jù)線連接設(shè)備和主機(jī)。
在跑 Android 的開發(fā)板上,選擇 Settings -> USB,然后勾選 Connect to PC 選項(xiàng)。(注意:industry版本 不需要做此操作)。
基于你的系統(tǒng)安裝 adb 驅(qū)動(dòng)和命令。
注意:ROC-RK3399-PC供電和調(diào)試接口都是Type-C0接口。通過接電腦usb供電時(shí),由于電流過小,開發(fā)板無法帶起部分外設(shè)導(dǎo)致啟動(dòng)異常,所以調(diào)試前最好先斷開所有外設(shè)。
Adb 在 Windows 下的安裝
安裝驅(qū)動(dòng)。
下載 adb.zip,然后解壓到 C:\adb。
打開 cmd 窗口然后運(yùn)行:
C:\adb\adb shell
若成功就會(huì)進(jìn)入 adb shell 。
Adb 在 Ubuntu 下的安裝
安裝 adb 工具:
sudo apt-get install android-tools-adb
添加設(shè)備 ID:
mkdir -p ~/.android vi ~/.android/adb_usb.ini # add the following line: 0x2207
為非 root 用戶添加 udev 規(guī)則:
sudo vi /etc/udev/rules.d/51-android.rules # add the following line: SUBSYSTEM=="usb", ATTR{idVendor}=="2207", MODE="0666"
重載 udev 規(guī)則:
sudo udevadm control --reload-rules sudo udevadm trigger
普通用戶下重啟 adb:
sudo adb kill-server adb start-server
然后就可以直接使用 adb 了, 如:
adb shell
常用 Adb 命令
連接管理
列出所有連接設(shè)備以及它們的序列號(hào):
adb devices
若沒有多連接設(shè)備,就必須用序列號(hào)來區(qū)分:
export ANDROID_SERIAL= adb shell ls
也可以用 TCP/IP 網(wǎng)絡(luò)連接 Adb :
adb tcpip 5555
Adb 會(huì)在設(shè)備上重啟并監(jiān)聽 5555 TCP 端口, 這個(gè)時(shí)候就可以拔出 USB 線了。
如果設(shè)備的 IP 地址為 192.168.1.100,執(zhí)行以下命令連接:
adb connect 192.168.1.100:5555
一旦連接,就可以執(zhí)行 adb 命令了:
adb shell ps adb logcat
直到斷開 adb 連接:
adb disconnect 192.168.1.100:5555
調(diào)試
查詢系統(tǒng)日志
用法:
adb logcat [option] [Application label]
示例:
# 查看所有日志 adb logcat # 僅查看部分日志 adb logcat -s WifiStateMachine StateMachine
收集 Bug 報(bào)告
adb bugreport 用來收集錯(cuò)誤報(bào)告和一些系統(tǒng)信息。
adb bugreport # 保存到本地,易于編輯和查看 adb bugreport >bugreport.txt
運(yùn)行 shell
打開一個(gè)交互的 shell:
adb shell
執(zhí)行 shell 命令:
adb shell ps
Apk 管理
安裝 Apk
adb install [option] example.apk 選項(xiàng): -l 轉(zhuǎn)發(fā)鎖定 -r 重新安裝應(yīng)用程序以保留原始數(shù)據(jù) -s 安裝到SD卡而不是內(nèi)部存儲(chǔ)
示例:
# 安裝 facebook.apk adb install facebook.apk # 升級(jí) twitter.apk adb install -r twitter.apk
若安裝失敗,檢查下常見原因:
INSTALL_FAILED_ALREADY_EXISTS: 嘗試添加 -r 參數(shù)再次安裝。
INSTALL_FAILED_SIGNATURE_ERROR: APK 簽名不一致,這可能是由于簽名和調(diào)試版本的不同導(dǎo)致的。如果確認(rèn)APK文件簽名是正常的,可以使用 adb uninstall 命令卸載舊的應(yīng)用程序,然后重新安裝。
INSTALL_FAILED_INSUFFICIENT_STORAGE: 存儲(chǔ)空間不夠。
卸載 Apk
adb uninstall apk_name
示例:
adb uninstall com.android.chrome
apk 包的名稱可以用下面的命令列出:
adb shell pm list packages -f ... package:/system/app/Bluetooth.apk=com.android.bluetooth ...
Apk文件路徑和軟件包名稱用 = 分隔。
-
嵌入式主板
+關(guān)注
關(guān)注
7文章
6084瀏覽量
35164 -
安卓
+關(guān)注
關(guān)注
5文章
2118瀏覽量
56966 -
Firefly
+關(guān)注
關(guān)注
2文章
538瀏覽量
6966
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論