我不能使用像“adb shell am instrument -e class testCase1 ...”这样的推荐,由于某些安全原因,用户应用程序无法使用此权限。
答案 0 :(得分:3)
从adb shell启动检测的命令:
adb shell am instrument -w com.android.vishal.project.test/android.test.InstrumentationTestRunner
Android代码从Android Activity启动检测: -
startInstrumentation(new ComponentName("com.android.vishal.project.test", "android.test.InstrumentationTestRunner"), null, null);
注意:
其他方法,
用于启动检测的Android代码(Android 2.3到Android 4.1.2)
String str_cmd = "adb shell am instrument -w com.android.vishal.project.test/android.test.InstrumentationTestRunner";
Runtime.getRuntime().exec(str_cmd);
对于Android 4.2,它需要权限“android.permission.INJECT_EVENTS”&这只是系统应用程序允许的。由于某些安全原因,用户应用程序无法使用此权限。
因此您无法在Android 4.2之后使用Runtime.getRuntime().exec(str_cmd);
...
所以现在的工作方法是:
startInstrumentation(new ComponentName("com.android.vishal.project.test", "android.test.InstrumentationTestRunner"), null, null);
从您的活动中执行此命令。
希望你得到解决方案。
回复任何疑问。