ADB软件自动化测试底层学习(2)-应用管理
应用管理包括:安装、卸载、查看应用等等
Andriod 应用的概念
package-包:是Android应用的唯一标志(如微信的包是com.tencent.mm)
Activity-活动页:Android应用页面,一个页面就是一个Activity (一个Activity就有其自身的生命周期,有绑定的功能按键等等)
应用管理
1.安装--install
命令格式:
adb install [-lrtsdg] <path of apk>
| 参数 | 意义 |
|---|---|
| -l | 将应用安装到保护目录 /mnt/asec |
| -r | 允许覆盖安装 |
| -t | 允许安装 AndroidManifest.xml 里 application 指定 android:testOnly="true" 的应用 |
| -s | 将应用安装到 sdcard |
| -d | 允许降级覆盖安装 |
| -g | 授予所有运行时权限 |
例如:设备已有微信(旧版),现需要下载新版微信,则可以如下面:
adb install -r -g D:\APK\weixin8021android2120_arm64_1.apk
输出结果:
Performing Streamed Install
Success
2.卸载--uninstall
命令格式
adb uninstall [-k] <packagename>
其中[-k]为可选参数,用于删除软件但保留数据及缓存数据
packagename 包名,用于删除软件(com.tencent.mm)
例如:删除微信但保留数据
adb uninstall -k com.tencent.mm
3.页面名
打开一个软件中其中一个页面,通过命令可以获取当前页面的页面名和包名
1.获取当前页面名
命令:
adb shell dumpsys window | grep mCurrentFoucs
输出结果:
OnePlus7:/ $ dumpsys window | grep mCurrentFocus
mCurrentFocus=Window{572bb2a u0 com.google.android.youtube/com.google.android.apps.youtube.app.watchwhile.WatchWhileActivity}
输出的结果是以mCurrentFocus=Window{xxxxxx xx <packagesName>/<ActivityName>}
在上面中
- packageName : com.google.android.youtube----包名(Youtube的独一无二的包名)
- ActivityName: com.google.android.apps.youtube.app.watchwhile.WatchWhileActivity(Youtueb App内的一个页面--搜索)
2.直接打开特定页面
命令:
adb shell am start -n <packagesNumber>/<ActivityName>

浙公网安备 33010602011771号