使用适用于iOS的新的Google Places API,是否可以根据地点类型/类别过滤通过GMSPlacePicker返回的结果。例如,如果我想返回附近的所有gas_station类型。

基本上,我正在寻找类似GMSAutocompleteFilter的东西,但要寻找GMSPlacePicker。

最佳答案

您可以执行HTTP Nearby Search Request,在request参数中可以设置types=gas_station。在iOS中,您可以使用NSURLSession发出http请求。

样例代码:

  let requestURL = "https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=-33.8670522,151.1957362&radius=2000&types=gas_station&key=YOUR_API_KEY"
  let request = NSURLRequest(URL: NSURL(string:requestURL)!)
  let session = NSURLSession.sharedSession()
  session.dataTaskWithRequest(request,
      completionHandler: {(data: NSData!, response: NSURLResponse!, error: NSError!) in

            if error == nil {
                let object = NSJSONSerialization.JSONObjectWithData(data, options: nil, error: nil) as! NSDictionary
                println(object)

                let routes = object["results"] as! [NSDictionary]
                for route in routes {
                    println(route["name"])
                }
                }
                else {
                    println("Places API error")
                }

    }).resume()

该请求将返回gas_station附近1000米内的-33.8670522,151.1957362

10-05 21:04
查看更多