我的 Android 应用程序的 junit 测试需要 android.permission.WRITE_SETTINGS。我在他们自己的模块中使用 IntelliJ Idea 11.1.2 和单元测试,其中包含用于测试的第二个 AndroidManifest.xml。
我添加了 <uses-permission android:name="android.permission.WRITE_SETTINGS" />
到测试模块的 AndroidManifest.xml。
错误: java.lang.SecurityException: Permission Denial: writing com.android.providers.settings.SettingsProvider uri content://settings/system from pid=1063, uid=10035 requires android.permission.WRITE_SETTINGS
丑陋的快速修复:我还向应用程序的 AndroidManifest.xml 添加了相同的权限。测试运行没有一个错误。
问题:我不想授予整个应用程序更改设置的权限。
有没有办法只为测试授予权限?
最佳答案
有没有办法只为测试授予权限?
简短的回答是否定的。
你的Android Test Project和Android Application Project其实是两个应用,有test.apk instruments app.apk和run time。
关于android - 单元测试 Android 和权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11011390/