歡迎加入QQ討論群258996829
麥子學(xué)院 頭像
蘋果6袋
6
麥子學(xué)院

Android 學(xué)習(xí)之a(chǎn)db常用命令詳解

發(fā)布時(shí)間:2017-09-10 22:49  回復(fù):0  查看:2326   最后回復(fù):2017-09-10 22:49  

本文和大家分享的主要是android開發(fā)中常用的adb命令相關(guān)內(nèi)容,一起來看看吧,希望對(duì)大家學(xué)習(xí)android有所幫助。

  簡(jiǎn)化adb 連接命令

  如果指定ip 連接,一般為 adb conenct 172.18.xxx.xxx ,這樣每次進(jìn)行連接時(shí),發(fā)現(xiàn)都有重復(fù)的的命令需要敲,程序員就是要減少重復(fù)工作,所以現(xiàn)在就將重復(fù)的命令省掉。(以下為mac下的配置的方法):

  · 新建.alias_bash 文件

  ·文件中使用 alias 別名關(guān)鍵字重新命令

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 然后重新執(zhí)行 source ./.bash_profile ,或者直接關(guān)掉終端,重新打開一個(gè)。

  · 嘗試使用 ac 172.18.**.** ,則可直接連接上機(jī)器,在輸入 ad 即可看到adb連接到的設(shè)備。

  上面只是個(gè)例子,可以在文件 .alias_bash 文件中添加其他的簡(jiǎn)化命令。

  adb 多設(shè)備指定連接

  在使用adb連接多個(gè)設(shè)備,當(dāng)想連接到某一個(gè)設(shè)備的shell時(shí) adb -s 172.18.xx.xx:5555 shell 。

  如果是其他命令一樣可以指定設(shè)備執(zhí)行。例如:

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

  adb 文件處理

  復(fù)制電腦里的文件到設(shè)備

  命令:

  adb push <電腦上的文件路徑> <設(shè)備里的目錄>

  例:

  adb push ~/sr.mp4 /sdcard/

  復(fù)制設(shè)備里的文件到電腦

  命令:

  adb pull <設(shè)備里的文件路徑> [電腦上的目錄]

  · 其中 電腦上的目錄 參數(shù)可以省略,默認(rèn)復(fù)制到當(dāng)前目錄。

  例:

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

  adb 安裝卸載應(yīng)用

  adb 安裝應(yīng)用

  命令格式:

  adb install [-lrtsdg]

  參數(shù):

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

Android&nbsp;學(xué)習(xí)之a(chǎn)db常用命令詳解

運(yùn)行命令后如果見到類似如下輸出(狀態(tài)為 Success)代表安裝成功:

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

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

  Success

  adb 卸載應(yīng)用

  命令:

  adb uninstall [-k]

  · 表示應(yīng)用的包名,-k參數(shù)可選,表示卸載應(yīng)用但保留數(shù)據(jù)和緩存目錄。

  命令示例:

  adb uninstall com.aaron.test

  adb 啟動(dòng)應(yīng)用

  啟動(dòng)activity

  命令格式:

  adb shell am start [options]

  例如:

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

  如果想要對(duì)啟動(dòng)的Intent添加參數(shù)可以按照key-value形式添加。

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

  啟動(dòng)servies

  命令格式:

  adb shell am startservice [options]

  例如:

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

  表示調(diào)起音樂服務(wù)Service。

  發(fā)送廣播

  命令格式:

  adb shell am broadcast [options]

  可以向所有組件廣播,也可以只向指定組件廣播。

  例如,向所有組件廣播 BOOT_COMPLETED

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

  向指定的接收器發(fā)送廣播,例子:

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

  如果帶參數(shù)的廣播則在后面加上參數(shù)的key, value 。 例如:

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

  adb 殺進(jìn)程

  命令:

  adb shell am force-stop 

  命令示例:

  adb shell am force-stop com.aaron.test

  adb 清除應(yīng)用緩存等

  命令:

  adb shell pm clear

  · 表示應(yīng)用名包,這條命令的效果相當(dāng)于在設(shè)置里的應(yīng)用信息界面點(diǎn)擊了「清除緩存」和「清除數(shù)據(jù)」。

  命令示例:

  adb shell pm clear com.aaron.test

  adb 模擬事件

  命令:

  adb shell input keyevent

  例子:

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

  adb 查看日志

  命令格式:

  [adb] logcat [<option>] ... [<filter-spec>] ...

  例子:

  adb logcat *:W

  Android 的日志分為如下幾個(gè)優(yōu)先級(jí)(priority):

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

  · D —— Debug

  · I —— Info

  · W —— Warning

  · E —— Error

  · F —— Fatal

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

  過濾指定TAG

  adb logcat -s

  其他常用命令

  查看應(yīng)用列表信息

  查看應(yīng)用列表的基本命令格式是

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

  · 即在 adb shell pm list packages 的基礎(chǔ)上可以加一些參數(shù)進(jìn)行過濾查看不同的列表,支持的過濾參數(shù)如下:

Android&nbsp;學(xué)習(xí)之a(chǎn)db常用命令詳解

例如:

  ·第三方應(yīng)用

  pm list packages -s

  ·包名包含某字符串的應(yīng)用

  adb shell pm list packages -3

  ·查看包名包含字符串aaron的命令

  adb shell pm list packages aaron

  查看前臺(tái) Activity

  命令:

  adb shell dumpsys activity activities | grep mFocusedActivity

  查看正在運(yùn)行的Services

  命令:

  adb shell dumpsys activity services []

  · 參數(shù)不是必須的,指定 表示查看與某個(gè)包名相關(guān)的 Services,不指定表示查看所有 Services。

  CPU信息

  命令:

  adb shell cat /proc/cpuinfo

  內(nèi)存信息

  內(nèi)存信息

  命令:

  adb shell cat /proc/meminfo

  · 其中,MemTotal 就是設(shè)備的總內(nèi)存,MemFree 是當(dāng)前空閑內(nèi)存。

  查看占用cpu占用排行

  命令:

  adb shell busybox top

  總結(jié):

  adb 的使用還有很多的命令,這里不一一列舉了。更多的可以查看adb 命令的幫助信息。

 

 

來源:Android夢(mèng)想特工隊(duì)

您還未登錄,請(qǐng)先登錄

熱門帖子

最新帖子

?