1. 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
2. Android 常用adb命令
常用adb 命令
配置mat 環境,因為從 android profile直接獲取到的hprof文件格式與mat的格式不兼容,所以需要使用工具轉換一下
第 1 行:進程信息
總共(total):754個
運行中(running)狀態:1個
休眠(sleeping)狀態:753個
停止(stopped)狀態:0個
僵屍(zombie)狀態:0個
第 2 行:內存信息
5.5G total:物理內存總量
5.4G used:使用中的內存量
165M free:空閑內存量
76M buffers: 緩存的內存量
第 3 行:Swap分區信息
2.5G total:交換區總量
789M used:使用的交換區大小
1.7G free:空閑交換區大小
2.4G cached:緩沖的交換區大小
內存監控時,可以監控swap交換分區的used,如果這個數值在不斷的變化,說明內核在不斷進行內存和swap的數據交換,這是內存不夠用了。
第 4 行:CPU信息
800%cpu:8核cpu
100%user:用戶進程使用CPU佔比
3%nice:優先值為負的進程佔比
54%sys:內核進程使用CPU佔比
641%idle:除IO等待時間以外的其它等待時間佔比
0%iow:IO等待時間佔比
3%irq:硬中斷時間佔比
0%sirq:軟中斷時間佔比
第 5 行及以下:各進程的狀態監控
PID:進程id
USER:進程所屬用戶
PR:進程優先順序
NI:nice值,負值表示高優先順序,正值表示低優先順序
VIRT:進程使用的虛擬內存總量,VIRT=SWAP+RES
RES:進程使用的、未被換出的物理內存大小,RES=CODE+DATA
SHR:共享內存大小
S:進程狀態
%CPU:上次更新到現在的CPU佔用時間比
%MEM:使用物理內存佔比
TIME+:進程時間的CPU時間總計,單位1/100秒
ARGS:進程名
3. 超實用的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
4. 常用ADB命令
安裝APK文件。
adb install –r C:UsersdxlDesktopfenxiao.apk
多個設備的話:
-s <serialNumber>
如
adb -s cf264b8f
拷貝 file/dir (官方如絕絕是說)到設備
adb push -p C:UsersdxlDesktopfenxiao.apk /sdcard
從設備拷貝 file/dir (官方如是說) 到 local 指定的目錄。
adb pull -p /sdcard/com.liankai.fenxiao/databases C:UsersdxlDesktop1
卸載APK。
adb uninstall com.liankai.fenxiao
刪除文件或文件夾並閉姿
adb shell rm -r /sdcard/com.liankai.fenxiao
adb shell rm -r /sdcard/1.png
adb shell screencap -p /sdcard/1.png
adb pull /sdcard/1.png D:fx
截態物圖
獲取已安裝應用
未完,待更新
5. 常用adb命令總結
前言
很早就想整理一下自己平時常用的一些adb命令,不僅為了便於以後查找,而且整理的過程自己又重新復習了一遍,但是當我開始在度娘一搜的時候,發現很多人已經寫的非常詳細了,尤其是當我發現了 這篇adb概括
心中一句NND,怎麼可以寫的這么詳細,瞬間沒了想寫這篇文章的慾望,如果你點了鏈接發現確實很全,那麼恭喜你可以關掉這篇了,哈哈哈。
我就不這么想的,雖然很全,但不是我常用的,因人而異,所以我就權當記筆記+替這哥們宣傳了。
設備的狀態有 3 種
常見的錯誤情況
-查看前台 Activity
最常用的就是啟動指定的activity和發送指定的廣播
操作指令 adb shell am start -n 包名/類名
啟動默認瀏覽器打開一個網頁
adb shell am start -a android.intent.action.VIEW -d http://testerhome.com
先停止目標應用,再啟動
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 settings put global policy_control <key-values>
<key-values> 可由如下幾種鍵及其對應的值組成,格式為 key1=value1:key2=value2。
key 含義
這些鍵對應的值可則如下值用逗號組合:
value 含義
例如:
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 的所有應用里隱藏導航欄。
參考鏈接
Android 常用 adb 命令總結
ADB命令大全
6. adb命令恢復出廠是什麼求命令
沒有能直接恢復出廠設置的adb命令,但是可以通過這句:
adbrebootrecovery
將手機重啟到recovery模式,然後在這個模式下進行三清,同樣也可以恢復出廠設置。
7. adb調試常用命令
1,adb服務
2,設備
3,重啟
4,查看進程
5,查看系統當前內存使用情況
adb shell cat /proc/meminfo
6,Activity調試
(推薦一個Android Studio插件ADB idea)
1,安裝apk
1,將電腦文件復制到設備sd卡上
adb push 電腦文件路徑 /sdcard
2,設備文件復制到電腦上
adb pull /sdcard/text.txt 電腦文件路徑
3,刪除
adb shell rm /sdcard/text.txt
-f 強制刪缺孫除文件不需要確認
-r 遞歸刪除文件夾內文件
-i 刪虛禪除文件前需要確認
4,創建目錄
adb shell mkdir -p /sdcard/temp/test/
指定-p遞歸創建目錄
5,創建文件
adb shell touch /sdcard/text.txt
6,復制文件
adb shell cp /sdcard/text.txt /sdcard/test/
7,移動文件
移動同一目錄下的文件相當於重命名文件
adb shell mv /sdcard/1.txt /sdcard/2.txt
1,申請root許可權
adb shell su
2,查看手機上所有的包名
adb shell cd data/data ls
3, Linux 多個命令行一起執行可以用 「;」 或者 「&&」 進行分割
cd data/data ; ls
4,adb shell查看文件後退出
exit 或者 Ctrl + D
5,adb shell命令下全盤查找特定名稱文件的方法
busybox find -name 「filename」
1,修改文件所有者命令
處理指定目錄以及其子目錄下的所有文件。
chown -R
如果加了-R。說明當前文件夾和子文件夾;
如果不加-R。說明僅僅針對當前文件夾;
chown [所有者][:[組]] 文件差扮塵
舉例:chown mail:mail log2012.log
官方連接: https://developer.android.google.cn/studio/command-line/adb?hl=zh-cn
原文連接: https://blog.csdn.net/weixin_35107169/article/details/112139876