如果我正在搜索商家位置,Geocoder getFromLocationName不返回任何内容。以下是我目前的发现:
我已经在拥有Google地图的1.6,2.1和2.2设备上对此进行了测试。
我正在尝试查找SDK上某处是否存在限制,但除了以下内容之外没有其他限制:
反向的细节数量 地理编码的位置描述可能 变化,例如可能包含 最近的完整街道地址 建筑,而另一个可能包含 只有城市名称和邮政编码。该 Geocoder类需要后端 服务不包括在内 核心android框架。地理编码器 查询方法将返回一个空的 如果没有后端服务,请列出 该平台 (http://developer.android.com/reference/android/location/Geocoder.html)
[更新] 所以经过一夜的研究,我似乎无法让它发挥作用 - 谷歌根本不会给我结果。关于android-developers的一些讨论指出了一个事实,即当Google Navigation出现时,getFromBusinessName被省略了。所以我开始假设谷歌正在撤回一些地理编码服务。
我总是可以创建一个使用Google Geocoder API的网页,但其限制为2500 api通话 - 而且我认为这不合法(lol)。那么我的替代方案是什么?
答案 0 :(得分:1)
我遇到了同样的问题。我发现如果我包含商家/地点名称,地理编码API通常不会返回任何结果,但是如果将其遗漏掉,那么纬度/经度可能会更准确。
我实施了务实的解决方案: 1.使用包含商家/地点名称的字符串调用API 2.如果失败,请再次拨打它,不要使用商家/地点名称,只需要地址
我还没有看到一个没有返回位置的情况,所以它似乎是一个不错的折衷方案,因为它意味着我至少得到位置数据,如果有时不太准确,并且第二个API调用的成本减轻了线程调用。
答案 1 :(得分:0)
尝试这种方法:
1)使用地理编码器将纬度 - 经度转换为地址
2)对Whitepages(或类似服务)进行API调用,特别是reverse_address方法,该方法将为您提供所提及地址的商家名称。
答案 2 :(得分:0)
我找不到要回复的按钮,但是,就像你们所有人一样,我遇到了同样的问题。我还没试过,但听起来很稳固。可能的解决方法位于此处:
Using Google Maps API to get Address of Business
快乐编码:)
修改:忘记该链接并检查一下:http://code.google.com/apis/maps/documentation/places/