我正在尝试测试基于Android位置的应用。
如果我可以在单元测试中模拟来自提供者的位置数据,那将非常有用。但我无法向ACCESS_MOCK_LOCATION
添加androidManifest.xml
权限,因为当我这样做时,它会给我一个错误:
模拟位置应仅在特定的调试清单文件请求(典型的src /调试/ AndroidManifest.xml中) 使用模拟位置提供程序(通过要求权限 android.permission.ACCESS_MOCK_LOCATION)应该只在调试中完成 建立。在Gradle项目中,这意味着您只应该请求它 调试源中的权限设置特定的清单文件。要解决这个问题, 在调试文件夹中创建一个新的清单文件并移动 那里的元素。调试清单的典型路径 Gradle项目中的覆盖文件是src / debug / AndroidManifest.xml。
但是当我将AndroidManifest.xml
添加到src/androidTest
目录时 - 它只是在测试时忽略它。
我做错了什么?
答案 0 :(得分:3)
我刚遇到这个问题,我想我找到了解决方案。确保在您的设备开发者选项中选中“访问模拟位置”(除了制作“src / debug / AndroidManifest.xml”文件,声明使用ACCESS_MOCK_LOCATION权限,正如您所做的那样)。
答案 1 :(得分:0)
但是当我将AndroidManifest.xml添加到src / androidTest目录时 - 它只是在测试时忽略它。
您是否尝试根据错误消息将其放入src / debug文件夹?这应该可以正常工作。