【发布时间】:2014-05-13 17:37:50
【问题描述】:
我试图通过从 MainActivity 启动 IntentService 来获取用户的位置。在服务内部,我尝试对 try 块内的位置进行反向地理编码,但是当我捕获异常并打印时,它显示“等待服务器响应超时”异常。但有几次我得到了位置。所以我认为什么都没有我的代码有问题。但是如果它在 10 次中抛出 8 次异常,它就没有用了。所以你能建议一些避免这种情况的方法吗?
【问题讨论】:
-
Android 上的 GeoCoder 存在大量问题,您将遇到的下一个问题将是 code.google.com/p/android/issues/detail?id=38009,该服务会自行终止,唯一的解决方案是重新启动设备,这是一个完全不可接受的解决方案...您最好将请求直接发送到谷歌的地理编码器网站并解析数据developers.google.com/maps/documentation/geocoding 但是,请注意,数据并不总是一致的,不同的国家定义不同的属性
-
是不是因为我们可以向服务器发送多少请求有一些限制?
-
我确信它有某种限制,但我怀疑这是您的问题(除非您发送垃圾邮件或其他什么)。但同样,即使你没有这样做,你仍然会毫无疑问地遇到我上面提到的问题,所以我建议实施一个替代方案。
-
这里是一个替代示例:stackoverflow.com/questions/19059894/…
标签: android performance