如何使用
monkey工具的类别选项?
我的清单文件的相关部分如下所示:
- <application android:icon="@drawable/icon" android:label="@string/app_name" android:name="MyApp" android:debuggable="true" android:allowBackup="false" android:testOnly="false">
- <activity android:name="MyLauncherActivity" android:label="@string/app_name" android:screenOrientation="portrait">
- <intent-filter>
- <action android:name="android.intent.action.MAIN" />
- <category android:name="android.intent.category.LAUNCHER" />
- </intent-filter>
- </activity>
- <activity android:name="MyMainActivity" android:label="@string/app_name" android:screenOrientation="portrait">
- <intent-filter>
- <action android:name="none" />
- <category android:name="android.intent.category.MONKEY" />
- </intent-filter>
- </activity>
我在手机上运行应用程序,以确保它正在工作,然后我在命令行输入:
- adb shell monkey -p my.full.package.path -vvv 3
它的工作很好.
但这不行:
- adb shell monkey -p my.full.package.path -c intent.CATEGORY_LAUNCHER -vvv 3
并产生以下输出:
- :Monkey: seed=0 count=3
- :AllowPackage: myapp.full.package.path
- :IncludeCategory: intent.CATEGORY_LAUNCHER
- // Warning: no activities found for category intent.CATEGORY_LAUNCHER
- ** No activities found to run,monkey aborted.
并尝试一些变种也没有工作:
- :Monkey: seed=0 count=3
- :AllowPackage: my.full.package.path
- :IncludeCategory: CATEGORY_MONKEY
- :IncludeCategory: intent.CATEGORY_MONKEY
- :IncludeCategory: android.intent.MONKEY
- :IncludeCategory: android.intent.category.MONKEY
- :IncludeCategory: MONKEY
- // Warning: no activities found for category CATEGORY_MONKEY
- // Warning: no activities found for category intent.CATEGORY_MONKEY
- // Warning: no activities found for category android.intent.MONKEY
- // Warning: no activities found for category MONKEY
- ** No activities found to run,monkey aborted.
如何指定类别
解决方法
你真的很近这对我有用:
- adb shell monkey -p com.JamesBecwar.test -c android.intent.category.LAUNCHER -vvv 3
我认为问题是你需要包括Launcher,因为如果你不是猴子无法启动程序.不要担心,你可以放多一个-c参数.例如你可以做:
- adb shell monkey -p com.JamesBecwar.test -c android.intent.category.LAUNCHER -c android.intent.category.MONKEY -vvv 3
它应该工作.