我一直在学习一个很棒的教程,它允许用户输入一个邮政编码,然后一个ListView显示全球各地与邮政编码匹配的地方。单击来自填充ListView的地址后,它的位置将由mapView上的标记显示。
我已经完成了本教程,并且已经掌握了。目前,代码正在使用来自'geonames‘数据库的在线服务来查询所提供的邮政编码,我现在想在我的代码中实现Google,以搜索超市。
geonames使用来自提供的邮政编码的JSON响应,格式如下:
{"postalCodes":[{"adminName2":"El Paso","adminCode2":"041","adminCode1":"CO","postalCode":"80907","countryCode":"US","lng":-104.817034,"placeName":"Colorado Springs","lat":38.876001,"adminName1":"Colorado"}]}以上字符串来自邮政编码'80907‘。
这是geonames的字符串URL:
private static final String GEONAME_RESTURL
= "http://api.geonames.org/postalCodeSearchJSON?maxRows=8&username=demo&postalcode=";我已经阅读了Google文档,并找到了以下“附近搜索请求”搜索字符串:
https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=-33.8670522,151.1957362&radius=500&types=food&name=harbour&sensor=false&key=AddYourOwnKeyHere以下是返回邮政编码匹配的代码:
DataWrapper wrap = new DataWrapper();
wrap = wrap.fromJson(responseString);
return wrap.postalCodes;如何从此找到返回的JSON搜索字符串,如上面所示,以及用于超级市场的Google搜索字符串的geoname结果?
我知道我可以把搜索半径固定在一个指定的数字上,但是我想要收到搜索字符串的匹配,以列出超市。
希望我对这个问题已经足够清楚了!
发布于 2013-02-21 20:03:44
看起来我只是通过使用geonames API来解决这个问题。我不确定它是否像Google一样完整,但是值得一看它的注册。
https://stackoverflow.com/questions/15009985
复制相似问题