adb 常用命令

常用命令

1、查看adb版本

adb version

2、查詢pc鏈接的所有android 設(shè)備

adb devices

3、裝包

如果在電腦D盤下面有個a.apk文件,只需要一行命令就安裝到手機(jī)上:

adb install d:/a.apk

如果已經(jīng)安裝了這個程序,可以通過以下命令覆蓋安裝:adb install -r d:/a.apk

保留數(shù)據(jù)和緩存文件,重新安裝 apk adb install -r a.apk

安裝包在android設(shè)備中

adb shell pm install apk在移動端的路徑

4、卸載包

adb uninstall 包名

卸載軟件但是保留配置和緩存文件:

adb uninstall -k 包名

如果機(jī)器上有多個模擬器或真機(jī),需要使用-s命令行參數(shù)指定具體的模擬器或真機(jī)。例如,下面的命令分別在模擬器和真機(jī)上安裝、重新安裝和卸載應(yīng)用程序。

在emulator-5554模擬器上安裝ebook.apk

adb -s emulator-5554 install ebook.apk

在真機(jī)上安裝ebook.apk

adb -s HT9BYL904399 install ebook.apk

在emulator-5554模擬器上重新安裝ebook.apk

adb -s emulator-5554 install -r ebook.apk

在真機(jī)上重新安裝ebook.apk

adb -s HT9BYL904399 install -r ebook.apk

在emulator-5554模擬器上卸載ebook.apk(不保留數(shù)據(jù)和緩沖目錄)

adb -s emulator-5554 uninstall ebook包名

在真機(jī)上卸載ebook.apk(保留數(shù)據(jù)和緩沖目錄)

adb -s HT9BYL904399 uninstall -k ebook包名

5、包管理,如何知道一個app包名呢

包名(Package name)在Android系統(tǒng)中是判斷一個App的唯一標(biāo)識,不同的App可以有同樣的名字,但是它的包名不可以相同。

例如我們可以自己編譯生成一個App也叫“微信”,但是我們的App的包名不能為com.tencent.mm

(微信的包名為這個),如果指定的包名和微信一致,那么手機(jī)上只允許安裝這兩個App中的其中一個。說到這很多人就會有疑問,如果有人惡意做了一個和微信內(nèi)容一模一樣的App,名字和包名都和微信一樣,那怎么分辨呢?Android中為了防止這樣的情況,還做了一個叫簽名的東西,微信的簽名一般我們是沒有的,所以就可以通過簽名來標(biāo)識出這款A(yù)pp到底是誰的了。

1、看源代碼。當(dāng)有源代碼的時候,可以到工程目錄下的 “AndroidManifest.xml”文件下查看package這一項。

2、adb命令查看列出手機(jī)裝的所有 app 的包名:

adb shell pm list packages

3.列出系統(tǒng)應(yīng)用的所有包名:

adb shell pm list packages -s

4.列出除了系統(tǒng)應(yīng)用的第三方應(yīng)用包名:

adb shell pm list packages -3

5.推測一個包中可能帶有的關(guān)鍵字:

adb shell dumpsys activity | findstr mFocusedActivity

6.清除應(yīng)用數(shù)據(jù)與緩存

adb shell pm clear 應(yīng)用包名

6、文件相關(guān)

1、接收電腦文件

語法:adb push local remote

案例:adb push d:/a.txt /sdcard/

把電腦 D 盤下的 a.txt 文件推送到手機(jī) sdcard 目錄下

2、上傳文件到電腦

語法:adb pull remote local

案例:adb pull /sdcard/a.txt d:/ 上傳位于/sdcard/目錄下的 a.txt 文件到電腦的 D 盤根目錄下

7、截屏、錄屏

1.截屏

adb shell screencap /sdcard/a.png

adb shell /system/bin/screencap -p /sdcard/a.png

2.使用adb進(jìn)行屏幕錄像

adb shell screenrecord /sdcard/a.mp4

通過ctrl+c停止錄制,你可以在sdcard目錄下查看。媽媽再也不擔(dān)心我到處找錄制視頻的軟件了。

8、shell

進(jìn)入shell adb shell

退出shell

exit

9、手機(jī)信息收集

獲取序列號

adb get-serialno

獲取 MAC 地址

adb shell cat /sys/class/net/wlan0/address

查看設(shè)備型號

adb shell getprop ro.product.model

查看 Android 系統(tǒng)版本

adb shell getprop ro.build.version.release

查看屏幕分辨率

adb shell wm size

查看屏幕密度

adb shell wm density

查看permissions adb shell pm list permissions

查看系統(tǒng)的危險權(quán)限dangerous permissions adb shell pm list permissions -d -g

10、adb服務(wù)器殺死和啟動

adb kill-server

adb start-server

場景:比如希望移動adb文件夾,或者adb命令得不到想要的內(nèi)容時

11、與進(jìn)程相關(guān):

列出當(dāng)前進(jìn)程

adb shell ps | findstr 包名

殺死某個包的進(jìn)程

adb shell am force-stop 包名

12、與性能相關(guān)的一些內(nèi)容

獲取內(nèi)存:

adb shell dumpsys meminfo 包名

獲取cpu:

adb shell dumpsys cpuinfo | findstr 包名

adb shell top -n 1 | findstr 包名

獲取流暢度相關(guān):

adb shell dumpsys gfxinfo 包名

13、app的啟動停止

如果想在模擬器或真機(jī)上運(yùn)行已安裝的應(yīng)用程序,除了直接在模擬器或真機(jī)上操作外,還可以使用如下的命令直接運(yùn)行程序。

activity的獲取方式見14條。

在emulator-5554模擬器上運(yùn)行ebook.apk

adb -s emulator-5554 shell am start -n net.blogjava.mobile.ebook/net.blogjava.mobile.ebook.Main

在真機(jī)上運(yùn)行ebook.apk

adb -s HT9BYL904399 shell am start -n net.blogjava.mobile.ebook/net.blogjava.mobile.ebook.Main

其中Main是ebook.apk的主Activity。相當(dāng)于Windows應(yīng)用程序的主窗體或Web應(yīng)用程序的主頁面。am是shell命令。

14、與Activity操作等相關(guān)

1.查看當(dāng)前顯示的activity adb shell dumpsys activity | findstr "mFocusedActivity"

結(jié)果: mFocusedActivity: ActivityRecord{93a4f9 u0 com.youdao.note/.activity2.MainActivity t36}

注意:我們只需要這一部分:com.youdao.note/.activity2.MainActivity即包名+activity

2.找到當(dāng)前手機(jī)內(nèi)的top Activity:

adb shell dumpsys activity top | findstr ACTIVITY

3.啟動某一個Activity: adb shell am start activity路徑

adb shell am start com.youdao.note/.activity2.MainActivity

15、查看8080端口是哪個應(yīng)用占用

netstat -ano|findstr "8080"

adb shell top -n 1 | findstr?vchat.faceme

16、工作中使用

adb logcat -v time >log.log

adb logcat -b main -v time>app.log

adb shell logcat -v threadtime>111.log

安裝軟件

adb install +路徑

顯示ADB命令版本號

adb version

關(guān)閉計算機(jī)adb 服務(wù)進(jìn)程

adb kill-server

adb重啟手機(jī)命令

adb reboot

如果一臺電腦連接多臺手機(jī),具體指定哪臺手機(jī)重啟需要指定設(shè)備號

adb -s device1 reboot

下面是關(guān)機(jī)命令

adb shell reboot -p

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • > 本文節(jié)選自霍格沃茲測試學(xué)院內(nèi)部教材 為了讓大家更好的學(xué)習(xí)Adb常用命令,我們先從安裝Android環(huán)境搭建開始...
    霍格沃茲閱讀 208評論 0 0
  • 對于Android開發(fā)來說 ,我感覺ADB即熟悉又陌生。熟悉是因為經(jīng)常聽說過,并且時不時會用到一兩條簡單的命令;陌...
    graychen閱讀 1,953評論 0 0
  • adb logcat 命令格式 : adb logcat [選項] [過濾項], 其中 選項 和 過濾項 在 中括...
    skyyhu閱讀 687評論 0 1
  • 1. adb devices 主要作用:查看當(dāng)前已連接的設(shè)備,連接到計算機(jī)的Android設(shè)備或者模擬器將...
    C1R2閱讀 1,562評論 0 1
  • 大神博客:https://mp.weixin.qq.com/s/fWaa1rutwfoIIrje8RfWBw ad...
    Singal11閱讀 2,306評論 2 5