Android開發工具adb的使用


Android開發中,常用的adb命令

注意:將你的手機數據線插上電腦。手機的開發者選項中,設置爲允許usb調試,才能使用adb命令的。

1、查看手機是否連接電腦,以及連接了幾臺手機

adb devices

示例:

當然,你也可以在AndroidStudio上的terminal端中操作,例如:

接下來的指令介紹將不再插圖,有興趣的可以自己去嘗試。

2、安裝第三方應用

adb install xxx.apk

3、 重新安裝軟件

adb install -r xxx.apk

1、無論是Linux系統,還是Windows系統,用adb命令安裝第三方應用之前,都必須先進入到apk所在的目錄,再執行adb安裝命令。否則會提示文件不存在。

2、在win7系統中,如果是進入同一個盤符下的目錄,直接cd dir就可以了;如果要切換盤符,如:從C盤到D盤,直接輸入 D: 回車即可。

注意: adb install xxx.apk 和adb install -r xxx.apk 兩個命令,都是將APP安裝到/data/目錄下。因爲裝的是第三方應用。

3、第三方應用的卸載

adb uninstall xxx.apk

該方法只適用於第三方應用,不適用系統應用,因爲系統應用不可以手動卸載。

4、系統應用安裝

adb root  
adb remount  
adb push xxx.apk /system/app  
adb reboot

指令解析:
adb root   //是讓adb獲取root身份,即adb獲得設備的超級管理員身份。
adb remount //重新掛載設備分區,爲可讀寫。

注意:在執行adb push 之前,一樣需要先進到apk,所在目錄的。

adb push xxx.apk /system/app  //把apk推送到system/app 目錄下,不再需要執行安裝命令。因爲這是屬於開機會自動安裝。

adb reboot  //重啓手機,即可看到應用了。

注意: 系統應用使用的是系統簽名,如果不是系統的簽名或者是簽名不對,都不能成功推送到 system/app目錄的。會校驗失敗。

一般情況下Android很多分區,都是隻允許讀數據,不可以寫數據。adb remount是重新mount(掛載)分區的命令,讓system分區從只讀變成可讀可寫。而想要remount分區,必須先擁有root權限纔可以,所以執行adb root,是讓我們的adb獲取root身份,成爲超級管理員。

5、刪除系統應用

adb root   
adb remount   
adb shell  
cd  system/app  
ls  
rm xxx.apk
reboot  

指令解析:
adb shell   //登錄設備的超級終端,詳細請看:指令9
cd system/app //進入 system/app目錄
ls       //列出當前目錄下所有的文件和下一級目錄
rm xxx.apk   //刪除apk

注意:ls指令是英文L的小寫,不是數字1。ls 指令用處很大,特別是在Linux系統中,經常使用指令操作,如果我們不清楚有哪些文件,馬上 ls 命令來看看。
補充:
cd system/sd/data //進入系統內指定文件夾
ls //列表顯示當前文件夾內容
rm -r xxx //刪除名字爲xxx的文件夾及其裏面的所有文件
rm xxx //刪除文件xxx
rmdir xxx //刪除xxx的文件夾

6、推送文件到Android設備system/app目錄

adb root  
adb remount  
adb push d:\123.txt /system/app  
adb reboot

1、上面的命令是在Windows的cmd命令中,通過adb,向手機推送了一個txt文本。

2、如果我們要推送一個文件夾,把它改成文件夾的名字即可,例如,我有一個newProject命名的文件夾,用下面的命令替換即可:
adb push d:\newProject /system/app

3、如果我們要推送一個zip包,用下面的命令替換即可:
adb push d:\xxx.zip /system/app

如果要推送別的格式的文件,大家可以自己去嘗試。反正模式都差不多。

總的來說,相對於推送apk到system/app目錄來說,推送一個文件或者文件夾,需要指明文件路徑。

從Android設備導出文件到本地電腦:

adb pull <遠程路徑> <本地路徑>
例如:
adb pull /data/data c:\Users\admin\desktop\
能夠把文件或文件夾導出來

7、刪除Android設備某個目錄。

adb root  
adb remount   
adb shell   
cd system/sd/data   //進入系統內指定文件夾   
ls            //顯示當前目錄內容   
rm -r xxx        //刪除名字爲xxx的文件夾及其裏面的所有文件   

還可以使用以下兩個指令:

rm xxx  //刪除文件xxx,注意是文件,不是目錄。
rmdir xxx //刪除xxx的文件夾

8、 登錄設備終端

adb shell

adb shell 是登錄設備的超級終端Terminal。接下來輸入的命令都是:直接運行設備命令, 相當於執行遠程命令。而且接下來的命令都會是#號來開頭,不再是$符號了。

登錄shell命令後,相當於,你在Ubuntu電腦中使用Terminal終端一樣了。也就是你在設備的終端直接操作Android設備了。想輸什麼命令就輸什麼命令。就跟你操作Ubuntu電腦一樣。

8、退出設備的shell
輸入exit(回車即可)

9、設備進入recovery模式

adb reboot recovery

執行該命令後,手機會進入recovery刷機界面

注意:前提是手機是好的,如果你使用的是第三方公司的開發板,那就不一定能進到該界面了。購買開發板的話,一定要先問清楚,能不能進recovery刷機界面。否則你在研究recovery服務的時候,就沒有人指導的人了。小編就被坑過。

10、設備進入bootloader模式

adb reboot bootloader

11、查看手機上的運行日誌,此項可以用來查錯

adb logcat

1.1 什麼是adb工具?

adb全稱Android Debug Bridge,是android sdk裏的一個工具。adb是一個標準的CS結構的工具。

如果你的電腦安裝了AndroidStudio,你可以在AndroidStudio安裝路徑的 sdk\platform-tools 找到adb工具。
AndroidStudio 的簡稱是:AS 。如無特殊說明,均用AS代替。


1.2 adb能用來做什麼?

使用adb工具可以直接操作和管理android模擬器或者真實的andriod設備(如你的Android手機)。

是不是很艹蛋的概念,so,我們不要糾結這種概念性的問題,不要在意細節。我們要保持一個目的,它能做什麼,怎麼操作?反正小編不知道它說的啥,小編只想知道這玩意怎麼去操作。

普通手機用戶是用不到adb工具的,只有Android設備開發者**或者**app開發者纔會需要使用adb工具。

adb是一個通訊程序,也可以說是一個調試工具。

既然我們已經知道:adb是一個通訊程序。那麼,通訊程序都會有自己的協議。也就是說,你電腦上既然有了adb程序,手機上也得有個接頭的人吧,不然你電腦adb發來的東西,鬼知道你發的是啥! 所以,我們Android手機裏面肯定也有adb程序的。當電腦通過adb程序發送指令的時候,我們的Android設備就會接收到adb指令了。

關於adb安裝方法,大家可以去找下度娘,這裏就不做介紹了。

當然,如果你的電腦安裝了AS軟件,那麼你無需另外安裝adb工具了。因爲安裝AS的時候,adb工具會被一起安裝。

1.3 adb安裝完成檢測

⑴如果你的電腦安裝了AS。你可以在AS項目的底部,找到一個Terminal窗口,之後在裏面進行adb命令的輸入。

⑵如果你的電腦是Linux系統,只裝了adb工具,沒裝AS。那麼你可以在 terminal終端,進行adb命令的輸入。

⑶如果你的電腦是Windows系統,只裝了adb工具,沒裝AS。那麼你可以從cmd命令中進入Windows系統的shell界面,在裏面進行adb命令輸入。

Google官方推薦Android源碼編譯的Linux系統是——Ubuntu系統

小編用的是Windows系統,adb安裝完成後,在shell界面輸入:adb version 然後回車。如下圖所示,則表示安裝成功。

adb是一個 客戶端–服務器端 程序,其中客戶端是你用來操作的電腦, 訪問的服務器端就是你的android設備。
Terminal的中文是:終端。如果在Ubuntu的左側啓動器中,找不到Terminal終端,大家可以使用Ctrl+Alt+T 調出。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章