導航:首頁 > 程序命令 > androidadb命令大全

androidadb命令大全

發布時間:2023-04-10 20:31:53

Ⅰ adb 簡介及常用命令

adb全稱(android Debug Bridge),它是一個通用命令行工具,它可以做為Android與PC端連接的一個橋梁,所以adb又稱為Android調試橋,用戶可以通過adb在電腦上對Android設備進行全面操作,比如安裝和調試應用,操作文件的傳輸等。

首先用戶啟動一個adb客戶端時,此客戶端先檢查是否存在已運行的adb伺服器進程。如果沒有,它將啟動一個伺服器進程,當伺服器進程啟動時,adb伺服器就會綁定本地的TCP埠5037並監聽adb客戶端發來的命令,使用的adb客戶端都使用埠5037與adb伺服器進行對話的。接著伺服器將所有運行中的模擬器或設備實例進行連接。它通過掃描所有5555到5585范圍內的奇數埠來定位所有的模擬器或設備。一旦伺服器找到了adb守護程序,將建立一個到該埠的連接。
客戶端發送的命令分為三種:

輸出狀態:

adb install安裝原理過程:

Android系統的日誌分為兩部分:底層的linux內核日誌輸出到/proc/kmsg, Android日誌輸出到/dev/log。Android的Log等級通常有六類,按照日誌級別由低到高分別是:Verbose、Debug、Info、Warning、Error、Assert。

Ⅱ Android—ADB命令

1、查看最上層成activity名字:

adb shell mpsys activity | findstr "mFocusedActivity"
或者 adb shell mpsys window w | findstr / | findstr name=
2、查看Activity的任務棧:

3、顯示所有的activities的信息,包括任務棧等:

adb shell mpsys activity
4、查看Android應用包名package和入口activity名稱 :

aapt mp badging E:\apk\es3.apk
5、顯示accounts信息:

adb shell mpsys account
5、顯示CPU信息 :

adb shell mpsys cpuinfo
查看CPU使用信息

adb shell top -n 1 -d 0.5 | findstr proc_ id
6、顯示鍵盤,窗口和它們的關系

adb shell mpsys window
當我們需要知道設備的解析度時

adb shell mpsys window displays
查看UI繪制的各個層級信息

adb shell mpsys SurfaceFlinger
7、顯示wifi信息

adb shell mpsys wifi
8、電量信息及CPU 使用時長

adb shell mpsys batteryinfo $package_name
9、獲取安裝包信息

adb shell mpsys package packagename
10、每個應用的啟動次數和時間

adb shell mpsys usagestats
11、顯示狀態欄相關的信息

adb shell mpsys statusbar
12、內存信息(meminfo package_name or pid 使用程序的包名或者進程id顯示內存信息)

adb shell mpsys meminfo
得到com.teleca.robin.test進程使用的內存的信息 adb shell mpsys meminfo com.teleca.robin.test
13、磁碟相關信息

adb shell mpsys diskstats
14、電池相關信息

adb shell mpsys battery
15、顯示Alarm信息

adb shell mpsys alarm
統計系統耗電量

adb shell mpsys batterystats
設置線程的優先順序

adb shell mpsys activity|grep oom_adj
16、強制關閉一個應用程序;

adb shell am force-stop <PACKAGE>
17、查看內存信息

adb shell cat proc/meminfo
指定進程內存地址映射

adb shell cat proc/pid/maps
指定進程內存詳細使用信息

adb shell cat proc/pid/smaps
VSS. RSS. PSS. USS 信息

adb shell procrank
指定進程VSS. RSS. PSS. USS 詳細信息

adb shell procmem pid
18、查看可輸入的設備

adb shell getevent -p
19、獲得特定設備的輸入信息

adb shell getevent /dev/input/event0
20、點擊

adb shell input tap x y
21、發送按鍵

adb shell input keyevent 82(keycode)
22、輸入文本

adb shell input text XXXX
23、查看報名中包含mobileqq的進程

adb shell ps | findstr mobileqq
24、遠程進程ID

adb jdwp
25、獲取序列號

adb get-serialno
26、重啟到bootloader,即刷機模式

adb reboot bootloader
27、重啟到recovery,即恢復模式

adb reboot recovery
28、獲取機器MAC地址:

adb shell cat /sys/class/net/wlan0/address
29、獲取CPU序列號

adb shell cat /proc/cpuinfo
30、覆蓋安裝(保留數據和緩存文件,重新安裝apk)

adb install -r <apkfile>
31、安裝apk到sd卡

adb install -s <apkfile>
32、卸載app但保留數據和緩存文件

adb uninstall -k <package>
33、查看設備cpu和內存佔用情況

adb shell top
34、查看佔用內存前6的app

adb shell top -m 6
35、刷新一次內存信息,然後返回

adb shell top -n 1
36、查詢各進程內存使用情況

adb shell procrank
37、查看指定進程狀態

adb shell ps -x [PID]
38、查看後台services信息

adb shell service list
39、查看當前內存佔用(該方式只能得出系統整個內存的大概使用情況) 車
如果你想查看所有進程的內存使用情況

adb shell procrank
40、查看IO內存分區

adb shell cat /proc/iomem
41、查看wifi密碼

adb shell cat /data/misc/wifi/*.conf
42、清除log緩存

adb logcat -c
43、查看設備信息

adb shell cat /system/build.prop
44、跑monkey

adb shell monkey -v -p your.package.name 500
45、列出目標設備上安裝的所有app的包名

adb shell pm list packages
46、截屏命令:

adb shell screencap -p /sdcard/screen.png

adb pull /sdcard/screen.png

adb shell rm /sdcard/screen.png
錄制手機屏幕,視頻格式為mp4,存放到手機sd卡里,默認錄制時間為180s:

adb shell screenrecord
限制視頻錄制時間為10s,如果不限制,默認180s:

adb shell screenrecord --time-limit 10 /sdcard/demo.mp4
指定視頻解析度大小:

adb shell screenrecord --size 1280*720 /sdcard/demo.mp4
指定視頻的比特率:

adb shell screenrecord --bit-rate 6000000 /sdcard/demo.mp4
在命令行顯示log:

adb shell screenrecord --time-limit 10 --verbose /sdcard/demo.mp4
47、設置、獲取屬性信息

adb shell getprop [key]

adb shell setprop [key] [value]
監聽系統屬性的變化,如果期間系統的屬性發生變化則把變化的值顯示出來

adb shell watchprops
48、adb logcat 每一條日誌消息都有一個標記和優先順序與其關聯。
(1)標記是一個簡短的字元串,用於標識原始消息的來源 (例如"View" 來源於顯示系統)。優先順序是下面的字元,順序是從低到高:

V — 明細 (最低優先順序)
D — 調試
I — 信息
W — 警告
E — 錯誤
F — 嚴重錯誤
S — 無記載 (最高優先順序,沒有什麼會被記載)
(2)查看過濾日誌

adb logcat ActivityManager:I *:S
*:S 用於設置所有標記的日誌優先順序為S,可以確保輸出符合指定的過濾器設置的一種推薦的方式,
這樣過濾器就成為了日誌輸出的「白名單」
顯示所有優先順序大於等於「warning」的日誌

adb logcat *:W
(3)日誌消息在標記和優先順序之外還有很多元數據欄位,這些欄位可以通過修改輸出格式來控制輸出結果, -v 選項加上下面列出的內容可以控制輸出欄位:

brief — 顯示優先順序/標記和原始進程的PID (默認格式)
process — 僅顯示進程PID
tag — 僅顯示優先順序/標記
thread — 僅顯示進程:線程和優先順序/標記
raw — 顯示原始的日誌信息,沒有其他的元數據欄位
time — 顯示日期,調用時間,優先順序/標記,PID
long —顯示所有的元數據欄位並且用空行分隔消息內容
使用 thread 輸出格式

adb logcat -v thread
(4)Android日誌系統為日誌消息保持了多個循環緩沖區,而且不是所有的消息都被發送到默認緩沖區,要想查看這些附加的緩沖區,可以使用-b 選項,以下是可以指定的緩沖區:

radio — 查看包含在無線/電話相關的緩沖區消息
events — 查看事件相關的消息
main — 查看主緩沖區 (默認緩沖區)
查看radio緩沖區

adb logcat -b radio
48、列印應用程序的log

adb logcat -b main -v time>app.log
49、列印射頻相關的log,SIM STK也會在裡面,modem相關的ATcommand等,當然跟QXDM差的很遠了

adb logcat -b radio -v time> radio.log
50、列印系統事件的日誌,比如觸屏事件

adb logcat -b events -v time
51、tcpmp 是很有用的,對於TCP/IP協議相關的都可以使用這個來抓

adb shell tcpmp -s 10000 -w /sdcard/capture.pcap
52、狀態信息,裡麵包含有dmesg,mpstate和mpsys

adb bugreport>bugreport.log
53、kernel的log凡是跟kernel相關的,比如driver出了問題(相機,藍牙,usb,啟動,等等吧)

adb shell dmesg > ldmesg_kernel.log
54、mpstate是系統狀態信息,裡面比較全,包括手機當前的內存信息、cpu信息、logcat緩存,kernel緩存等等 。

adb shell mpstate
55、關於系統service的內容都在這個裡面

adb shell mpsys
56、顯示內存信息

adb shell mpsys meminfo system

Ⅲ 常用的安卓手機adb命令總結

很早就想整理一下自己平時常用的一些adb命令,不僅為了便於以後查找,而且整理的過程自己又重新復習了一遍,但是當我開始在度娘一搜的時候,發現很多人已經寫的非常詳細了,尤其是當我發現了這篇adb概括

心中一句NND,怎麼可以寫的這么詳細,瞬間沒了想寫這篇文章的慾望,如果你點了鏈接發現確實很全,那麼恭喜你可以關掉這篇了,哈哈哈。

我就不這么想的,雖然很全,但不是我常用的,因人而異,所以我就權當記筆記+替這哥們宣傳了。

– adb devices , 獲取設備列表及設備狀態

設備的狀態有 3 種

device , 設備連接正常

offline , 設備離線,連接出現異常

unauthorized 設備為進行授權,需要在設備上是否允許調試對話框進行授權

offline情況解決辦法,先執行adb kill-server 命令,再執行adb start-server 命令,再嘗試adb devices 查看列表,如果還是offline,來來來,使用必殺技,重啟大法。

當電腦連接多個android設備並可用時,所有的adb命令都需要指定設備後執行(當然你也可以移除多餘的設備)

adb -s <設備名稱> install/uninstall/shell/pull/push等命令

– adb install app在pc硬碟路徑,選中app直接拖入即可

常見的錯誤情況

INSTALL_FAILED_TEST_ONLY, 安裝的app的debug版本的,未簽名,adb install -t 路徑即可安裝

INSTALL_FAILED_DUPLICATE_PACKAGE, 已經安裝相同包名的app, 先卸載再安裝

– adb uninstall app的包名,卸載app

adb pull 將 Android 設備上的文件或者文件夾復制到本地

adb pull sdcard/Android/111.txt E:\

小技巧,可以將本地路徑指定為桌面,方便查看, 在桌面按住shift鍵,滑鼠右鍵選擇在此處打開命令行窗口,直接輸入adb pull sdcard/Android/111.txt 執行,就可將111.txt復制到桌面。

前提是設備已經獲取root許可權

adb root

adb remount

adb push 將pc上文件復制到android設備中,修改room原生應用時比較頻繁使用,如settings.apk, launcher3.apk

– adb shell pm 命令

adb shell pm list package 列出android設備上的所有app

adb shell pm list package -s 列出android設備上的系統級別app

adb shell pm list package -3 列出android設備上的第三方app(用戶安裝的)

adb shell pm list package -f 列出app包名及對應的apk名及存放位置

adb shell pm list package -i 列出app包名及其安裝來源(應用市場名稱)

adb shell pm mp app包名 列出app的相關信息,類似獲取Manifest文件內容

-查看前台 Activity

adb shell mpsys activity activities 「| grep mFocusedActivity」

-adb shell am 命令

最常用的就是啟動指定的activity和發送指定的廣播

啟動指定的activity

操作指令 adb shell am start -n 包名/類名

註:如果啟動activity時,出現如下錯誤

java.lang.SecurityException: Permission Denial: starting Intent { flg=0x10000000 > > cmp=com.mediatek.engineermode/.io.Gpio } from null (pid=3083, uid=2000) not exported from uid 1001

解決辦法,1、如果是你自己可控的app,那麼找到你要調用的activity在manifest.xml中,增加

1

配置即可, android:name="" 可以為空字元串。

2、如果是不可控的app,例如我調用的系統原生app,那麼你就洗洗睡吧,別折騰了,除非你修改源碼和上邊一樣操作,重新push替換原來的app。

啟動默認瀏覽器打開一個網頁

adb shell am start -a android.intent.action.VIEW -d  * ********

先停止目標應用,再啟動

adb shell am start -s com.android.camera/.Camera

啟動相機

adb shell am start -n com.android.camera/.Camera

啟動設置

adb shell am start -n com.android.settings/com.android.settings.Settings

啟動Wifi設置

adb shell am start -n com.android.settings/com.android.settings.wifi.WifiSettings

啟動藍牙設置

adb shell am start -n com.android.settings/com.android.settings.bluetooth.BluetoothSettings

其它的類似只要你能在manifest中找到配置的,都可以通過這種方法來調用

發送指定的廣播

操作指令 adb shell am broadcast -a 廣播名 --ei/es/ez 參數名 參數值 --ei/es/ez 參數名 參數值

–ei integer 值

–es String 值

–ez boolean 值

–ef float 值

–el long 值

例如之前寫的

Android6.0 源碼修改之Setting列表配置項動態添加和靜態添加, 當中就通過發送廣播來接收增加配置列表項

adb shell am broadcast -a cn.dynamic.add.settingcategoryitem --es location 「0-2」 --es title 「紅」 --es intent 「com.android.settings.SCHEDULE_POWER_ON_OFF_SETTING」

-adb shell input keycode 指令

HOME 鍵 adb shell input keycode 3

返回鍵 adb shell input keycode 4

打開瀏覽器 adb shell input keycode 64

-adb shell wm 指令

屏幕解析度 adb shell wm size

屏幕密度 adb shell wm density

adb shell wm density 320/480/640 可修改屏幕密度查看效果,對應Launcher圖標會縮放

adb shell ifconfig 命令

IP 地址 adb shell ifconfig 「| grep Mask」

WIFI 地址 adb shell ifconfig wlan0

狀態欄和導航欄的顯示隱藏

命令:

adb shell settings put global policy_control

可由如下幾種鍵及其對應的值組成,格式為 key1=value1:key2=value2。

key        含義

immersive.full        同時隱藏

immersive.status        隱藏狀態欄

immersive.navigation        隱藏導航欄

immersive.preconfirms        同時顯示

這些鍵對應的值可則如下值用逗號組合:

value        含義

apps        所有應用

所有界面

packagename        指定應用

packagename        排除指定應用

例如:

adb shell settings put global policy_control immersive.full=*

表示設置在所有界面下都同時隱藏狀態欄和導航欄。(重啟也不會失效,恢復需調用下面的命令)

adb shell settings put global policy_control immersive.preconfirms=*

表示恢復顯示

adb shell settings put global policy_control immersive.status=com.package1,com.package2:immersive.navigation=apps,-com.package3

表示設置在包名為 com.package1 和 com.package2 的應用里隱藏狀態欄,在除了包名為 com.package3 的所有應用里隱藏導航欄

adb shell am force-stop app  關閉APP

adb shell pm clear APP  app進程被殺死,且會清楚所有數據

 1:查找手機安裝應用的包名:adb shell pm list packages -f

    2:查看系統盤符:adb shell df

    3:查看Log 1:adb shell 2: logcat | grep "abc"

    4:刪除應用:1:adbremount  2:adb shell  3:cdsystem/app   4:rm *.apk

    5:安裝APK: adbinstall -r *.apk  或者 adb push*.apk  /system/app

    6:查看APP啟動的時間指令

     adb shell am start -W -ncom.android.dialer/.DialtactsActivity  (W是大寫)執行命令後APP會自 動啟動,其中ThisTime即是本次     App啟動所花費的時間。

    7:查看包名中當前所在進程信息:adb shell ps | grep +包名

    8:查看Activity運行的任務棧:adb shell mpsys activity

     9:查看鍵值:adb logcat | grep intercep  -i

    10:查看模塊所佔有的CPU資源:adb shell top -d 2 -m 10

    11:查看可用系統的權

           $ adb shell

           # pm list permissions

   12:模擬按鍵的輸入:adb shell input keyevent + 鍵值

      eg:  adb shell input keyevent  82   表示menu

             adb shell input keyevent  3     表示home

            adb shell input keyevent  19   表示up

             adb shell input keyevent  20   表示down

            adb shell input keyevent  21   表示left

             adb shell input keyevent  22   表示right

            adb shell input keyevent  66   表示enter

             adb shell input keyevent  4     表示back

    13:模擬滑動輸入:adb shell input touchscreen <x1> <y1> <x2> <y2>

        eg: adb shell input touchscreen swipe 18 665 18 350

    14:啟動一個Activity : adb shell am start -n 包名+類名

    15:錄制屏幕:adb shell screenrecord /sdcard/demo.mp4

    16:重新啟動:adb reboot   

    17:Monkey的基本用法下面是一個更為典型的命令行示例,它啟動指定的應用程序,並向其發送500個偽隨機事件:

          $ adb shell monkey -p your.package.name -v 500

        如果跑桌面或者systemUi的monkey的話:

         adb shell monkey -v -v -p 桌麵包名 --pct-touch 50 --pct-motion 30 --pct-syskeys 20 --throttle 300 -s 200 200000

    18:查找第三方應用的詳細信息:

        adb shell mpsys package +第三方包名(com.txznet.webchat)

Ⅳ 實戰——Androidadb常用命令詳解

ADB 全稱Android Debug Bridge 是一個功能非常強大的工具,它位於Android SDK安裝目錄的platform-tools 子目錄下,ADB工具即可完成模擬器文件與電腦文件的相互復制,也可安裝APK應用,甚至可以直接切換到Android系統中執行部分Linux命令

1、查看當前運行的模擬器,設備:

    adb devices

2、切換adb shell終端為root用戶:

    adb root

3、鏈接adb tcp介面或者usb串口:

    adb connect  192.168.10.252:5555  (tcp 5555埠)

    adb connect 93048d8f

4、啟動shell

    adb -s  192.168.10.252:5555 shell 

    如果adb devices 下只有一個設備則只櫻型需要:

    adb shell 即可

5、安裝apk文件

    adb -s  192.168.10.252:5555 install [-r] [-s] [-t]<file>

    -r  強制安裝

    -s 標示將APK包安裝到SD卡上 默認是將APK安裝到內部存儲器上

    -t  如果 團返  報錯 Failure [INSTALL_FAILED_TEST_ONLY: installPackageLI] 可以使用該參數

6、卸載apk

    adb uninstall [-k] <package>

     -k 標示只刪除該應用程序,但保留該程序素有的數據和緩存目錄。

7、重新掛載文件系統,用來可以讀寫system等目錄

    adb -s 192.168.10.252:5555 remount

or

    mount -o remount rw/dev/block/mtdblock0/system /

8、復制文件到手機

    adb push a.txt /sdcard/

9、拷貝文件到電腦

    adb pull /sdcard/xyz.txt d:/

10、重啟設備

     adb -s 192.168.10.252:5555 reboot

11、重啟設備到bootloader模式

     adb -s 192.168.10.252:5555 reboot bootloader

12、啟動指定的app的頁面  

    adb -s 192.168.10.252:5555 shell am start -n com.android.settings/.Settings

    com.android.settings 應用程序的包名

    .Settings 類名(Activity)

13、模擬點擊坐標 

    adb -s 10.0.0.245:5555 shell input tap 250 500    

    x:250 px   Y:500 px

14、滑動觸摸事件

    adb -s 10.0.0.245:5555 shell input swipe 200 500 400 500

    #向右滑塌頌飢動200像素

15、修改屏幕尺寸

    adb -s 10.0.0.245:5555 wm size 1080x1920 

     #修改屏幕尺寸為1080x1920

    adb -s 10.0.0.245:5555 wm size 

     #查看屏幕默認尺寸

Ⅳ ADB常用命令大全

安卓調試橋(Android Debug Bridge),是Android SDK中的一個調試工具, 使用adb可以直接操作管理Android模擬器或Andriod真機設備,在開發測試過程中,起到調試的作用。

adb.exe的存放路徑:Android-SDKplatform-tools

adb help //查看幫助

adb version //查看adb版本號

adb devices //查看設備

adb connect IP:port //連接設備

adb disconnect //斷開連接的所有設備

adb disconnect IP:port //斷開連接指定設備

adb root //獲取root許可權

adb remount //重新掛載文件系統(默認只讀,執行命令後可寫)

adb install Package //安裝APK

adb install -r Package //強制覆蓋安裝

adb install -t Package //允許降級覆蓋安裝

adb install -d Package //允許測試包

adb uninstall PackageName //卸載APK

adb uninstall -k (keep) PackageName //保留用戶數據卸載

adb pull //將設備文件文件發送到PC

adb push //將PC文件發送到設備

adb logcat -c //清空日誌

adb logcat -v threadtime >D:111.log //抓日誌並輸出保存D:111.log

adb shell screencap /sdcard/screen.png //屏幕截圖(並存放sdcard目錄,命名screen.png)

adb shell screenrecord /sdcard/demo.mp4 //錄制屏幕(Android4.4以上可用)

adb shell mpsys activity activities //查看activity信息

adb shell mpsys activity |findstr mResumedActivity //獲取當前activity信息

adb shell mpsys window windows | findstr 「Current」 //查看當前app窗口activity

adb shell //進入設備內部

cd //切換目錄

pwd //查看當前路徑

ping //查看網路連接

rm* //刪除目錄下的所有文件

cp -r /path/filename /NewPath //拷貝文件

busybox find / -name FileName //查找文件

tcpmp -i any -p -s 0 -w /data/data/1111.pcap //抓取網路包

pm uninstall PackageName //卸載APK

pm path PackageName //查看APK存放位置

pm clear PackageName //清除APK緩存

mpsys package om.android.xxx //查看APK的具體信息

mpsys package om.android.xxx | grep version //查看APK版本

mpsys package com.tencent.mm | findstr versionName //查看APK版本

am start PackageName //拉起APK

am start -n com.android.xxx/.WelcomeActivity //直接拉起APK的指定WelcomeActivity

am start -a android.intent.action.VIEW -d http://www..com //拉起網路

am start -n om.android.xxx/.WelcomeActivity --es actionUrl "http://sns.is.xxxxx.com/CCTV/index.html?action=detail&object=5005153" //指定Activity上拉起H5

am force-stop + 報名 //殺死進程

kill `ps |grep -E "icntv|istv" | busybox awk '{print $2}'` //殺進程

md5 com.android.xxx //查看已安裝應用MD5

busybox vi hispreinstall.sh //編輯文件(命令行)

chmod 777 /system/bin/hispreinstall.sh //修改許可權

cat /system/build.prop | grep "proct" //查看設備信息

exit //退出shell交互模式

adb shell getprop ro.build.version.release //查看Android系統版本

adb get-serialno //獲取手機序列號

adb shell mpsys package //列出所有安裝應用的信息

adb shell pm list packages //查看設備中的所有應用的包名

adb shell cat/proc/cpuinfo //獲取CPU型號等信息(HardWare後面是CPU型號)

adb shell "ps | grep packageName" //查指定程序pid

adb shell getprop //查看手機信息

adb shell getprop ro.serialno //查看手機序列號

adb shell cat /proc/cpuinfo //查看手機CPU信息

adb shell cat /proc/meminfo //查看手機內存信息

adb reboot recovery //重啟手機到recovery刷機模式

adb reboot bootloader //重啟手機到bootloader界面

adb shell mpsys battery //獲取電池信息

adb shell mpsys battery set status 1 //設置手機進入非充電狀態,為2設置充電狀態

adb shell mpsys battery set level 100 //設置電量百分比

adb shell mpsys batterystats //獲取整個設備的電量消耗信息

adb shell mpsys batterystats | more //綜合電量消耗

adb shell mpsys batterystats com.android.xxx //獲取某個apk的電量消耗信息

adb shell mpsys batterystats packageName | more //獲取指定程序電量消耗信息

adb shell cat /proc/uid_stat/$PID/tcp_snd //發送的數據流量

adb shell cat /proc/uid_stat/$PID/tcp_rcv //接收的數據流量

procrank //查看內存

adb shell top | findstr com.android.xxx //查看指定APK內存

top -n 3 |grep -E "com.android.xxx|android.yyy" //查看內存

adb shell mpsys cpuinfo |findstr com.android.xxx //查看指定APK CPU

mpsys cpuinfo |grep -E "com.android.xxx|android.yyy" //查看CPU

adb shell settings put global http_proxy ip(PC):port(默認8888) //設置代理

adb shell settings get global http_proxy //查看代理

adb shell sqlite3 /data/data/com.android.providers.settings/databases/settings.db //進入sqlite

delete from global where name in('global_http_proxy_host','global_http_proxy_port','http_proxy'); //移除代理

adb shell stop //關閉設備

adb shell start //開啟設備

adb start-server //啟動adb服務

adb kill-server //關閉adb服務

adb reboot //重啟手機

adb shutdown //關閉手機

1、首次使用USB線連接Android手機,然後打開Terminal輸入:adb tcpip 埠號(默認5555)

2、查看手機IP地址:設置->關於手機->狀態信息->IP地址

3、通過adb連接ip地址:adb connect IP:port

Ⅵ adb 常用命令

1、adb shell am force-stop  後跟包名,結束應用

2、adb install +包名       adb安裝apk (覆蓋安裝是使用 -r 選項)

3、adb uninstall +包名      adb卸載apk

      adb uninstall -k cnblogs.apk   卸載app但保留數據和緩存文件

4、adb reboot       重啟Android設備

5、adb devices      獲取連接的設備列表及設備狀態

6、adb push (PC到Android設備)

      例:adb push E:\0713\ellip_factroy__debug.apk storage/self/primary

7、adb pull(Android設備到PC)

      例:adb pull /storage/self/primary/EL_v3.0.0.6_release.apk E:\0713

8、adb shell pm list package      列出所有的應用的包名 (-s:列出系統應用  -3:列出第三方應用 -f:列出應用包名及對應的apk名及存放位置  -i:列出應用包名及其安裝來源)

9、input : 向 Android 設備發送按鍵

      1)adb shell input keyevent + 按鍵事件   發送按鍵事件 例如:adb shell input keyevent KEYCODE_HOME 模擬按下Home鍵

      2)3 adb shell input tap +觸摸事件的位置 , 對屏幕發送一個觸摸事件 例如:點擊屏幕上坐標為 500 500 的位置(adb shell input tap 500 500)

     3)adb shell input swipe   滑動事件  例如:從右往左滑動屏幕 (adb shell input swipe 800 600 100 600)

10、screencap 截圖命令  adb shell screencap -p /sdcard/qq/1.png

11、screenrecord 錄屏命令 adb shell screenrecord /sdcard/qq/1.mp4,執行命令後操作手機,ctrl + c 結束錄制

12、clear 清除應用數據   adb shell pm clear com.

13、復制、刪除 、查看文件、新建文件夾

        adb shell進入Android Linux命令中,

        復制cp: cp -f /sdcard/qq/1.png /sdcard/aa

        刪除文件rm:rm  /sdcard/qq/1.png

        刪除文件夾rm -r:rm  -r /sdcard/qq

        查看文件cat:cat /sdcard/qq/1.txt

        新建文件夾:mkdir /sdcard/cc

                              adb shell mkdir -m 777 /sdcard/cc   創建文件夾cc並給文件夾賦予讀寫執行的許可權

                              adb shell mkdir -p/sdcard/Download/Demo/test1,如果Demo目錄不存在,執行該條命令會創建Demo目錄和其子目錄test1

         新建文件:touch /sdcard/cc/1.txt   

          移動文件:adb shell mv /sdcard/Download/test1.log  /sdcard/Download/Demo/

           重命名:adb shell mv /sdcard/Download/Demo/test1.log  /sdcard/Download/Demo/test.lg

14、adb logcat > D:\log.txt 將日誌列印到電腦上

15、獲取手機內部存儲信息: adb shell df /data

        獲取sdcard存儲信息:adb shell df /storage/sdcard

Ⅶ Android手機軟重啟adb命令是什麼

運行設備的shell(命令行)。

管理模擬器或設備的埠映射。

計算機和設備之間上傳/下載文件。

將本地apk軟體安裝至模擬器或android設備。

ADB一個 客戶端-伺服器端 程序, 其中客戶端是用來操作的電腦,伺服器端是android設備。

(7)androidadb命令大全擴展閱讀

1、 查看設備 *adbdevices。這個命令是查看當前連接的設備, 連接到計算機的android設備或者模擬器將會列出顯示。

2、 安裝軟體:adbinstall <apk文件路徑>。

這個命令將指定的apk文件安裝到設備上。

3、 卸載軟體

adbuninstall <軟體名>。

adbuninstall -k <軟體名>。

如果加 -k 參數,為卸載軟體但是保留配置和緩存文件。

Ⅷ ADB常用命令

Android 調試橋 (adb)  ,可與設備進行通信。adb 命令可用於執行各種設備操作(例如安裝和調試應用),並提供對 Unix shell(可用來在設備上運行各種命令)的訪問許可權。它是一種客戶端-伺服器程序,包括以下三個組件:

客戶端: 用於發送命令。客戶端在開發機器上運行。可以通過發出 adb 命令從命令行終端調用客戶端。(可以通過它對Android應用進行安裝、卸載、調試)

PC上的手機助手基本都是通過adb命令去完成的。有時候裝了這類手機助手的話,它自帶的adb程序可能會與Android SDK下的adb程序產生沖突,5037埠被佔用,導致adb命令無法連接到設備。Windows下通過netstat -ano|findstr "5037"

守護程序 (adbd): 用於在設備上運行命令。守護程序在每個設備上作為後台進程運行

執行adb shell ps | grep adbd, 可以找到該後台進程,Windows使用findstr替代grep.

adb nodaemon server

伺服器(Service): 用於管理客戶端與守護程序之間的通信。伺服器在開發機器上作為後台進程運行

adb服務啟動後,Windows可以在任務管理中找到adb.exe; linux ps -ef | gref adb 可以查看service

一般都是通過這樣子的格式 adb [-d|-e|-s <設備序列號>] <子命令>

通常只有一台設備就忽略 [-d|-e|-s ] 這一部分

這里介紹一些常用的命令:

獲取設備列表及設備狀態

獲取設備的狀態

注意:設備的狀態有 3 鍾,device , offline , unknown

device:設備正常連接

offline:連接出現異常,設備無響應

unknown:沒有連接設備

 結束 adb 服務

 啟動 adb 服務

注意:通常兩個命令一起用,有時候我們開啟server會失敗,這是因為我們裝了的手機助手,豌豆莢或者其他軟體自帶有自己的adb,導致埠沖突開啟失敗。一般在連接出現異常,使用 adb devices 未正常列出設備, 設備狀態異常時使用 kill-server,然後運行 start-server 進行重啟服務。

列印 Android 的系統日誌

 列印 mpsys、mpstate、logcat 的輸出,也是用於分析錯誤輸出比較多

列印日誌後重定向到一個文件中

 安裝應用,覆蓋安裝是使用 -r 選項

注意:有些adb版本無法支持安裝中文的apk

查看手機應用包名

查看應用對應的apk文件在手機上的安裝位置則可以在上面的命令後加-f參數

卸載應用,後面跟的參數是應用的包名,請區別於 apk 文件名

'-k' means keep the data and cache directories , -k 選項,卸載時保存數據和緩存目錄

 將 Android 設備上的文件或者文件夾復制到本地

adb pull /sdcard/test.txt C:\Users\Administrator\Desktop\log

推送本地文件至 Android 設備

獲取連接到的手機的序列號

獲取設備的連接狀態

等待設備連接成功

該命令將會阻塞一直到默認連接的那部機器狀態變為device,也就是連接成功。

其實adb shell命令就是調用的是Android設備中的system/bin目錄下的命令。

Android的內核本身就是Linux,所以Android本身也支持Linux命令,但是因為是手機系統,所以進行了一定的刪減,部分命令不支持,而不支持的部分,我們可以通過安裝busybox這個軟體進行。

如何在手機中執行Shell命令?

  每次都加上adb shell來進行命令的發送與執行

 先通過adb shell進入手機Shell執行狀態,然後直接輸入Linux命令。

使一個apk處於禁用狀態,相當於卸載了:

其中 PACKAGE_OR_COMPONENT的格式是 package/class, 如 com.UCMobile/.main.UCMobile

eg:adb shell su disable com.UCMobile/.main.UCMobile

同時我們在手機上發現,UC瀏覽器的圖標不見了

讓一個apk從禁用狀態恢復過來

其中 PACKAGE_OR_COMPONENT的格式是 package/class, 如 com.UCMobile/.main.UCMobileeg:

adb shell su enable com.UCMobile/.main.UCMobile

同時我們從手機上發現,UC瀏覽器的圖標又出現了。

查看一個apk所在的路徑

adb shell pm path com.UCMobile

查看手機中裝的所有的包

屏幕開始錄像並且儲存到/sdcard中,同時名字為demo.mp4

錄屏設置時長10s,命名為demo.mp4

注意:現在僅支持一部分手機錄屏,不支持的手機會出現以下提示

解決方法:

安裝了scrcpy之後,只需要輸入如下命令,即可錄取指定設備的屏幕

scrcpy -s device --render-expired-frames -Nr ./demo.pm4

--render-expired-frames:盡可能最大幀率

-N:不在PC端展示

-r:錄制mp4/mkv文件

關閉設備請求,開啟設備

設備關機以及重啟

pm(package manager)可以獲取一些安裝到Android設備上的app的信息

pm list packages 用法:list packages [ options] filter

獲取所有的應用的包名

列出系統應用

列出第三方應用

查看它們的關聯文件

adb shell pm list package -f

查看軟體包的安裝來源

pm mp 包名 很多mp信息

安裝應用

apk如果在電腦用 adb install 

如果在Android設備上用 adb shell pm install

卸載應用,同adb uninstall ,後跟包名

清除應用數據

am(activity manager,字面意思就跟activity有關,大家都知道Android的界面都是由一個個activity顯示的)

啟動一個Activity

獲取到package和launch_activity

AndroidSDK中aapt工具,檢索命令結果,可以獲取到package和launch_activity

這里涉及到一個點,如何找到程序的入口,首先你要知道是哪個activity才能啟動;

啟動華為系統相機

打開音樂播放器

播放指定音樂:

先停止目標應用,再啟動

等待應用完成啟動

啟動網頁(android.intent.action.VIEW具體參考Android官網)

結束應用

input

模擬輸入,向獲得焦點的EditText控制項輸入內容

返回主界面

發送一個點擊操作的指令,參數是<x> <y>坐標

從左往右滑動屏幕, /從 100 100 經歷300毫秒滑動到 200 200

長按操作,在 100 100 位置長按 1000毫秒

Ⅸ 超實用的adb與adb shell常用命令匯總

adb(Android Debug Bridge),SDK自帶的工具,可實現橋接功能,實現PC和android設備的交互

adb shell:基於Android linux系統操作,放在安卓設備的system/bin目錄下,手機端的命令

一:adb常用命令

1. PC連接android設備

(PC與android設備連接同一個wifi,或處於同一個區域網)

連接:adb connect ip:5555

斷開連接:adb disconnect ip

查看連接設備的信息:adb devices

獲取設備的狀態:adb get-state

2. 重啟adb server

打開adb服務:adb start-service

關閉adb服務:adb kill-service

3. 安裝卸載軟體

安裝:adb install apkpath(某個apk)

adb install -r :強制安裝

卸載: adb uninstall package(可用adb shell pm list packages查看包名)

4. 列印日誌

列印android系統日誌:adb logcat

將日誌列印並保存指定文件夾:adb logcat > /Users/apple/Desktop/log.txt

終止進程:control+C

列印mpsys,mpstate,logcat的輸出,用於分析錯誤:adb bugreport

5. PC與android設備上文件復制

android設備上文件復制到PC上:adb pull

PC上文件推至android設備:adb push 

6.重新掛載system分區為可寫,需要root許可權./system分區默認掛載為只讀,但有些操作比如給android系統添加命令,刪除自帶應用等需對系統進行寫操作,得重新掛載為可寫

adb shell

su

或:adb root

adb remount 重新掛載文件系統,獲得可寫的許可權(默認情況是只有可讀許可權的),使用adb remount 的前提是要有root許可權

7. 刪除系統應用

adb root

adb remount

adb shell

cd system/app

rm *apk

二:adb shell命令

adb shell 進入系統子目錄,exit 退出

1. pm命令

列出系統應用的所有包名:adb shell pm list packages 可用grep來過濾:adb shell pm list packages | grep 關鍵字

清除應用數據與緩存:adb shell pm clear <packagename>

2. am命令

啟動應用:adb shell am start -n com.xxx.xxxxxxx|xxx.Activity(可通過adb shell mpsys activity activities | grep mFocusedActivity查看

強制停止應用:adb shell am force-stop <packagename>

3. input命令

模擬點擊事件,點擊坐標點(x,y):adb shell input tap x y

模擬滑動事件,從(x1,y1)到(x2,y2):adb shell input swipe x1 y1 x2 y2

發送文本內容:adb shell input text

模擬按下home:adb shell input keyevent KRYCODE_HOME

4. screencap命令

截屏:adb shell screencap

5. 查看網路狀態命令

查看當前網路狀態:adb shell netstat

通過配置文件配置和管理網路連接:adb shell netcfg

查看網路信息:ifconfig

測試網路聯網狀態:ping

5.其它相關命令

查看當前終端中進程:adb shell ps

獲取cpu信息:adb shell cat /proc/cpuinfo

查看內存信息:adb shell cat /proc/meminfo

查看屏幕解析度:adb shell wm size

查看設備ip地址:adb shell ifconfig | grep Mask

查看實時資源佔用情況:adb shell top

Ⅹ 常用的adb命令

在平時的工作中,會經常用到adb命令,在這里稍微整理了一下。

一.概要

1.什麼是adb?

adb全稱為Android Debug Bridge,就是起到調試橋的作用。顧名思義,adb就是一個debug工具。

2.adb工作原理

不是很理解?那就來看看它的工作原理吧。

上圖是一個簡單的adb工作原理圖。adb客戶端伺服器端程序,由上圖可以看出它主要三個組件組成:Client,Server,Daemon。

(1)當你啟動一個adb Client(客戶端),Client首先會選確認是否已有一個adb

Server(伺服器)進程在運行,如果沒有,則會啟動Server進程。此時,adb Server就會綁定本地的TCP埠5037,並監聽adb

Client發來的命令。

(2)接著,Server將會掃描所有5555到5585范圍內的奇數埠來定位所有的模擬器或設備,並與之建立連接。一旦Server找到

了adb

daemon(守護程序),它將建立一個到該埠的連接,這樣,我們就可以使用adb命令控制和訪問模擬器或設備了。在這里,需注意的是任何模擬器或設備實例會取得兩個連續的埠:一個偶數埠用來相應控制台的連接,和一個奇數埠用來響應adb連接。

3.adb的作用

藉助adb工具,我們可以管理設備或手機模擬器的狀態,還可以進行很多手機操作,如安裝軟體、系統升級、運行shell命令等等。簡而言之,adb就是連接Android手機和PC端的橋梁,可以讓用戶在電腦上對手機進行全面的操作。

二.常用命令

這個部分主要介紹adb的使用方法和一些常用的命令。

設置adb環境:將android sdk工作目錄添加到系統環境變數中,則可使用adb命令了。

1. adb devices

查看當前連接的設備(連接計算機的Android設備或者模擬器)。

2.adb install

adb install <apk文件路徑>,將指定的apk安裝到設備上,安裝的apk包會放在/data/app目錄下。

幾個參數:

-r 強制安裝

-d(真機,多個設備中只有一個真機時適用)

-e(模擬器,多個設備中只有一個模擬器時適用)

-s(指定設備,後接序列號)

adb –s 44a188f9 install –r test.apk(其中44a188f9即序列號,通過adb devices可獲取)

3.adb uninstall

adb uninstall <apk包名>

adb uninstall –k <apk包名>

-k參數為卸載軟體時保留配置和緩存文件

4.adb reboot

重啟android設備

5.adb shell

通過adb shell 命令,就可以進入設備或者模擬器的shell環境了,在這個Linux shell中,我們就可以執行各種Linux命令了。

如果只想執行一條shell命令,就可以採用:adb shell [shell_command]

在實際使用中,經常與grep或findstr一起使用,起到過濾作用,查看自己需要的關鍵信息。

6.adb shell su

前提手機已經root。獲取adb shell的root許可權。

使用su提權,用戶命令提示符有$變成#,如果手機沒有root,會提示su:permission denied。

7.adb shell ps/top

查看當前終端中的進程信息,如pid等。

8.adb shell am/pm

am全稱為activity manager,可使用am命令模擬各種系統的行為,如去啟動一個activity,強制停止進程,發送廣播進程,修改設備屏幕屬性等。

如:adb shell am start <apk包名>/<activityName>:啟動一個activity。

pm全稱為package manager,利用pm命令可模擬android行為或查詢設備上的應用等。

如:adb shell pm list packages

列出當前設備所有已安裝的程序的包名。

說明:

管道符「|」:可以把標準的輸入流與標準的輸出流進行合並,或者把某個命令的標准輸出流作為另一個命令的標准輸入流。

exit退出shell。

由於grep為linux命令,運行單條adb shell 時並沒有進入linux

shell環境,並不能用grep等其他linux命令,只能用window cmd的命令。在這里可以用findstr來代替grep,使用方法為

findstr/grep [keyword]

更詳細的內容可查看 參考文獻3 和 參考文獻4 。

對於常用的linux命令和常用的windows 控制台命令,以後再作總結。

9.adb pull 和 adb push

adb pull <設備中的文件路徑> <本地路徑>:從模擬器或設備中復制文件到本地。

adb push <本地文件路徑> <設備中的路徑>:將本地文件或目錄復制到模擬器或設備。

這里還涉及到一個許可權的問題,在後續的博文中再作介紹。

10.adb shell mpsys

Android提供的mpsys工具用於查看感興趣的系統服務信息與狀態。

參考下表:

11.adb shell monkey

跑monkey是android自動化測試的一種手段,所謂monkey測試就是模擬用戶的按鍵輸入,觸摸屏輸入,手勢輸入等。當Monkey程序在模擬器或設備運行的時候,如果用戶比如點擊,觸摸,手勢或一些系統級別的事件的時候,它就會產生隨機脈沖,所以可以用Monkey的隨機重復的方法對apk作壓力測試,來測試android

app的穩定性。

如下為測試騰訊新聞apk的一個簡單實例:

說明:第一個-s指定設備,如果只連接了一台設備,可不用該參數。

-p <apk包名>只允許系統啟動指定的app,如果不指定,將允許系統啟動設備中的所有app,也可指定多個包。

--throttle <毫秒數> 指定用戶操作(事件)間的時延。

--ignore-crashes 指定當應用程序崩潰時,Monkey依然發送事件,直到事件計數完成。

--ignore-timeouts 當應用程序發生ANR錯誤時,Monkey依然會發送事件,直到事件計數完成。

第2個-s,用於指定偽隨機數生成器的seed值,如果seed相同,則兩次Monkey測試所產生的事件序列也相同的。

-v 用於指定反饋信息級別,總共分為level 0、level 1、level 2三個級別,級別越高,輸出的日誌越詳細。

最後的數字(這里是500):表示Monkey程序模擬500次隨機用戶操作事件。

>輸出測試結果到D:\monkeylog.txt

更詳細的參數可查看 參考文獻5 。

部分測試結果如下:

對於測試結果的分析,通過搜索關鍵詞來定位錯誤,主要包括以下四個方面:

1)ANR(Application Not

Response):程序無響應,一般主線程超過5秒沒處理就會出現ANR錯誤。通過搜索ANR關鍵詞來定位關鍵的事件信息。除了導出日誌外,還可以將/data/anr/目錄下的trace.txt文件導出,用來定位分析問題。使用>adb

pull /data/anr/trace.txt d:\ 將trace.txt文件導出到d盤。

2)ForceClosed或其他異常退出信息:通過搜索Fatal關鍵詞來定位。

3)崩潰問題:通過搜索Exception關鍵詞來定位。

4)發生異常後,通過搜索Crash關鍵詞來定位到詳細的堆棧信息。

 12.kill

kill用來中止一個進程。

比如我們在跑monkey的時候,怎麼強制關閉monkey呢,可以用kill <monkey進程PID>

說明:另開啟一個cmd,找到monkey的pid號,然後殺掉即可。

參考文獻:

1.Android調試橋: http://www.iteye.com/topic/260042

2.Android性能分析工具mpsys的使用: http://www.open-open.com/lib/view/open1405061994872.html

3.adb shell 中的am pm命令: http://www.android100.org/html/201312/09/4957.html

4.adb shell 啟動應用程序的方法: http://blog.chinaunix.net/uid-26997997-id-3350449.html

5.Monkey壓力測試詳解: http://blog.csdn.net/huangbiao86/article/details/8490743

閱讀全文

與androidadb命令大全相關的資料

熱點內容
excel表格單列數據加密 瀏覽:646
給同事的解壓話語 瀏覽:990
linux關閉網卡命令行 瀏覽:452
史上最漂亮程序員 瀏覽:768
java實現excel的導入 瀏覽:758
光遇賬號如何轉移安卓 瀏覽:266
5分之13除以26的演算法 瀏覽:342
蘭州安寧區買解壓包子 瀏覽:641
php接收圖片代碼 瀏覽:668
hci命令 瀏覽:662
福建伺服器大區雲空間 瀏覽:840
筆桿子程序員 瀏覽:745
手機軟體易驗證加密 瀏覽:589
文檔加密只讀模式也不能看到 瀏覽:431
把jpg轉換成pdf的軟體 瀏覽:874
linuxeth0mac 瀏覽:192
windows編程知乎 瀏覽:442
壓縮工期超過40 瀏覽:249
Android怎麼優化內存 瀏覽:106
linuxetcsysconfig 瀏覽:396