一、如何找到adb?
安装夜神安卓模拟器后,电脑桌面会有“夜神模拟器”的启动图标,鼠标右键--打开文件所在的位置,就会进入***\Nox\bin,比如小编的路径是C:\Program Files (x86)\Nox\bin,然后可以在该路径下找到nox_adb.exe
二、如何连接设备?
首先需要进入\Nox\bin路径的cmd窗口,如何进入?
方式一:继续上述的步骤,进入\Nox\bin目录,然后按Shift键的同时,单击鼠标右键,就会看到“在此处打开命令窗口(W)”,点击即可进入\Nox\bin路径的cmd窗口。
方式二:按Windows+R键,在弹出的“运行”窗口输入cmd,确定,然后输入cd C:\Program Files (x86)\Nox\bin(说明:这是你的夜神模拟器安装路径),即可。说明:如果你的夜神模拟器不是安装在C盘,比如安装在D盘,请在cd前面先输入D: 然后按回车键,再cd ...\Nox\bin。
在连接设备之前,先查看一下在运行的设备:
nox_adb.exe devices
C:\Program Files (x86)\Nox\bin>nox_adb devices
List of devices attached
127.0.0.1:62001 device
说明:nox_adb.exe 完全等同于nox_adb,也完全等同于adb,下同。比如adb devices。
如果未启动夜神模拟器,就会得到如下信息:
C:\Program Files (x86)\Nox\bin>adb devices
List of devices attached
(这一行是空的,需要我们先把夜神模拟器启动一下)
如果启动的模拟器不止一个,如果连接设备?
比如小编多开了3个夜神模拟器,adb devices一下,会看到如下信息:
C:\Program Files (x86)\Nox\bin>nox_adb devices
List of devices attached
127.0.0.1:62001 device
127.0.0.1:62025 device
127.0.0.1:62026 device
(夜神模拟器的端口是规律的,第一个模拟器端口是62001,第二个模拟器端口是62025,第三个是62025+1,以此类推)
如果指定在62001 上安装一个apk,那么请输入:adb -s 127.0.0.1:62001 install D:\QQ.apk
温馨提示:adb -s 127.0.0.1:620** 可连接任意指定的设备,多开模拟器后想怎么连都可以,为方便教程,以下操作都是在单开模拟器下进行,如果多开需要,只需要在adb后面带上-s 127.0.0.1:620** 即可。
三、常用adb操作
1、如何把电脑上的文件或文件夹传到模拟器里面?
adb push D:/sex.avi /mnt/avi/
2、如何把模拟器里面的文件或文件夹传到电脑上?
adb pull /mnt/avi/sex.avi D:/avi/
3、安装APK
adb install d:\qq.apk
4、卸载APK
adb uninstall 包名
比如卸载QQ:adb uninstall com.tencent.mobileqq
5、PM包命令
1)获取模拟器所有包名
adb shell pm list packages
2)获取模拟器所有包名并且包括APK路径
adb shell pm list packages -f
3)获取包名对应的APK路径
adb shell pm path packageName
4)清理应用数据
adb shell pm clear packageName
6、启动应用
adb shell am start -n 包名/Activity类名
例子:启动应用宝:
adb shell am start -n com.tencent.android.qqdownloader/com.tencent.assistant.activity.SplashActivity
指定模拟器启动动应用宝:
adb -s 127.0.0.1:5555 shell am start -n com.tencent.android.qqdownloader/com.tencent.assistant.activity.SplashActivity
7、关闭应用
adb shell am force-stop 包名
8、模拟输入
adb shell input text 字符串(不支持中文)
9、模拟按键
adb shell input keyevent 键值
10、模拟鼠标点击
adb shell input tap X Y
11、模拟鼠标滑动
adb shell input swipe X1 Y1 X2 Y2
12、截屏
adb shell screencap -p /sdcard/screencap.png
13、设置手机IMEI/IMSI/手机号/SIM卡序列号
adb shell setprop persist.nox.modem.imei 352462010682470
adb shell setprop persist.nox.modem.imsi 460000000000000
adb shell setprop persist.nox.modem.phonumber 15605569000
adb shell setprop persist.nox.modem.serial 89860000000000000000
14、nox_adb shell进去然后执行下面的命令修改经纬度
setprop persist.nox.gps.latitude xxx
setprop persist.nox.gps.longitude xxx
15、修改mac地址
setprop persist.nox.wifimac xxx 修改mac地址
setprop persist.nox.modem.phonumber 138111111111 手机号,生成一个随机11位数字
setprop persist.nox.model ABC001 手机型号,英文加数字随机
setprop persist.nox.manufacturer XiaoMi 手机制造商英文随机
setprop persist.nox.brand Mi 手机品牌英文随机
16、adb logcat
打印log信息
指令
说明
备注
adb logcat
打印log
/
adb logcat -c
清除手机的log buffer
有些手机权限控制, 不支持.
adb logcat -b
打印指定buffer的log信息
buffer有: main(主log区,默认), events(事件相关的log), radio(射频, telephony相关的log)
adb logcat -v
格式化输出log
常用的用adb logcat -v time显示时间
adb logcat -f
输出log到指定文件
17、adb start/kill-server
启动/杀死adb简介中提到的Server端进程。
由于adb并不稳定, 有时候莫名的问题掉线时, 可以先kill-server, 然后start-server来确保Server进程启动。往往可以解决问题。
18、adb shell am
am即activity manager.
该命令用来执行一些系统动作, 例如启动指定activity, 结束进程, 发送广播, 更改屏幕属性等. 调试利器.
指令
说明
备注
start
根据intent指向启动Activity
Intent可以是显示的指向activity, 也可以是ACTION方式, 并且可以添加flag, data等参数信息.
startservice
启动Service
可以添加flag, data等参数信息.
broadcast
发送广播
可以添加flag, data等参数信息.
monitor
启动一个Crash和ANR的监听器
如有Crash或ANR会在控制台输出相关信息.
force-stop
强制停止该包相关的一切
传入package name.
kill
杀死该包相关的所有进程
传入package name.
kill-all
杀死所有后台进程
display-size WxH
改变显示的分辨率
例如adb shell am display-size 1280x720, 手机可能不支持.
display-density
改变显示的density
例如adb shell am display-density 320, 手机可能不支持.
19、adb shell dumpsys
强大的dump工具, 可以输出很多系统信息. 例如window, activity, task/back stack信息, wifi信息等.
常用dumpsys:
指令
说明
备注
细分参数
activity
输出app组件相关信息
还可以用细分参数获得单项内容, 下同. 例如adb shell dumpsys activity activities来获取activity task/back stack信息.
activites, service, providers, intents, broadcasts, processes
alarm
输出当前系统的alarm信息
/
/
cpuinfo
输出当前的CPU使用情况
/
/
diskstats
输出当前的磁盘使用状态
/
/
batterystats
电池使用信息
/
/
package
package相关信息, 相当于pm功能的集合
输出诸如libs, features, packages等信息
/
meminfo
输出每个App的内存使用和系统内存状态
可以指定包名, 例如adb shell dumpsys meminfo com.anly.githubapp
/
window
输出当前窗口相关信息
/
policy, animator, tokens, windows
20.复制 -copy:
21.删除 -remove:
22.备份 -backup:
23.还原 -restore:
夜神模拟器支持命令行参数列表