进行 UI 测试时转动 on/off 位置 Android
Turn on/off location when doing UI Tests Android
我正在尝试根据我要测试的内容打开或关闭设备的位置。
我已经研究过 Test-Butler 但事实证明我无法使用它,因为:
Test Butler helper app requires an emulator image with stock Android else it won't install, therefore it will not work with non-stock emulator images such as ones with Google APIs or Google Play! and
和我正在我的应用程序中实现Google地图等等GoogleAPI和google游戏是在我的设备上,所以这看起来会导致错误崩溃并且不是我的情况的解决方案。
问题:测试前打开或关闭应该注意什么?
您必须检查位置是否已启用,只有在未启用时才启用。
您可以像这样检查位置是否已启用:
public boolean isLocationEnabled(Context context) {
int locationMode = 0;
String locationProviders;
try {
locationMode = Settings.Secure.getInt(context.getContentResolver(), Settings.Secure.LOCATION_MODE);
} catch (SettingNotFoundException e) {
e.printStackTrace();
return false;
}
return locationMode != Settings.Secure.LOCATION_MODE_OFF;
}
如果上面returnsfalse
那么就可以enable了。然后做你的“测试”。
我正在尝试根据我要测试的内容打开或关闭设备的位置。
我已经研究过 Test-Butler 但事实证明我无法使用它,因为:
Test Butler helper app requires an emulator image with stock Android else it won't install, therefore it will not work with non-stock emulator images such as ones with Google APIs or Google Play! and
和我正在我的应用程序中实现Google地图等等GoogleAPI和google游戏是在我的设备上,所以这看起来会导致错误崩溃并且不是我的情况的解决方案。
问题:测试前打开或关闭应该注意什么?
您必须检查位置是否已启用,只有在未启用时才启用。
您可以像这样检查位置是否已启用:
public boolean isLocationEnabled(Context context) {
int locationMode = 0;
String locationProviders;
try {
locationMode = Settings.Secure.getInt(context.getContentResolver(), Settings.Secure.LOCATION_MODE);
} catch (SettingNotFoundException e) {
e.printStackTrace();
return false;
}
return locationMode != Settings.Secure.LOCATION_MODE_OFF;
}
如果上面returnsfalse
那么就可以enable了。然后做你的“测试”。