負責桌牌項目后,由于設備本身的特殊性,必須借由 ADB(Android Debug Bridge) 命令來觀察設備的運行情況,因此這里記錄下常用的 ADB 命令,方便自己查看。
獲取當前已連接的設備列表
adb devices
安裝卸載 apk
adb devices
獲取當前已連接的設備列表
adb install YOUR_APK.apk
adb install -r YOUR_APK.apk //區(qū)別在于-r 表示替換此應用,即當前已存在該應用
adb uninstall packageName
查看某應用信息
adb shell dumpsys package packageName
從電腦復制文件到設備
adb push 電腦上文件路徑 設備里的目錄
從設備復制文件到電腦
adb push 電腦上文件路徑 設備里的目錄
停止與啟動adb server
當 adb 連接異常時候可以通過一下命令重啟 adb
adb start-server
adb kill-server
列出設備中所有應用
adb shell pm list packages
adb shell pm list packages -s // 加上-s 表示系統(tǒng)應用
adb shell pm list packages -3 // 加上-3 表示第三方應用
adb shell pm list packages mocha //列出包含某字符串的應用,很實用的一個命令
查看設備信息
adb shell ps //查看進程
adb shell cat /proc/cpuinfo //查看cpu 信息
adb shell dumpsys meminfo //查看內存信息
adb shell wm size //查看屏幕分辨率
adb shell wm density //查看屏幕密度
應用信息查看
//查看Android 系統(tǒng)版本
adb shell getprop ro.build.version.release
//查看前臺Activity
adb shell dumpsys activity activities | grep mFocusedActivity
//查看正在運行的Service,可以在后面加上報名參數(shù)過濾
adb shell dumpsys activity services [packageName]
啟動/調起Activity
//命令格式:
adb shell am start [options] <INTENT>
eg1:
adb shell am start -n com.ijays.kotlinstudy/com.ijays.kotlinstudy.MainActivity
eg2:
// 打開系統(tǒng)設置
adb shell am start -n com.android.settings/com.android.settings.Settings
統(tǒng)計App啟動時間
// 命令格式
adb shell am start -W [packageName]/[packageName.MainActivity]
eg:
adb shell am start -W com.ijays.kotlinstudy/com.ijays.kotlinstudy.MainActivity
Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.ijays.kotlinstudy/.MainActivity }
Status: ok
Activity: com.ijays.kotlinstudy/.MainActivity
ThisTime: 1091
TotalTime: 12780527
WaitTime: 1120
Complete
// 其中 TotalTime 表示應用的啟動時間,包括創(chuàng)建進程 + Application 初始化 + Activity 初始化到界面顯示。
發(fā)送廣播
//命令格式
adb shell am broadcast [options] <INTENT>
eg:adb shell am broadcast -a android.intent.action.BOOT_COMPLETED
啟動/調起Service
//命令格式
adb shell am startservice [options] <INTENT>
eg:adb shell am startservice -n com.android.systemui/.SystemUIService
強制停止應用
//命令格式
adb shell am force-stop <packagename>
eg://停止360安全衛(wèi)士的一切進程與服務
adb shell am force-stop com.qihoo360.mobilesafe
模擬按鍵輸入
// 當接入的設備有時候不支持按鍵的時候,使用 adb 去模擬按鍵輸入是一個相當有效的方式
// 命令格式:
adb shell input keyevent <keycode>
// 不同的 keycode 可以實現(xiàn)不同的功能,完整的 keycode 可以查看官方文檔,這里列出部分常用的 keycode
| keycode | 含義 |
|---|---|
| 3 | HOME鍵 |
| 4 | 返回鍵 |
| 26 | 打開瀏覽器 |
參考鏈接:
awesome-adb