Android命令之-------ADB命令大全,android-------adb
1.顯示當前啟動並執行全部模擬器: adb devices
2.啟動ADB adb start-server
3.停止ADB adb kill-server
4.安裝應用程式: adb install -r [apk檔案]
-l #鎖定該程式-r #重新安裝該程式,儲存資料-s #安裝在SD卡內,而不是裝置內部儲存
例:adb install --r D:\mm.apk
5.卸載應用程式: adb uninstall [packagename]
例:adb uninstall com.tencent.mm
-k #不刪除程式運行所產生的資料和緩衝目錄(如軟體的資料庫檔案)
例:adb uninstall -k com.tencent.mm
6. 講手機裝置中的檔案copy到本機電腦:
adb pull 裝置目錄 本地目錄例:adb pull /sdcard/mm.txt D:\(講記憶卡根目錄的txt檔案copy到D盤根目錄)
7.將本機電腦的檔案copy到手機裝置中
adb push 本地目錄 手機裝置目錄例:adb push D:\mm.txt /sdcard
8.查看adb命令協助資訊: adb help
9.截屏例:adb shell screencap -p 檔案路徑
10.查看指定包名應用的資料庫儲存資訊(包括儲存的SQL語句)
例:adb shell dumpsys dbinfo[packagename]
11.查看指定的進程或則進程id的記憶體資訊
adb shell dumpsys meminfo[packagename/pid]可以查看進程當前的記憶體情況
例:adb shell dumpsys meminfo com.tencent.mm
12.查看指定包名應用的詳細資料(相當於AndroidMainfest.xml中內容)
adb shell dumpsys [packagename]例:adb shell dumpsys com.tencent.mm
13.查看當前應用的activity資訊adb shell dumpsys activity top查看bug報告:
adb bugreport
14.列出手機裝的所有apk包名
adb shell pm list packages
系統應用:adb shell pm list packages -s
第三方應用:adb shell pm list packages -3
使用grep過濾 :adb shell pm list packages | grep qq
15.清除應用緩衝資訊:
adb shell pm clear [packagename]
16.通過adb啟動應用程式頁面
adb shell am start -n[包名+activity名]
例:adb shell am start -n com.tencent.mm/.ui.SplashAcitvity
強制停止應用有些時候應用卡死了,需要強制停止,則執行以下命令:adb shell am force-stop <packagename>// 如:adb shell am force-stop cn.androidstar.demo
17、記錄無線通訊日誌:
一般來說,無線通訊的日誌非常多,在運行時沒必要去記錄,但我們還是可以通過命令,設定記錄:
adb shell
logcat -b radio
18、擷取裝置的ID和序號: adb get-product
adb get-serialno
19、訪問資料庫SQLite3 adb shell
sqlite3#cd system/sd/data //進入系統內指定檔案夾
#ls //列表顯示當前檔案夾內容
#rm -r xxx //刪除名字為xxx的檔案夾及其裡面的所有檔案
#rm xxx //刪除檔案xxx
#rmdir xxx //刪除xxx的檔案夾
20.匯出裝置資訊
adb get-serialno > 序號.txt
adb shell cat /sys/class/net/wlan0/address > MAC地址.txt
adb shell getprop ro.product.model > 裝置型號.txt
adb shell getprop ro.build.version.release> 系統版本.txt
adb shell pm list packages -s > 系統應用的所有包名.txt
adb shell pm list packages -3 > 第三方應用程式套件名.txt
adb shell wm size > 螢幕解析度.txt
adb shell wm density > 螢幕密度.txt
adb shell cat /proc/cpuinfo > CPU資訊.txt
adb shell pm list permissions -f > 許可權.txt
adb shell pm list users -f > 使用者.txt
21.重啟adb reboot
還有2個非常有用的命令:
1.備份adb backup
[-f <file>] [-apk|-noapk][-shared|-noshared] [-all] [-system|nosystem] [<packages...>]
例:adb backup -f mm.ab -noapk -noshared -nosystemcom.tencent.mm你可以使用的最基本的命令是很簡單的
adb backup -all
它將使用預設備份應用和裝置的資料(不包含apk)到目前的目錄下並儲存為檔案backup.ab
※這個命令有可能不對每個設定都有效,如果你出現像這種 "adb: cannot open file ./backup.ab"的錯誤,使用 adb backup -all -fC:\backup.ab來代替,其中路徑C:\可根據喜好替換
對各個參數的解釋:
-f <file>
用這個來選擇備份檔案儲存在哪裡,例如-f /backup/mybackup.ab將會使檔案儲存體在根磁碟(Windows的C盤等等)下一個名為backup的檔案夾裡,並且備份檔案名為mybackup.ab
-apk|-noapk
這個決定是否在備份裡包含apk或者僅僅只備份應用資料,個人推薦使用-apk以免有的應用在應用市場找不到,如果不使用則預設的是-noapk
-shared|-noshared
這個參數用於決定是否備份裝置共用的SD card內容,預設是-noshare,主要包括內部儲存中的音樂、圖片和視頻,因此為保險起見,建議加上-share
-all
這個參數是一種簡單地表達“所有應用”的說法,package參數可以選擇備份單獨的應用,如果你不是備份某個應用,使用-all備份整個系統
-system|-nosystem
這個參數決定-all標籤是否包含系統應用,預設的是-system,根據情況可選擇是否用-nosystem
<packages...>
如果你知道應用安裝包的名稱(例如com.google.android.apps.plus),就可以使用該參數備份特定應用。
3.當決定如何執行備份後,輸入你喜歡的命令,在華為G700上測試,使用命令
adb backup -apk -all
更新一些反編譯常用命令:
1.查看當前進程的記憶體的載入情況啊:
cat /proc/7654/maps 查看當前進程記憶體的映射情況
2.查看當前應用使用的連接埠號碼資訊:
cat /proc/[pid]/net/tcp
3.查看進程的狀態資訊:
cat /proc/[pid]/status可以通過該命令擷取到當前進程的包名,PID,PPID等等重要訊息(比較實用的命令)
4.查看一個dex檔案的詳細資料
dexdump [dex檔案路徑]
5.使用aapt命令擷取apk的資訊清單檔
aapt dump xmltree [apk包] [需要查看的資源檔xml]