在我的iOS应用程序中,我有谷歌地图SDK,我使用GMSPlacePicker来选择特定坐标周围的地方,如下所示:
//center is a CLLocationCoordinate2D
CLLocationCoordinate2D northEast = CLLocationCoordinate2DMake(center.latitude + 0.001,center.longitude + 0.001);
CLLocationCoordinate2D southWest = CLLocationCoordinate2DMake(center.latitude - 0.001,center.longitude - 0.001);
GMSCoordinateBounds *viewport = [[GMSCoordinateBounds alloc] initWithCoordinate:northEast coordinate:southWest];
GMSPlacePickerConfig *config = [[GMSPlacePickerConfig alloc] initWithViewport:viewport];
_placePicker = [[GMSPlacePicker alloc] initWithConfig:config];
[_placePicker pickPlaceWithCallback:^(GMSPlace *place, NSError *error) {
if (error != nil) {
NSLog(@"Pick Place error %@", [error localizedDescription]);
}
else if (place) {
CLLocationCoordinate2D c = place.coordinate;
//place.coordinate doesn't exist
}
}];
但是没有位置。坐标属性,尽管谷歌说在这里
我在Swift工作,但这可能是有帮助的。GMSPlace的'coordinates'属性是可选的,所以它可能不需要有值。你能确认它的存在吗?
作为一种解决方案,我正在使用基于'googlePlaceID'的'lookupPlaceID'调用查找坐标,但它需要额外的API调用。