0
亲爱的Android开发者获得位置更新 - 安卓
我收到以下错误,当我尝试使用Android模拟器请求位置更新:
01-11 17:48:51.972: ERROR/LocationManagerService(542): requestUpdates got exception:
01-11 17:48:51.972: ERROR/LocationManagerService(542): java.lang.IllegalArgumentException: provider=network
01-11 17:48:51.972: ERROR/LocationManagerService(542): at com.android.server.LocationManagerService.requestLocationUpdatesLocked(LocationManagerService.java:1000)
01-11 17:48:51.972: ERROR/LocationManagerService(542): at com.android.server.LocationManagerService.requestLocationUpdates(LocationManagerService.java:968)
01-11 17:48:51.972: ERROR/LocationManagerService(542): at android.location.ILocationManager$Stub.onTransact(ILocationManager.java:96)
01-11 17:48:51.972: ERROR/LocationManagerService(542): at android.os.Binder.execTransact(Binder.java:287)
01-11 17:48:51.972: ERROR/LocationManagerService(542): at dalvik.system.NativeStart.run(Native Method)
我使用该工具来获取地点:
lastlocation = locationManager.getLastKnownLocation(LocationManager.NETWORK_PROVIDER);
欲了解更多信息:我使用Android 1.5,minSDK:3,模拟器是gps启用,这是我的第一个应用程序:一个简单的手机定位器。
谢谢John的回复。我已经用GPS试过了,如果GPS开启的话它工作正常(它不会给我错误)。问题是,有时我的GPS被禁用,在这种情况下,我想从网络提供商处获得位置。 – 2012-01-11 23:14:51
你是否认为我不会在真实的Android设备上出现这种错误(即,这是一个问题,因为我使用的模拟器不支持网络位置?) – 2012-01-11 23:24:59
您可能在真实设备上出现“类似”问题例如,某人可能拥有的设备上关闭了GPS。如果你使用getBestProvider,正如Jay所建议的那样,那么你应该得到一些回应。如果你想要准确的位置,那么你可以弹出消息对话框,要求用户打开他们的GPS。 – 2012-01-12 08:52:16