天天看點

Android ADB開發常用指令總結

本文講的是<b>Android ADB開發常用指令總結,</b>如果指定ip 連接配接,一般為 adb conenct 172.18.xxx.xxx ,這樣每次進行連接配接時,發現都有重複的的指令需要敲,程式員就是要減少重複工作,是以現在就将重複的指令省掉。(以下為mac下的配置的方法):

Android ADB開發常用指令總結

建立.alias_bash 檔案

檔案中使用 alias 别名關鍵字重新指令

alias ac="adb connect $1"  

alias ad="adb devices"  

alias ak="adb kill-server"  

alias as="adb start-server" 

修改根目錄下的 .bash_profile , 或者其他以 .bash 的檔案中,将最後加上 source ./.alias_bash 然後重新執行 source ./.bash_profile ,或者直接關掉終端,重新打開一個。

嘗試使用 ac 172.18.**.** ,則可直接連接配接上機器,在輸入 ad 即可看到adb連接配接到的裝置。

上面隻是個例子,可以在檔案 .alias_bash 檔案中添加其他的簡化指令。

adb 多裝置指定連接配接

在使用adb連接配接多個裝置,當想連接配接到某一個裝置的shell時 adb -s 172.18.xx.xx:5555 shell 。

如果是其他指令一樣可以指定裝置執行。例如:

adb -s 172.18.xx.xx:5555 install *.apk 

adb 檔案處理

複制電腦裡的檔案到裝置

指令:

adb push &lt;電腦上的檔案路徑&gt; &lt;裝置裡的目錄&gt; 

例:

adb push ~/sr.mp4 /sdcard/ 

複制裝置裡的檔案到電腦

adb pull &lt;裝置裡的檔案路徑&gt; [電腦上的目錄] 

其中 電腦上的目錄 參數可以省略,預設複制到目前目錄。

adb pull /sdcard/sr.mp4 ~/tmp/ 

adb 安裝解除安裝應用

adb 安裝應用

指令格式:

adb install [-lrtsdg] 

參數:

adb install 後面可以跟一些可選參數來控制安裝 APK 的行為,可用參數及含義如下:

Android ADB開發常用指令總結

運作指令後如果見到類似如下輸出(狀态為 Success)代表安裝成功:

[100%] /data/local/tmp/1.apk  

pkg: /data/local/tmp/1.apk  

Success 

adb 解除安裝應用

adb uninstall [-k] 

表示應用的包名,-k參數可選,表示解除安裝應用但保留資料和緩存目錄。

指令示例:

adb uninstall com.aaron.test 

adb 啟動應用

啟動activity

adb shell am start [options] 

例如:

adb shell am start -n com.aaron.test/.LauncherActivity 

如果想要對啟動的Intent添加參數可以按照key-value形式添加。

adb shell am start -n org.mazhuang.boottimemeasure/.MainActivity --es "url" "wxtlife.com" 

啟動servies

adb shell am startservice [options] 

adb shell am startservice -n com.aaron.test/.MusicService 

表示調起音樂服務Service。

發送廣播

adb shell am broadcast [options] 

可以向所有元件廣播,也可以隻向指定元件廣播。

例如,向所有元件廣播 BOOT_COMPLETED:

adb shell am broadcast -a android.intent.action.BOOT_COMPLETED 

向指定的接收器發送廣播,例子:

adb shell am broadcast -a com.aaron.action.SHOW_TIME -n com.aaron.test/.PlaySerices 

如果帶參數的廣播則在後面加上參數的key, value 。 例如:

adb shell am broadcast -a com.aaron.action.SHOW_TIME -es "url" "wxtlife.com" 

adb 殺程序

adb shell am force-stop 

adb shell am force-stop com.aaron.test 

adb 清除應用緩存等

adb shell pm clear 

表示應用名包,這條指令的效果相當于在設定裡的應用資訊界面點選了「清除緩存」和「清除資料」。

adb shell pm clear com.aaron.test 

adb 模拟事件

指令:

adb shell input keyevent 

例子:

adb shell input keyevent 26 //模拟電源鍵 

adb 檢視日志

[adb] logcat [] ... [] ... 

adb logcat *:W 

Android 的日志分為如下幾個優先級(priority):

V —— Verbose(最低,輸出得最多)

D —— Debug

I —— Info

W —— Warning

E —— Error

F —— Fatal

S —— Silent(最高,啥也不輸出)

過濾指定TAG

adb logcat -s 

其他常用指令

檢視應用清單資訊

檢視應用清單的基本指令格式是

adb shell pm list packages [-f] [-d] [-e] [-s] [-3] [-i] [-u] [--user USER_ID] [FILTER] 

即在 adb shell pm list packages 的基礎上可以加一些參數進行過濾檢視不同的清單,支援的過濾參數如下:

Android ADB開發常用指令總結

第三方應用

pm list packages -s 

包名包含某字元串的應用

adb shell pm list packages -3 

檢視包名包含字元串aaron的指令

adb shell pm list packages aaron 

檢視前台 Activity

adb shell dumpsys activity activities | grep mFocusedActivity 

檢視正在運作的Services

adb shell dumpsys activity services [] 

參數不是必須的,指定 表示檢視與某個包名相關的 Services,不指定表示檢視所有 Services。

CPU資訊

adb shell cat /proc/cpuinfo 

記憶體資訊

adb shell cat /proc/meminfo 

其中,MemTotal 就是裝置的總記憶體,MemFree 是目前空閑記憶體。

檢視占用cpu占用排行

adb shell busybox top 

總結:

adb 的使用還有很多的指令,這裡不一一列舉了。更多的可以檢視adb 指令的幫助資訊。

本文作者:佚名

來源:51CTO

原文标題:Android ADB開發常用指令總結