① 常用的安卓手機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
#查看屏幕默認尺寸
③ android手機 使用詳細記錄查詢 命令
1、使用詳細記錄查詢命令,可以打開自己手機的撥號程序。
④ 安卓命令有哪些
安卓Android命令:
主要介紹幾個特有的。
getprop 返回Android的所有系統屬性。
getevent 列印所有的鍵盤和觸摸事件
logcat 輸出日誌
printenv 系統環境變數
am 運行start/broadcast/instrument(instrument可以運行自動化測試代碼,其它的還沒有試過),從 android的命令行開始。
首先是獲取root許可權
手機必須先root ,沒有root的話可以下載刷機精靈root (某些刷機精靈沒辦法root的手機,問網路吧)
adb shell//進入手機的超級終端
su//以管理員身份運行
查看sdcard文件
cd XXX //進入文件夾
cd.. //返回上一層
ls //列表顯示當前文件夾內容
卸載軟體
一般軟體卸載
adb uninstall 包名
系統軟體卸載
adb shell
su
cd system/app
rm package
exit
exit
adb uninstall 包名
安裝軟體
一般安裝方式
安裝軟體 adb install apk文件名稱.apk
重新安裝軟體 adb install -r apk文件名稱.apk
非正常安裝方式
$ adb push D:\myfile.apk /sdcard/ // 上傳要安裝的文件,為安裝做准備。
$ adb shell
$ su // 切換到 root 用戶。如果沒有獲得 Root 許可權,這一步不會成功。
# mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system // 讓分區可寫
# cat /sdcard/ContactsHub.apk > /system/app/ContactsHub.apk
如果還不行,重啟手機
其他命令
adb help //可以查看所有命令
adb remount //重新掛載文件系統
adb reboot //重啟手機
adb reboot recovery //重啟手機到recovery界面
#rm -r xxx //刪除名字為xxx的文件夾及其裡面的所有文件
#rm xxx //刪除文件xxx
#rmdir xxx //刪除xxx的文件夾
adb logcat //查看手機上的運行日誌,可以用來查錯
adb devices //查看手機是否連接,以及連接了幾台手機
adb pull s d //把文件從手機復制到電腦上(s為源文件,d為目標文件)
adb push s d //把文件從電腦復制到手機上(s為源文件,d為目標文件)
http://news.huahuo.com/201510/3080.html