有没有办法从placeID获取GSMAddress
。我有兴趣使用从placeID
方法获得的autocompleteQuery
来获取地址。
P.S:我有placeID
并找到了在iOS中获得相应GMSAddress
的方法。
我找到了一个帖子here,但这没有帮助。
谢谢,
答案 0 :(得分:5)
自动完成后,我们会查找一个地方,然后将坐标传递给GMSGeocoder以检索详细信息,但我仍然缺少street_name和street_number。
CREATE TABLE [dbo].[test](
[Surname] [nvarchar](4000) COLLATE SQL_Latin1_General_CP1253_CI_AI NULL,
[First_Name] [nvarchar](4000) COLLATE SQL_Latin1_General_CP1253_CI_AI NULL
) ON [PRIMARY]
我想改用iOS自己的反向地理编码器。
CLLocationCoordinate2D addressCoordinates = CLLocationCoordinate2DMake(latitude,longitude);
GMSGeocoder* coder = [[GMSGeocoder alloc] init];
[coder reverseGeocodeCoordinate:addressCoordinates completionHandler:^(GMSReverseGeocodeResponse *results, NSError *error) {
if (error) {
NSLog(@"Error %@", error.description);
} else {
GMSAddress* address = [results firstResult];
NSLog(@"thoroughfare %@",address.thoroughfare);
NSLog(@"locality %@",address.locality);
NSLog(@"subLocality %@",address.subLocality);
NSLog(@"administrativeArea %@",address.administrativeArea);
NSLog(@"postalCode %@",address.postalCode);
NSLog(@"country %@",address.country);
NSLog(@"lines %@",address.lines);
}
}];
答案 1 :(得分:0)
似乎没有直接从GSMAddress
placeID获取GMSPlace
的方法。
我想到的一种方法是使用GMSGeocoder().reverseGeocodeCoordinate
方法和coordinate
中的GMSPlace
属性。
我遵循的步骤可以概括为:
lookUpPlaceID
方法查找coordinates
coordinates
lookUpPlaceID
反向地理编码
醇>
代码如下:
placesClient?.lookUpPlaceID(placeID, callback: {
(place, error) -> Void in
// Get place.coordinate
GMSGeocoder().reverseGeocodeCoordinate(place!.coordinate, completionHandler: {
(response, error) -> Void in
for addObj in response.results() {
// Address object
}
})
})
欢迎提出意见和更好的解决方案。