2011-08-18 59 views
44

我有一个地理编码器有点问题,从一个地址获得纬度和lontitude:服务不可用 - 地理编码器的Android

这是我的代码:

for (Garage g : XMLGarage) { 
List<Address> address; 
address = coder.getFromLocationName(
g.getAddress(), 5); 
if (address != null) { 
Address location = address.get(0); 
g.setLatitude(location.getLatitude()); 
g.setLongitude(location.getLongitude()); 
... 

的错误是:

08-18 14:28:56.026: WARN/System.err(359): java.io.IOException: Service not Available 
08-18 14:28:56.026: WARN/System.err(359):  at 
android.location.Geocoder.getFromLocationName(Geocoder.java:178) 
08-18 14:28:56.026: WARN/System.err(359):  at 
com.amt.android.garage.Garage.postData(Garage.java:269) 
08-18 14:28:56.026: WARN/System.err(359):  at 
com.amt.android.garage.GarageForm$2.onClick(GarageForm.java:86) 
08-18 14:28:56.026: WARN/System.err(359):  at 
android.view.View.performClick(View.java:2485) 
08-18 14:28:56.026: WARN/System.err(359):  at 
android.view.View$PerformClick.run(View.java:9080) 
08-18 14:28:56.036: WARN/System.err(359):  at 
android.os.Handler.handleCallback(Handler.java:587) 
08-18 14:28:56.036: WARN/System.err(359):  at 
android.os.Handler.dispatchMessage(Handler.java:92) 
08-18 14:28:56.036: WARN/System.err(359):  at 
android.os.Looper.loop(Looper.java:130) 
08-18 14:28:56.036: WARN/System.err(359):  at 
android.app.ActivityThread.main(ActivityThread.java:3683) 
08-18 14:28:56.036: WARN/System.err(359):  at 
java.lang.reflect.Method.invokeNative(Native Method) 
08-18 14:28:56.036: WARN/System.err(359):  at 
java.lang.reflect.Method.invoke(Method.java:507) 
08-18 14:28:56.036: WARN/System.err(359):  at 
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839) 
08-18 14:28:56.046: WARN/System.err(359):  at 
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597) 
08-18 14:28:56.046: WARN/System.err(359):  at dalvik.system.NativeStart.main(Native  
Method) 

感谢和问候,Anass

+0

我想指出的是,即使这个问题被标记为重复(这是正确的),对这个问题给出的最高回答是另一个问题没有提供的有效的,可能的解决方案。 – d60402

回答

13

如果GeoCoding provi偶尔会出现此错误der失败,无法对您的位置进行地理编码。

看到这些相关的帖子:

Geocoder.getFromLocation throws Exception

Geocoder.getFromLocation throws IOException on Android emulator

如果不是这种情况,请确保您有您的清单Internet权限:

<uses-permission android:name="android.permission.INTERNET" /> 
+0

服务不可用 - 地理编码Android当我在一些煮熟的ROM中得到这个错误时,我写了这个库,我希望可以有用。 https://github.com/dnocode/gapis – dnocode

98

有最近使用android设备和地址解析器不起作用的问题: http://code.google.com/p/android/issues/detail?id=38009

重新启动电脑,似乎首先解决这个问题

+87

暗示重启是一个可怕的解决方案。更正确的解决方案更可怕。为我工作。 – djunod

+0

我们在具有不同Android版本的4款设备上使用了此功能。之后从未见过这个问题。 (可能与google play服务更新有关) – Somatik

+0

Wowwww !!! 也适用于我... 接下来,如何在没有'Reboot'设备的情况下工作? – HATCHA

0

尝试更新位置。如下所示

locationManager.requestLocationUpdates(bestProvider, 20000, 1, this); 

参考here

相关问题