原文:andhttp://blog.csdn.net/sanjinxiong/article/details/7267584roid
使用自动化测试工具monkeyrunner启动应用时,需要填写被测程序的包名和启动的Activity,以下有两种查看应用包名package和入口activity名称的方法:
方法一:使用aapt //aapt是sdk自带的一个工具,在sdk\builds-tools\目录下
1.以ES文件浏览器为例,命令行中切换到aapt.exe目录执行:aapt dump badging E:\apk\es3.apk
2.运行后的结果中以下两行分别是应用包名package和入口activity名称
package: name=’com.estrongs.android.pop’
launchable-activity: name=’com.estrongs.android.pop.view.FileExplorerActivity’
package: name='<span style="color: rgb(102, 102, 102);">com.estrongs.android.pop</span>' versionCode='1' versionName='1.0' sdkVersion:'8' application-label:'EngineeringTest' application-icon-120:'res/drawable-ldpi/ic_launcher.png' application-icon-160:'res/drawable-mdpi/ic_launcher.png' application-icon-240:'res/drawable-hdpi/ic_launcher.png' application: label='EngineeringTest' icon='res/drawable-mdpi/ic_launcher.png' launchable-activity: name='<span style="color: rgb(102, 102, 102);">com.estrongs.android.pop.view.FileExplorerActivity</span>' label='EngineeringTest' icon='' uses-permission:'android.permission.INTERNET' uses-feature:'android.hardware.touchscreen' main other-activities other-receivers other-services supports-screens: 'small' 'normal' 'large' supports-any-density: 'true' locales: '--_--' densities: '120' '160' '240'
注:在android sdk目录搜索可以找到aapt.exe,如果没有可以下载apktool。
方法二:查看AndroidManifest.xml
1.使用apktool反编译app:apktool.bat d es3.apk E:\apk\es
2.打开AndroidManifest.xml
manifest节点的package属性值是应用的包名:<manifest package=”com.estrongs.android.pop”>
查找android.intent.action.MAIN和android.intent.category.LAUNCHER对应的activity,该activity对应的android:name属性既是入口activity名称,如下:
<activity android:theme=”@*android tyle/Theme.NoTitleBar” android:label=”@string/app_name” android:name=”com.estrongs.android.pop.view.FileExplorerActivity”>
<intent-filter>
<action android:name=”android.intent.action.MAIN” />
<category android:name=”android.intent.category.LAUNCHER” />
</intent-filter>
</activity>
android.intent.action.MAIN决定应用程序最先启动的Activity
android.intent.category.LAUNCHER决定应用程序是否显示在程序列表里