Android在开发者选项中有一个选项来模拟位置。如果我的理解是正确的,如果您设置此位置,应用程序将开始获取此位置而不是实际位置?
如果是这种情况,无论此选项中设置了什么,我们如何获得实际位置?
如果不是这种情况,实际使用的模拟位置是什么时候(仅在模拟器中?)?
答案 0 :(得分:0)
据我所知,如果我们使用MOKE位置,我们无法获得实际位置,
使用Moke位置
假设您正在澳大利亚地区开发应用程序,并且您希望在美国环境中测试您的应用程序(仅限位置),那么我们正在使用Moke位置。
我认为位置来自android框架库,并且这些apis编写是这样的,如果你设置了Moke位置,那么api将优先考虑moke位置。因此,如果你想使用实际位置,你需要停止moke loaction。
你可以编写自己的api,直接与gps对话,然后你可能会这样做,但它的主要项目本身
修改强>
您可以检查MockSetting选项是否开启
/**
*returns true if mock location enabled, false if not enabled.
**/
public static boolean isMockLocationStatus(Context context) {
if (Settings.Secure.getString(context.getContentResolver(),
Settings.Secure.ALLOW_MOCK_LOCATION).equals("0"))
return false;
else
return true;
}