谷歌地图iOS SDK只适用于一个地区?ios斯威夫特
有谁能告诉我,如何只在特定地区使用谷歌mMp,比如迪拜?我想搜索餐厅、咖啡馆、杂货店等,但只搜索迪拜地区? 我已经为全球做了谷歌地图API,但我不想这样,请帮我在迪拜的一个地区做。 下面是我应用的API。 func fetchNearBySearchPlaces(类型:String,位置:String)谷歌地图iOS SDK只适用于一个地区?ios斯威夫特,ios,swift,Ios,Swift,有谁能告诉我,如何只在特定地区使用谷歌mMp,比如迪拜?我想搜索餐厅、咖啡馆、杂货店等,但只搜索迪拜地区? 我已经为全球做了谷歌地图API,但我不想这样,请帮我在迪拜的一个地区做。 下面是我应用的API。 func fetchNearBySearchPlaces(类型:String,位置:String) { let progressHUD = MBProgressHUD.showHUDAddedTo(self.view, animated: true) progressHUD.l
{
let progressHUD = MBProgressHUD.showHUDAddedTo(self.view, animated: true)
progressHUD.label.text = "Loading..."
let par = NSString(format:"location=%@&radius=%@&types=%@&key=%@",location,"5000",type,serverKey)
let url = NSURL(string: "https://maps.googleapis.com/maps/api/place/nearbysearch/json?\(par)")
print(url)
let request = NSMutableURLRequest(URL:url!)
request.HTTPMethod = "GET"
request.cachePolicy = NSURLRequestCachePolicy.ReloadIgnoringCacheData
let session = NSURLSession.sharedSession()
let task = session.dataTaskWithRequest(request, completionHandler: { (data, response, error) -> Void in
dispatch_async(dispatch_get_main_queue(), {
let dict :NSDictionary?
do
{
dict = try NSJSONSerialization.JSONObjectWithData(data!, options: NSJSONReadingOptions.AllowFragments) as? NSDictionary
print("ASynchronous\(dict)")
let status = dict?.valueForKey("status") as! String
if status == "OK"
{
self.latLongArray = []
self.allMapDataArray = []
print(self.latLongArray)
let results = dict?.valueForKey("results") as! NSArray
print(results)
// let latLongArray = NSMutableArray()
for result in results
{
let location = result.valueForKey("geometry")!.valueForKey("location") as! NSDictionary
self.latLongArray.addObject(location)
self.allMapDataArray.append(result as! NSDictionary)
}
//self.mapView.clear()
self.restaurantsTable.reloadData()
self.particularMarkerCollectionView.reloadData()
print(self.latLongArray)
print(self.allMapDataArray)
let path = GMSMutablePath()
print(self.latLongArray)
for latlong in self.latLongArray
{
let lattitude : Double = Double(latlong.valueForKey("lat")as! NSNumber)
let longitude : Double = Double(latlong.valueForKey("lng")as! NSNumber)
let marker = GMSMarker()
marker.position = CLLocationCoordinate2D(latitude: lattitude, longitude: longitude)
//marker.title = "Austrilia"
marker.icon = UIImage(named:"marker")
marker.appearAnimation = kGMSMarkerAnimationNone
marker.map = self.mapView
path.addCoordinate(CLLocationCoordinate2DMake(lattitude, longitude))
}
let bounds = GMSCoordinateBounds(path: path)
self.mapView.animateWithCameraUpdate(GMSCameraUpdate.fitBounds(bounds, withPadding: 50.0))
progressHUD.hideAnimated(true)
progressHUD.hidden = true
}
else
{
progressHUD.hideAnimated(true)
progressHUD.hidden = true
let messageAlert = UIAlertController(title: "Alert", message: "No Data Found", preferredStyle: .Alert)
let defaultAction = UIAlertAction(title: "OK", style: .Default, handler: nil)
messageAlert.addAction(defaultAction)
self.presentViewController(messageAlert, animated: true, completion: nil)
}
}
catch let error as NSError
{
progressHUD.hideAnimated(true)
progressHUD.hidden = true
print(error.localizedDescription)
}
})
})
task.resume()
}