1、adb簡介linux
2、adb環境搭建android
3、adb鏈接Android設備步驟shell
一、USB數據線鏈接緩存
二、WIFI遠程鏈接服務器
4、adb shell命令網絡
一、簡介app
二、經常使用adb shell命令tcp
Android 調試橋 (ADB,Android Debug Bridge) 是Android SDK裏的一個工具。可當作一個客戶端-服務器程序,其中客戶端是用來操做的電腦,服務器端是android設備。工具
使用ADB能夠直接操做管理android模擬器或者真實的android設備,說白了ADB就是安卓的debug工具。開發工具
ADB的主要功能有:
ADB的組成主要有三部分:
adb調試橋是Android SDK裏的一個工具,Android SDK是安卓系統軟件的開發工具包。做爲新手推薦使用安卓開發新手集成包:adt-bundle (谷歌給安卓開發打包的一個環境)。adt-bundle環境搭建相對於簡單,並且app自動化測試的環境也可用。
具體的環境搭建步驟可參考另一篇說明《adt-bundle環境搭建》。
Android手機經過adb與PC端鏈接時,有幾個前提條件:
1.一、手機驅動
Android手機經過USB數據線鏈接PC端後,須要安裝驅動。通常會自動安裝,開啓開發者選項和USB調試後「個人電腦」裏面可以顯示鏈接的手機,並可查看其目錄就沒問題。
當PC端提示驅動安裝失敗時,須要在PC端安裝360手機助手等鏈接應用,經過鏈接應用安裝好手機驅動環境後,要將360手機助手等應用卸載,由於這些應用與adb會用同一端口。
1.二、手機設置
◆手機須要開啓開發者選項和USB調試。
開啓開發者選項的過程以下,設置—>關於手機—>連續點擊7次「版本號」,而後在設置—>系統中出現開發者選項,開啓便可。
在開發者選項頁面,同時開啓「USB調試」。
有的Android系統版本手機在開啓USB調試時,有彈窗提示是否容許USB調試,必定要選擇「肯定」。還有的Android系統版本手機在開啓USB調試時,詢問您是否接受容許經過此計算機進行調試的 RSA 密鑰,也須要選擇贊成。
◆最後一步,在開發者選項頁面,點擊「選擇USB配置」而後選擇「MTP(多媒體傳輸)」。
1.三、驗證鏈接
PC端經過cmd命令提示符頁面,輸入adb devices而後回車,看到以下圖結果,表示adb鏈接Android設備成功。
Android手機經過wifi鏈接電腦運行adb,可實現遠程調試。具體步驟以下:
1.一、鏈接準備
按照上面介紹的Android手機經過USB數據線鏈接的步驟完成配置,並鏈接成功。
1.二、經過IP鏈接設備
◆將Android手機鏈接的WIFI,與運行adb的PC端鏈接的網絡處於同一局域網。
◆Android手機經過USB數據線鏈接成功後,在cmd命令提示符頁面輸入:adb tcpip 5555 讓設備在5555端口監聽TCP/IP鏈接。
◆查找手機的IP地址,在設置—>WLAN—>點擊所鏈接的WiFi,能夠找到設備的IP,以下圖:
◆拔掉USB數據線。
###注意,拔掉USB數據線後要確保開發者選項和USB調試是開啓狀態;且「選擇USB配置」是勾選「MTP(多媒體傳輸)」狀態。
◆PC端在cmd命令提示符頁面輸入:adb connect <手機IP> 出現下圖所示結果,即表示鏈接成功。
1.三、驗證鏈接
PC端經過cmd命令提示符頁面,輸入:adb devices而後回車,看到以下圖結果,表示adb鏈接Android設備成功。
1.四、斷開鏈接
Wifi遠程鏈接成功後,想要關閉鏈接,PC端經過cmd命令提示符頁面,輸入:adb disconnect <手機IP> 便可關閉adb鏈接。
安卓系統是基於Linux系統開發,也就支持常見的Linux的命令,這些命令都保存在手機 「/system/bin」 的目錄下,咱們鏈接手機就可使用命令 adb shell 來執行這些命令。
使用adb shell命令的前提是,Android設備已經經過adb與PC端創建鏈接。
1.一、進入adb shell命令窗口
◆在PC端經過cmd命令提示符頁面,輸入:adb shell 進入shell命令窗口。
◆可使用cd命令進行目錄切換。
輸入cd sdcard可進入手機內部存儲空間,再輸入ls可獲取當前的全部目錄內容。
◆經過adb shell 進入的shell命令窗口,常使用的Linux命令還有:
◆要退出shell操做,須要輸入exit。以下圖:
1.二、從Android設備提取文件至PC端
◆使用adb pull能夠將手機中的文件拉取到PC端,命令格式以下:
adb pull <文件路徑> <本機路徑> 注意,路徑之間的空格
實際操做中通常在adb shell 進入的shell命令窗口中找到須要拉取的文件和路徑,而後exit退出shell命令窗口,執行adb pull命令。
例:adb pull /sdcard/server.log F:\test
1.三、將PC端的文件推送至Android設備
使用adb push 能夠將PC端的文件推送至Android手機,命令格式以下:
adb push <文件路徑> <手機路徑> 注意,路徑之間的空格
例:adb push F:\test\server.log /sdcard/
推送成功後,經過cd切入sdcard目錄,而後輸入ls可查看server.log文件
1.四、查詢App包名
在Android設備中打開某個App,而後在cmd命令提示符頁面輸入以下命令,便可查詢到包名:
1.4.一、Android 8.0系統如下用:
adb shell dumpsys activity | find "mFocusedActivity"
1.4.二、Android 8.0系統以上用:
adb shell dumpsys activity | find "mResumedActivity"
包名是應用軟件在Android系統中的一種標記。
在出現的查詢結果中,u0與/中間的一串是該應用的包名,以下圖:
1.五、將PC端的.apk包安裝至Android設備
adb install xxx.apk 將PC端存放的.apk裝入Android設備。
adb install -s xxx.apk 將PC端存放的.apk裝入Android設備的sdcard中。
注意:xxx.apk是該文件PC端所在的絕對路徑,在PC端拖動xxx.apk至cmd窗口,便可自動填充絕對路徑。
命令輸入正確後,回車即安裝,提示:success表示安裝成功。
1.六、經過adb刪除Android設備的App
adb uninstall <應用包名> 該命令在PC端經過adb刪除Android設備的App。
輸入命令後回車,提示:success表示應用刪除成功。
1.七、定位到crash(崩潰)異常信息
App在運行時偶遇崩潰,可使用命令adb logcat從Android設備緩存區拉取日誌,篩選出的日誌有助於定位Bug。
要使用這個命令,必須有超級管理員權限,或者手機已經root。
命令格式:
adb logcat –v > d:\test\ 將日誌保存至d:\test\
adb logcat –v time > d:\test\ 拉取的日誌自帶時間
日誌導出後,經過App的包名篩選出有用的日誌。而後在導出的日誌中搜索‘Force finishing’關鍵字就能夠定位到關鍵日誌信息。須要提交的日誌:FATAL EXCEPTION 到 Force finishing。