如何获取给定半径ios内的谷歌地点?

时间:2017-07-02 16:00:53

标签: ios swift google-maps google-places-api

我想使用谷歌地图和谷歌地方api返回用户坐标5英里范围内的所有给定位置。我想将每个placeID放入一个数组中供以后使用。任何人都可以在iOS中引导我完成这个过程吗?

1 个答案:

答案 0 :(得分:-1)

higher usage limits的营业执照。 Contact Google sales

谷歌附近搜索最多50,000米(31英里)。 如果您尝试输入超过50,000,则无法正常工作。

还有另一种方法可以找到一个城市的所有餐馆。 谷歌提供文本搜索请求

https://maps.googleapis.com/maps/api/place/textsearch/json?query=restaurants+in+Reno,NV,89501,USA&key={API_KEY}

query = keyword + in + city Name

使用latitude longitude

获取城市名称
http://maps.googleapis.com/maps/api/geocode/json?latlng=39.52963,-119.81380&sensor=true

有关如何使用latitude longitude

获取城市名称的详细信息

https://developers.google.com/maps/documentation/geocoding/start?csw=1#ReverseGeocoding

有关如何使用文本搜索请求的详细信息

https://developers.google.com/places/web-service/search

或者

保存5-6或更多点lat,长期触发您的请求。

然后循环查找这些点内的所有位置。

我试过,在Php中它是工作

在iOS中编写此逻辑绝对有效

$triggerPoints = array("lat1,long1", "lat2,long2", "lat3,long3",....);

foreeach(triggerPoints as $v){
   $reqURL = "https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=$v&radius=[YOUR_RADIUS_VALUE]&type=restaurant&name=panera&key=your-key-here";
   $res = file_get_contents($reqURL);

}