我创建了一个服务并抓取有关用户的位置数据,以便我可以向附近的用户显示我的用户.我希望此服务除了GPS之外还可以通过网络进行跟踪,原因有两个:1)GPS可能无法启用. 2)GPS需要相当多的时间来锁定我的测试手机.
当我的服务执行以下行时:
mNETEnabled = mLocationManager.isProviderEnabled(LocationManager.NETWORK_PROVIDER);
我收到以下错误:
11-24 14:00:41.693: ERROR/LocationManagerService(51): isProviderEnabled got exception: 11-24 14:00:41.693: ERROR/LocationManagerService(51): java.lang.IllegalArgumentException: provider=network 11-24 14:00:41.693: ERROR/LocationManagerService(51): at com.android.server.LocationManagerService._isProviderEnabledLocked(LocationManagerService.java:1385) 11-24 14:00:41.693: ERROR/LocationManagerService(51): at com.android.server.LocationManagerService.isProviderEnabled(LocationManagerService.java:1359)
为什么是这样?我是否错过了Manifest的许可?我的清单中有ACCESS_COARSE_LOCATION.
解决方法
你在api等级13或更高的模拟器上运行吗?
Android issue 19857