android如何设置手机的假位置
我试图对手机使用模拟位置,但它显示异常 我的代码在下面android如何设置手机的假位置,android,location,Android,Location,我试图对手机使用模拟位置,但它显示异常 我的代码在下面 Location location = new Location(MOCK_PROVIDER_NAME); location.setLatitude(latitude); location.setLongitude(longitude); location.setTime(new Date().ge
Location location = new Location(MOCK_PROVIDER_NAME);
location.setLatitude(latitude);
location.setLongitude(longitude);
location.setTime(new Date().getTime());
locationManager.setTestProviderEnabled(MOCK_PROVIDER_NAME, true);
locationManager.setTestProviderLocation(MOCK_PROVIDER_NAME, location);
Toast.makeText(getBaseContext(),"Latitude: "+location.getLatitude()+" Longitude: "+location.getLongitude(), Toast.LENGTH_SHORT)
.show();
我给了MOCK_PROVIDER_NAME=“gps”,但这一个不起作用,我也尝试了“网络”和“欺骗”,但它不起作用
我哪里出错了,请任何人告诉我。
谢谢您的问题有两个可能的原因: 安全例外情况: 如果访问\u模拟\u位置权限不存在或 Settings.Secure.ALLOW\u MOCK\u位置系统设置未启用 或IllegalArgumentException: 如果具有给定名称的提供程序已存在 我从以下地方得到这些引语: 如果它不是您得到的异常之一,那么给我们错误的堆栈跟踪,以及堆栈跟踪在代码中显示的任何一行都是问题所在
我猜您没有在清单中声明权限和/或在开发设置中禁用“允许模拟位置” 以下是您的问题的两个可能原因: 安全例外情况: 如果访问\u模拟\u位置权限不存在或 Settings.Secure.ALLOW\u MOCK\u位置系统设置未启用 或IllegalArgumentException: 如果具有给定名称的提供程序已存在 我从以下地方得到这些引语: 如果它不是您得到的异常之一,那么给我们错误的堆栈跟踪,以及堆栈跟踪在代码中显示的任何一行都是问题所在
我猜您没有在清单中声明权限和/或在开发设置中禁用“允许模拟位置” 我授予了权限,并且在手机中启用了MOCK_位置,它显示了参数“gps”、“网络”的异常。如果给定名称的提供商已经存在,则您将获得一个IllegalArgumentException。如果这不能解决问题,你会遇到什么异常?我授予了权限,并且我在手机中启用了模拟位置,它显示参数“gps”、“网络”的异常如果给定名称的提供商已经存在,你会得到一个IllegalArgumentException。如果这不能解决问题,您会遇到什么异常?