1. adb devices
执行结果是adb为每一个设备输出以下状态信息:序列号(serialNumber) — 由adb创建的使用控制台端口号的用于唯一标识一个模拟器或手机设备的字符串,格式是 <设备类型>-<端口号>,例如: emulator-5554
状态(state) — 连接状态,其值是:offline — 未连接或未响应
device —已经连接到服务商。注意这个状态并不表示Android系统已经完全启动起来,系统启动的过程中已经可以连接adb,但这个状态是正常的可操作状态。
2. 命令行中输入:appium -a 127.0.0.1 -p 4723 --no-reset --session-override
-a 是指定监听的ip(也可写成 --address),后面“127.0.0.1”可以改为你需要的ip地址;
-p 是指定监听的端口(也可写成 --port),也可以修改为你需要的端口;
--no-reset 不要每次都安装apk
--session-override 是指覆盖之前的session;
另外还有:
-bp 是连接Android设备bootstrap的端口号,默认是4724(也可写成--bootstrap-port)
--chromedriver-port 是chromedriver运行需要指定的端口号,默认是9515
-U 是连接的设备名称,如"adb devices"获取的设备标识(也可写成--udid)
3. adb connect 127.0.0.1:62001
connect 连接到真机或模拟器,后边是目标IP和端口(62001,夜神端口),真机后边加udid
4. adb shell dumpsys window w |findstr / |findstr name=
获取当前前台打开的app的appPackage和appActivity的名字
输出展示(我打开的是中国移动掌厅App): mSurface=Surface(name=com.greenpoint.android.mc10086.activity/com.leadeon.cmcc.view.tabs.AppTabFragment)
上边这么命令找到的activity有时候不能用来启动APP,妈的,坑死我了,貌似是说有些app主页面activity和启动activity一样,有些不一样。
在sdk中build-tools里随便一个版本包里都有aapt.exe 可以把它加入环境变量或者进入这个文件夹内,通过命令 aapt dump badging <apk文件路径> 获取包名和activity
这个比较好使