adb可以连接手机和电脑端,可以管理手机的状态,进行很多手机操作,像安装软件、卸载软件、系统升级、查看APP运行日志等等。实现对手机端的调试。
adb常用命令: 1、查看设备是否连接(adb devices):C:Usersyx>adb devices List of devices attached 9f6777a8 device2、查看设备静态ip(adb shell ifconfig wlan0):
C:Usersyx>adb shell ifconfig wlan0
wlan0 Link encap:UNSPEC Driver icnss
inet addr:192.168.100.55 Bcast:192.168.100.255 Mask:255.255.255.0
inet6 addr: fe80::9aa3:f1a:5911:28a9/64 Scope: Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:30040927 errors:0 dropped:0 overruns:0 frame:0
TX packets:26075649 errors:0 dropped:298 overruns:0 carrier:0
collisions:0 txqueuelen:3000
RX bytes:33627422829 TX bytes:9685494713
3、给手机安装APP(adb install ***.apk):
C:Usersyx>adb install C:UsersyxDesktopbase.apk 4630 KB/s (23837534 bytes in 5.026s) Success4、查看手机中安装的所有第三方安装包(adb shell pm list package -3):
备注:第三方安装包的概念:
(1)、微信里面不能直接下载的安装包,需要用右上角3个点的“在浏览器打开”,这个浏览器就是第三方应用
(2)、浏览器可以下载软件,微信本身没有这个功能。
(3)、第三方软件是由非软件编制方的其他组织和个人开发的相关软件。(约等于不在应用商城的软件???)
C:Usersniuyx>adb shell pm list package -3 package:com.miui.screenrecorder package:com.fanweilin.coordinatemap package:com.jianju.runtime5、卸载某个APP(adb uninstall APP包名):
包名是APP再手机中的真实包名,不是界面直接看到的APP的名字。
C:Usersyx>adb uninstall com.jianju.runtime Success6、查看APP路径(adb shell pm path APP包名):
C:Usersadbyx>adb shell pm path com.jianju.runtime package:/data/app/~~EDWKajekTRvQZhtZQEoV_Q==/com.jianju.runtime--JA2FOtP-WNXAb41oBkMVA==/base.apk7、进入手机shell环境(adb shell ):
C:Usersyx>adb shell picasso:/ $ ls ls acct init.miui.cust.rc oem8、查看手机日志(adb logcat -t 10 ):
C:Usersyx>adb logcat -t 10 --------- beginning of main 06-01 15:07:11.224 31527 31527 D VFUtils : scaleWght : 330 06-01 15:07:11.593 1744 3638 I MiuiNetworkPolicy: bandwidth: 2 KB/s, Max bandwidth: 1279 KB/s 06-01 15:07:12.122 954 1681 E SDM : DRMCrtc::Perform: CRTC 109: Set mode 1080x2400x120x133647vid 06-01 15:07:12.123 954 1681 E SDM : DRMCrtc::Perform: CRTC 109: Set mode 1080x2400x120x133647vid 06-01 15:07:12.124 954 1681 I SDM : StrategyImpl::SetIdleTimeoutMs: Idle timeout: active = 1100, inactive = 520 06-01 15:07:13.232 954 1681 E SDM : DRMCrtc::Perform: CRTC 109: Set mode 1080x2400x50x133647vid 06-01 15:07:13.236 954 1681 E SDM : DRMCrtc::Perform: CRTC 109: Set mode 1080x2400x50x133647vid 06-01 15:07:13.237 954 1681 I SDM : StrategyImpl::SetIdleTimeoutMs: Idle timeout: active = 1100, inactive = 520 06-01 15:07:13.444 954 1681 E SDM : DRMCrtc::Perform: CRTC 109: Set mode 1080x2400x50x133647vid 06-01 15:07:13.445 954 1681 E SDM : DRMCrtc::Perform: CRTC 109: Set mode 1080x2400x50x133647vid9、查看手机当前运行APP包名(adb shell dumpsys window | findstr mCurrentFocus ):
其中com.xxx.xxx就是包名
C:Usersniuyx>adb shell dumpsys window | findstr mCurrentFocus
mCurrentFocus=Window{b7f518a u0 com.jianju.runtime/com.jianju.runtime.MainActivity}
10、抓取指定APP日志(adb logcat | find “com.jianju.runtime”):
find可以实现过滤包名
ctrl+c 结束抓包
C:Usersyx>adb logcat | find "com.jianju.runtime"11、抓取指定APP日志,并存在电脑指定位置(adb logcat | find “com.jianju.runtime” >D:/1/1.txt):
C:Usersniuyx>adb logcat | find "com.jianju.runtime" >D:/1/1.txt12、关闭APP
adb shell am force-stop com.jianju.runtime
13、启动APP(adb shell am start com.xxx.xxx/com.xxx.xxx.LoginActivity)(1)先找到APP的入口
adb shell dumpsys package com.jianju.runtime | findstr / |findstr filter
(2)启动APP
adb shell am start com.jianju.runtime/com.jianju.runtime.LoginActivity
C:Usersniuyx>adb shell dumpsys package com.jianju.runtime | findstr / |findstr filter
2ede301 com.jianju.runtime/.LoginActivity filter e3a25a6
C:Usersniuyx>adb shell am start com.jianju.runtime/com.jianju.runtime.LoginActivity
Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.jianju.runtime/.LoginActivity }
14、电脑端传输文件到手机端
adb push 1.txt /sdcard/
(文件名 手机存储路径)
(1)在命令行输入要要存储文件的路径(或在指定位置差cmd,进入命令窗口);
(2)adb push 文件名 /sdcard/(手机存储路径)
C:Usersyx>adb push 1.txt /sdcard/ 5640 KB/s (218902 bytes in 0.037s)



