【新手指导】夜神安卓模拟器adb命令详解

一、如何找到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 包名

比如卸载QQadb uninstall com.tencent.mobileqq


5PM包命令

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                    手机品牌英文随机




16adb logcat

打印log信息

指令

说明

备注

adb logcat

打印log

/

adb logcat -c

清除手机的log buffer

有些手机权限控制不支持.

adb logcat -b <buffer>

打印指定bufferlog信息

buffer: main(log,默认), events(事件相关的log), radio(射频, telephony相关的log)

adb logcat -v <format>

格式化输出log

常用的用adb logcat -v time显示时间

adb logcat -f <filename>

输出log到指定文件



17adb start/kill-server

启动/杀死adb简介中提到的Server端进程。

由于adb并不稳定有时候莫名的问题掉线时可以先kill-server, 然后start-server来确保Server进程启动。往往可以解决问题。


18adb shell am

amactivity manager.
该命令用来执行一些系统动作例如启动指定activity, 结束进程发送广播更改屏幕属性等调试利器.

指令

说明

备注

start <Intent>

根据intent指向启动Activity

Intent可以是显示的指向activity, 也可以是ACTION方式并且可以添加flag, data等参数信息.

startservice <Intent>

启动Service

可以添加flag, data等参数信息.

broadcast <Intent>

发送广播

可以添加flag, data等参数信息.

monitor

启动一个CrashANR的监听器

如有CrashANR会在控制台输出相关信息.

force-stop <Package>

强制停止该包相关的一切

传入package name.

kill <Package>

杀死该包相关的所有进程

传入package name.

kill-all

杀死所有后台进程


display-size WxH

改变显示的分辨率

例如adb shell am display-size 1280x720, 手机可能不支持.

display-density <dpi>

改变显示的density

例如adb shell am display-density 320, 手机可能不支持.


19adb 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:<nox_id> _from:<nox_id>例:Nox.exe -copy:Nox_1 -from:nox
Nox_1是新增的模拟器,复制自nox

21.删除  -remove:<nox_id>
例:Nox.exe -remove:Nox_2
删除模拟器Nox_2

22.备份  -backup:<nox_id> -file:filepath
例:Nox.exe -backup:Nox_1 -file:C:\Users\xxxx\Desktop
备份Nox_1到桌面

23.还原  -restore:<nox_id> -file:filepath
例:Nox.exe -restore:Nox_1 -file:C:\xxxx\lihc\Desktop\backup20171030174008.vmdk
[C:\Users\xxxx\Desktop\backup20171030174008.vmdk]文件还原到Nox_1

夜神模拟器支持命令行参数列表