天天看點

adb指令:apk運作到裝置上的那些事

最近在寫項目的時候,發現一些基本的adb指令很重要,我要研究了一下将apk push到系統目錄下,安裝成系統應用的防止使用者删除的方法,,特此記錄一波,以後還忘,就來這裡直接得了,省的亂百度,還要試試看效果能不能達到。。。!

打開遠端連接配接模式

該指令将會重新開機手機上的adbd,開啟網絡調試功能

adb tcpip 5555 //(端口号,可以指定其他值)
           

連接配接adb服務裝置

adb connect 要連接配接的裝置IP
           

關閉、開啟 adb服務

adb kill-server
adb start-server
           

擷取adb服務對象清單

adb devices
           

重點來了!!!

-----安裝成系統應用的防止使用者删除的方法

前提:裝置已經獲得root權限

1.先要擷取權限:

adb root
           

2.再重新裝載android檔案系統:

adb remount
           

3.現在就可以直接把檔案push進去系統:

adb push 電腦端apk存放路徑 + apk檔案名稱.apk /system/app/
           

裝置關機重新開機,看效果,如果運作報錯那就接着往下看

如果項目包含.SO,啟動崩潰且日志中顯示無法找到SO檔案,請執行第4步

4.将.so檔案push到指定目錄:

adb push 電腦端so存放路徑 + so名字.so /system/lib
           

好了,到這裡應用軟體可以正常運作了,若.so檔案較多,請重複執行步驟4。

解除安裝應用

adb shell pm uninstall --user 0 包名
           

安裝普通應用

這裡如果是連接配接了多個裝置的話,就需要指定裝置:

adb -s 裝置編号 install apk的完整路徑
           

覆寫安裝指令行:

adb install -r apk所在路徑
           
描述
指令

1、查詢已連接配接裝置/模拟器
adb devices
2、指定裝置擷取螢幕分辨率
adb -s 裝置号 shell wm size
3、給指定裝置安裝應用
adb -s 裝置号 install test.apk
4、啟動 adb server 指令
adb start-server
5、停止 adb server 指令
adb kill-server
6、檢視adb版本
adb version
7、指定 adb server 的網絡端口
adb -P <port> start-server
8、通過 IP 位址連接配接裝置
adb connect <device-ip-address>
9、斷開無線連接配接
adb disconnect <device-ip-address>
10、檢視所有應用
adb shell pm list packages
11、檢視系統應用
adb shell pm list packages -s
12、檢視第三方應用
adb shell pm list packages -3
13、解除安裝應用(<packagename> 表示應用的包名,-k 參數可選,表示解除安裝應用但保留資料和緩存目錄。)
adb uninstall [-k] <packagename>
14、清除應用資料與緩存
adb shell pm clear <packagename>
15、複制裝置裡的檔案到電腦
adb pull <裝置裡的檔案路徑> [電腦上的目錄]
16、複制電腦裡的檔案到裝置
adb push <電腦上的檔案路徑> <裝置裡的目錄>
17、電源鍵
adb shell input keyevent 26
18、菜單鍵
adb shell input keyevent 82
19、HOME 鍵
adb shell input keyevent 3
20、傳回鍵
adb shell input keyevent 4
21、增加音量
adb shell input keyevent 24
22、降低音量
adb shell input keyevent 25
23、靜音
adb shell input keyevent 164
24、播放/暫停
adb shell input keyevent 85
25、停止播放
adb shell input keyevent 86
26、播放下一首
adb shell input keyevent 87
27、播放上一首
adb shell input keyevent 88
28、恢複播放
adb shell input keyevent 126
29、暫停播放
adb shell input keyevent 127
30、滑動解鎖(參數 300 1000 300 500 分别表示起始點x坐标 起始點y坐标 結束點x坐标 結束點y坐标。)
adb shell input swipe 300 1000 300 500
31、輸入文本
adb shell input text hello
32、清空日志
adb logcat -c
33、檢視裝置型号
adb shell getprop ro.product.model
34、電池狀況
adb shell dumpsys battery
35、螢幕分辨率
adb shell wm size
36、螢幕密度
adb shell wm density
37、顯示屏參數
adb shell dumpsys window displays
38、檢視Android 系統版本
adb shell getprop ro.build.version.release
39、檢視IP 位址
adb shell ifconfig | grep Mask
40、Mac 位址
adb shell cat /sys/class/net/wlan0/address
41、CPU 資訊
adb shell cat /proc/cpuinfo
42、記憶體資訊
adb shell cat /proc/meminfo
43、使用 Monkey 進行壓力測試(表示向 <packagename> 指定的應用程式發送 500 個僞随機事件。)
adb shell monkey -p <packagename> -v 500
44、檢視程序
adb shell ps
45、檢視實時資源占用情況
adb shell top