【和小強學移動app測試3】adb命令使用匯總(持續更新)

課程名稱 介紹(實際內容遠大於這裏介紹的) 購買與觀看地址
【內容已全面升級】移動手機APP測試從零開始(初級篇) 經典視頻重現江湖,銷量遙遙領先!近期講升級視頻內容,已購買的用戶能夠繼續觀看哦

http://edu.51cto.com/course/course_id-1923.htmlhtml

或者shell

http://edu.csdn.net/course/detail/177app

內容已全面升級移動手機APP測試從零開始(中級篇)

http://edu.51cto.com/course/course_id-2078.htmldom

或者socket

http://edu.csdn.net/course/detail/178tcp

【即將全面更新】移動手機APP測試從零開始(提高篇) 此處內容將會有翻天覆地的變化,和老版徹底不一樣,敬請期待

http://edu.51cto.com/course/course_id-3345.htmlide

或者測試

http://edu.csdn.net/course/detail/838spa


依照環境安裝配置那節筆記,咱們已經把adb設爲了環境變量,因此能夠直接使用了.net

一、啓動與關閉adb

adb kill-server 

adb start-server 

二、查看咱們如今運行的devices列表

由於我機器只啓動了一個模擬器,因此只有一個device。

三、 在Eclipse中運行Android程序必須得有Android源碼工程。那若是隻有apk文件,咱們則能夠用adb install、adb uninstall和am。

3.1 安裝

先進入apk所在目錄,而後用以下兩種命令均可以

上面這個是若是有多臺模擬器或真機時使用,下面這個是隻有一臺的時候使用,後續的命令同樣的道理,多臺時須要使用-s參數指定device

3.2 從新安裝

adb install -r AppTest.apk

3.3 卸載

若是用adb命令卸載,須要知道apk所在的包名,問開發便可。若是閒這個麻煩,在模擬器中卸載便可,和在真機中卸載方式同樣同樣的。

以上是徹底卸載,若是想保留數據和緩衝目錄,只卸載應用程序,使用如下命令:

adb uninstall -k com.example.apptest

3.4 使用命令運行apk

其中MainActivity是這個apk的主activity

4 查看logcat

adb logcat

五、push和pull

六、獲取apk的package name

出現上述狀況的時候,再次輸入su,同時要注意看手機上,會出現受權提示

上圖就是咱們能看到的apk包名。詳細命令以下

adb shell
su
cd data/app
ls


註釋:
第一行:進入adb命令行模式
第二行:獲取系統權限
第三行:進入data/app 目錄
第四行:列出當前目錄下的文件及目錄
 

PS:adb命令列表


下列表格列出了adb支持的全部命令,並對它們的意義和使用方法作了說明.

Category

Command

Description

Comments

Options

-d

僅僅經過USB接口來管理abd

若是不僅是用USB接口來管理則返回錯誤

-e

僅僅經過模擬器實例來管理adb

若是不是僅僅經過模擬器實例管理則返回錯誤

-s <serialNumber>

經過模擬器/設備的容許命令號碼來發送命令來管理adb (如 &ldquo;emulator-5556&Prime;)

若是沒有指定號碼,則會報錯

General

devices

查看全部鏈接模擬器/設備的設施的清單

查看 Querying for Emulator/Device  Instances 獲取更多相關信息

help

查看adb所支持的全部命令

 

version

查看adb的版本序列號

 

Debug

logcat [<option>] [<filter-specs>]

將日誌數據輸出到屏幕上

 

bugreport

查看bug的報告,如dumpsys ,dumpstate ,和logcat 信息

 

jdwp

查看指定設施的可用的JDWP信息

能夠用 forward jdwp:<pid>端口映射信息來鏈接指定的JDWP進程,例如:
adb  forward tcp:8000 jdwp:472
jdb -attach localhost:8000

Data

install <path-to-apk>

安裝Android爲(能夠模擬器/設施的數據文件.apk指定完整的路徑)

 

pull <remote> <local>

將指定的文件從模擬器/設施拷貝到計算機上

 

push <local> <remote>

將指定的文件從計算機上拷貝到模擬器/設備中

 

Ports and Networking

forward <local> <remote>

用本地指定的端口經過Socket方法遠程鏈接模擬器/設施

端口須要描述下列信息:

  • tcp:<portnum>

  • local:<UNIX domain socket name>

  • dev:<character device name>

  • jdwp:<pid>

ppp <tty> [parm]&hellip;

經過USB運行ppp:

  • <tty> &mdash; the tty for PPP stream. For  exampledev:/dev/omap_csmi_ttyl.

  • [parm]&hellip; &mdash zero or more PPP/PPPD options, such as defaultroute  ,local , notty , etc.

須要提醒的不能自動啓動PDP鏈接

 

Scripting

get-serialno

查看adb實例的序列號

查看 Querying for Emulator/Device  Instances 能夠得到更多信息

get-state

查看模擬器/設施的當前狀態

wait-for-device

若是設備不聯機就不讓執行,也就是實例狀態是 device 時

能夠提早把命令轉載在adb的命令器中,在命令器中的命令在模擬器/設備鏈接以前是不會執行其餘命令的,示例以下:

adb wait-for-device shell getprop

須要提醒的是,這些命令在全部的系統啓動起來以前是不會啓動adb的,因此在全部的系統啓動起來以前也不能執行其餘的命令,例如,運用install 的時候就須要Android包,這些包須要系統徹底啓動,例如:

adb wait-for-device install <app>.apk

上面的命令只有鏈接上了模擬器/設備鏈接上了adb服務纔會被執行,而在Android系統徹底啓動前執行就會有錯誤發生

Server

start-server

選擇服務是否啓動adb服務進程

 

kill-server

終止adb服務進程

 

Shell

shell

經過遠程Shell命令來控制模擬器/設備實例

查看獲取更多信息 for more information

shell [<shellCommand>]



wKioL1Z6pmqCA0VoAABkcr6wkiQ789.png 

相關文章
相關標籤/搜索