Android ADB常用命令總結(jié)

????對(duì)于Android開發(fā)來說 秋泄,我感覺ADB即熟悉又陌生。熟悉是因?yàn)榻?jīng)常聽說過规阀,并且時(shí)不時(shí)會(huì)用到一兩條簡(jiǎn)單的命令恒序;陌生是大部分情況下很少使用,因?yàn)橐恍㊣DE工具已經(jīng)幫我們集成了一些常用的命令谁撼,Android studio 中的 ADT歧胁、SDK Tools 目錄下的 DDMS、Monitor 等工具厉碟,都是同樣地用到了 adb 的功能來與 Android 設(shè)備進(jìn)行交互喊巍。下面的總結(jié)部分內(nèi)容來自Github 上一位開發(fā)者的博客ADB 用法大全

????另外說明下:PC 端的一些手機(jī)助手,如應(yīng)用寶? 360 手機(jī)助手等墨榄,就是集成了adb命令方便我們操作玄糟,基本上這類助手上的操作都可以通過 adb 命令去完成,這里建議開發(fā)或者測(cè)試人員盡量不要在電腦上安裝這類手機(jī)助手袄秩,因?yàn)槠渥詭У?adb 程序可能會(huì)與 Android SDK 下的 adb 程序產(chǎn)生沖突阵翎,5037?端口被占用逢并,導(dǎo)致使用 adb 命令時(shí)無法連接到設(shè)備。

? ? 首先看下ADB的概念郭卫。ADB 全稱?Android Debug Bridge 砍聊,即Android調(diào)試橋梁,下面為官方對(duì)ADB的介紹贰军。

ADB介紹

????Android的初衷是用ADB來協(xié)助開發(fā)人員在開發(fā)android應(yīng)用的過程中更快更好的調(diào)試apk玻蝌,因此adb具有安裝卸載apk、拷貝推送文件词疼、查看設(shè)備硬件信息俯树、查看應(yīng)用程序占用資源、在設(shè)備執(zhí)行shell命令等功能贰盗。

基本的語法

adb [-d|-e|-s <serialNumber>] ?<command>

? ? 如果Server端只連接了一臺(tái)設(shè)備许饿,就可以省略[-d|-e|-s <serialNumber> ] 中的內(nèi)容。直接使用adb?<command>舵盈。比如adb install ***.apk?

? ? 如果有多臺(tái)設(shè)備或者模擬器陋率,則需要指定目標(biāo)設(shè)備


ADB根據(jù)設(shè)備類型分為模擬器和設(shè)備,而設(shè)備的連接方式有兩種 usb連接或者無線連接

USB 連接

通過 USB 連接來正常使用 adb 需要保證幾點(diǎn):

????1.設(shè)備(手機(jī)/Android設(shè)備)的狀態(tài)是正常的

????2.打開開發(fā)者模式和?USB 調(diào)試模式秽晚。一般在手機(jī)-[設(shè)置]-[開發(fā)者模式]-[Android調(diào)試] 中打開

????3.Server端的驅(qū)動(dòng)是正常的瓦糟。在 Windows 下有可能遇到需要安裝驅(qū)動(dòng)的情況,確認(rèn)這一點(diǎn)可以右鍵「計(jì)算機(jī)」-「屬性」赴蝇,到「設(shè)備管理器」里查看相關(guān)設(shè)備上是否有黃色感嘆號(hào)或問號(hào)菩浙,如果沒有就說明驅(qū)動(dòng)狀態(tài)已經(jīng)好了。否則可以下載一個(gè)手機(jī)助手類程序來安裝驅(qū)動(dòng)

????通過USB連接后可以用1.獲取設(shè)備 命令來查看是否連接成功扯再。

無線連接

? ??除了可以通過 USB 連接設(shè)備與電腦來使用 adb芍耘,也可以通過無線連接——雖然連接過程中也有需要使用 USB 的步驟,但是連接成功之后你的設(shè)備就可以在一定范圍內(nèi)擺脫 USB 連接線的限制

操作步驟:

????1.將 Android 設(shè)備與要運(yùn)行 adb 的電腦連接到同一個(gè)局域網(wǎng)熄阻,一般連到同一個(gè) WiFi斋竞。一些Android設(shè)備是有網(wǎng)口的,也可以通過網(wǎng)線連接

????2.將設(shè)備與電腦通過 USB 線連接秃殉,并確保USB連接成功

? ? 3.使用ADB命令讓該設(shè)備在 5555 端口監(jiān)聽TCP/IP 連接

adb tcpip 5555

? ? 4.斷開 USB 連接坝初。

? ? 5.查看設(shè)備的?IP 地址 。一般能在「設(shè)置」-「關(guān)于手機(jī)」-「狀態(tài)信息」-「IP地址」找到钾军,也可以使用后面講到的ADB命令查看IP地址

? ? 6.通過IP連接設(shè)備

adb connect <device-ip-address>

比如?adb connect 192.168.1.102

? ? 如果提示“connected to 192.168.1.102:5555” ?說明無線連接成功

? ??如果連接不了鳄袍,請(qǐng)確認(rèn) Android 設(shè)備與電腦是連接到了同一個(gè) WiFi,然后再次執(zhí)行?adb connect <device-ip-address>?那一步吏恭;如果還是不行的話拗小,通過?adb kill-server?重新啟動(dòng) adb 然后從頭再來一次試試

另外,能否不通過USB就能實(shí)現(xiàn)無線連接呢樱哼,是可以的哀九,首先Android設(shè)備還是和電腦保證在同一局域網(wǎng)段下剿配,而且手機(jī)需要 root 權(quán)限便监。接著步驟如下:

????1.在 Android 設(shè)備上安裝一個(gè)終端模擬器单芜,就是可以在Android上輸入一些命令的APP。已經(jīng)安裝過的設(shè)備可以跳過此步张惹。我使用的終端模擬器下載地址是:Terminal Emulator for Android Downloads

? ? 2.打開 Android 設(shè)備上的終端模擬器息裸,在里面依次運(yùn)行命令

su

setprop service.adb.tcp.port 5555

? ? 3.在電腦上通過 adb 和 IP 地址連接 Android 設(shè)備

adb connect <device-ip-address>

1.獲取設(shè)備

adb devices

List of devices attached

b9746827 device

emulator-5554 device

如果List of devices attached 下面有多個(gè)device,有你需要的設(shè)備說明連接成功了

2.啟動(dòng)/停止 ADB?

adb start-server

adb kill-server

一般情況下是不需要啟動(dòng)adb 的因?yàn)閍db自動(dòng)啟動(dòng)蝇更,如果沒有啟動(dòng)就輸入如上的命令。一般在連接出現(xiàn)異常呼盆,使用 adb devices 未正常列出設(shè)備年扩, 設(shè)備狀態(tài)異常時(shí)使用 kill-server,然后運(yùn)行 start-server 進(jìn)行重啟服務(wù).

3.指定 adb server 的網(wǎng)絡(luò)端口

adb server的默認(rèn)端口是5037访圃,如果想更改可以輸入

adb -P <part> start-server

比如adb -P 8888 start-server

4.安裝應(yīng)用

adb install [-lrtsdg] <path_to_apk>

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


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

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

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

Success

如果狀態(tài)為?Failure?則表示安裝失敗,比如:

[100%] /data/local/tmp/map-20160831.apk

????????????pkg: /data/local/tmp/map-20160831.apk

Failure [INSTALL_FAILED_ALREADY_EXISTS]

常見安裝失敗輸出代碼挽荠、含義及可能的解決辦法如下:

adb install?實(shí)際是分三步完成:

? ? 1.push apk 文件到 /data/local/tmp

? ? 2.調(diào)用 pm install 安裝

? ? 3.刪除 /data/local/tmp 下的對(duì)應(yīng) apk 文件

5.卸載應(yīng)用

adb uninstall [-k] <packagename>

<packagename>?表示應(yīng)用的包名,-k?參數(shù)可選平绩,表示卸載應(yīng)用但保留數(shù)據(jù)和緩存目錄圈匆。比如

adb uninstall com.qihoo360.mobilesafe

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

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

[電腦上的目錄] 可以省略,即復(fù)制到當(dāng)前目錄

比如 adb pull /sdcard/123.txt ~/tmp/? ?復(fù)制123.txt文件到tmp目錄下

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

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

比如:adb push~/text.mp4 ?/sdcard/

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

adb shell dumpsys activity services [<packagename>]

<packagename>?參數(shù)不是必須的捏雌,指定?<packagename>?表示查看與某個(gè)包名相關(guān)的 Services跃赚,不指定表示查看所有 Services。<packagename>?不一定要給出完整的包名

9.查看前臺(tái) Activity

adb shell dumpsys activity activities


SettingsActivity 正在前臺(tái)運(yùn)行

這里面包含了很多信息性湿,可以單獨(dú)寫一篇博客總結(jié)

10.查看應(yīng)用詳細(xì)信息

adb shell dumpsys package <packagename>

比如 adb shell dumpsys package cn.com.quickpark.mep

Activity Resolver Table:

? ??Schemes:

????????wx4d9259f3fed5cb07:

? ??????7112336 cn.com.quickpark.mep/.activities.youjia.qppay.ActivityQppayRecharge filter bcfd6ac

? ? ? ? .....

Receiver Resolver Table:

? ?? Non-Data Actions:

? ??????android.intent.action.SCREEN_OFF:

? ?????? d5bb50d cn.com.quickpark.mep/com.igexin.sdk.PushReceiver filter e7710b9

? ? ? ? ......

????輸出中包含很多信息纬傲,包括 Activity Resolver Table、Registered ContentProviders肤频、包名叹括、userId、安裝后的文件資源代碼等路徑宵荒、版本信息汁雷、權(quán)限信息和授予狀態(tài)、簽名版本信息等报咳。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末侠讯,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子暑刃,更是在濱河造成了極大的恐慌厢漩,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,968評(píng)論 6 482
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件岩臣,死亡現(xiàn)場(chǎng)離奇詭異溜嗜,居然都是意外死亡宵膨,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,601評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門粱胜,熙熙樓的掌柜王于貴愁眉苦臉地迎上來柄驻,“玉大人,你說我怎么就攤上這事焙压『枧В” “怎么了?”我有些...
    開封第一講書人閱讀 153,220評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵涯曲,是天一觀的道長(zhǎng)野哭。 經(jīng)常有香客問我,道長(zhǎng)幻件,這世上最難降的妖魔是什么拨黔? 我笑而不...
    開封第一講書人閱讀 55,416評(píng)論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮绰沥,結(jié)果婚禮上篱蝇,老公的妹妹穿的比我還像新娘。我一直安慰自己徽曲,他們只是感情好零截,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,425評(píng)論 5 374
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著秃臣,像睡著了一般涧衙。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上奥此,一...
    開封第一講書人閱讀 49,144評(píng)論 1 285
  • 那天弧哎,我揣著相機(jī)與錄音,去河邊找鬼稚虎。 笑死撤嫩,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的蠢终。 我是一名探鬼主播非洲,決...
    沈念sama閱讀 38,432評(píng)論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼蜕径!你這毒婦竟也來了两踏?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,088評(píng)論 0 261
  • 序言:老撾萬榮一對(duì)情侶失蹤兜喻,失蹤者是張志新(化名)和其女友劉穎梦染,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,586評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡帕识,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,028評(píng)論 2 325
  • 正文 我和宋清朗相戀三年泛粹,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片肮疗。...
    茶點(diǎn)故事閱讀 38,137評(píng)論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡晶姊,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出伪货,到底是詐尸還是另有隱情们衙,我是刑警寧澤,帶...
    沈念sama閱讀 33,783評(píng)論 4 324
  • 正文 年R本政府宣布碱呼,位于F島的核電站蒙挑,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏愚臀。R本人自食惡果不足惜忆蚀,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,343評(píng)論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望姑裂。 院中可真熱鬧馋袜,春花似錦、人聲如沸舶斧。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,333評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽捧毛。三九已至,卻和暖如春让网,著一層夾襖步出監(jiān)牢的瞬間呀忧,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,559評(píng)論 1 262
  • 我被黑心中介騙來泰國(guó)打工溃睹, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留而账,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 45,595評(píng)論 2 355
  • 正文 我出身青樓因篇,卻偏偏與公主長(zhǎng)得像泞辐,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子竞滓,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,901評(píng)論 2 345

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

  • 福利大放送 這是對(duì)好多adb命令行的總結(jié)咐吼,很實(shí)用,有些東西知道了之后就會(huì)特別酷炫: 內(nèi)容 指定目標(biāo)設(shè)備: 如果只有...
    Only凹凸曼閱讀 2,510評(píng)論 1 6
  • 中秋節(jié)到啦!我最喜歡的節(jié)日。喜歡吃中秋節(jié)的月餅肌幽,愛鎖定湖南衛(wèi)視看中秋晚會(huì)晚碾,月亮也特別美。昨天晚上就想著今天...
    萊大貓閱讀 190評(píng)論 0 0
  • 剪切視頻 這個(gè)命令就是從00秒開始裁剪到00+30=30秒結(jié)束喂急,總共30秒的視頻格嘁。這個(gè)命令執(zhí)行很快,因?yàn)橹皇窃紨?shù)...
    SHUTUP閱讀 93,152評(píng)論 10 23
  • 小品文/PIXIU 夜間廊移,我們每個(gè)人都會(huì)做夢(mèng)糕簿,或長(zhǎng)或短,或好或壞画机,或刻骨銘心或一閃而過冶伞。它會(huì)伴隨我們的一生而...
    pixiu小品文閱讀 1,220評(píng)論 3 6
  • 一 《丑陋的中國(guó)人》是我國(guó)臺(tái)灣作家柏(bǎi)楊的大作,自1985年出版以來步氏,歷經(jīng)30多年非議“風(fēng)雨”响禽,卻一版再版...
    五更雞ruc_2015閱讀 833評(píng)論 1 3