在 Android 开发以及测试中,经常遇到需要启动一个没有启动图标的apk,这个时候可以使用 pm 以及 am 命令来配合,启动相应apk。
主流程:
- pm 获取apk包名
- pm 获取apk详细配置信息,主要是相应启动 Activity 的类的路径
- am 启动相应 Activity 的类
简单实践:
-
- pm 获取apk包名
连接 adb 后,输入
1
|
shell @rk3368_32 :/
$ pm list packages |
输出
1
2
3
|
... package :com.android.captiveportallogin package :android.rk.RockVideoPlayer |
得到相应的包名为 android.rk.RockVideoPlayer
2. pm 获取apk详细配置信息,主要是相应启动 Activity 的类的路径
输入
1
|
pm
dump android.rk.RockVideoPlayer |
输出
1
2
3
4
5
6
|
... Non-Data
Actions: android.intent.action.MAIN: 3d093a3c
android.rk.RockVideoPlayer/.RockVideoPlayer android.intent.action.VIEW: 26ecb42f
android.rk.RockVideoPlayer/.VideoPlayActivity |
得到相应启动 Activity 的类的路径为 android.rk.RockVideoPlayer/.RockVideoPlayer
3. am 启动 Activity 类的路径
输入
1
|
am
start -n android.rk.RockVideoPlayer/.RockVideoPlayer |
即可启动相应 Activity。
掌握这个方法后,可以方便以后的自动化测试。
from: http://kevinems.com/software-development/595.html