在某些情况下,我没有获得正确的转发地理编码结果。当我搜索某些地方或酒店时,它会显示其他地方或地区的结果。我有以下代码。我研究了以下link。我应该放置什么网址来获得正确的结果。
我们如何实现以下网站中给出的以下内容
https://developers.google.com/places/webservice/autocomplete
地址请求包含" Vict"结果用法语:
https://maps.googleapis.com/maps/api/place/autocomplete/json?input=Vict&types=geocode&language=fr&key=API_KEY 对包含" Vict"的城市的请求结果巴西人 葡萄牙语:
我已经实施了以下内容,但它并没有像我所说的那样给出结果
- (CLLocationCoordinate2D)addressLocation{
NSError *error = nil;
// NSString *lookUpString = [NSString stringWithFormat:@"http://maps.googleapis.com/maps/api/geocode/json?address=%@&sensor=true", SearchtextField];
// NSString *API_KEY=@"AIzaSyB27SkGBzvEYKcxvZ5nmOVWvrA-6Xqf-7A";
NSString *API_KEY=@"AIzaSyCHcqJcqZbP1XpU-WB4VfRct5hpdgqisSY";
NSString *lookUpString = [NSString stringWithFormat:@"https://maps.googleapis.com/maps/api/geocode/json?address=%@®ion=np&key=%@", SearchtextField,API_KEY];
lookUpString = [lookUpString stringByReplacingOccurrencesOfString:@" " withString:@"+"];
NSData *jsonResponse = [NSData dataWithContentsOfURL:[NSURL URLWithString:lookUpString]];
NSDictionary *jsonDict = [NSJSONSerialization JSONObjectWithData:jsonResponse options:kNilOptions error:&error];
NSArray *locationArray = [[[jsonDict valueForKey:@"results"] valueForKey:@"geometry"] valueForKey:@"location"];
NSString *statusString = [jsonDict valueForKey:@"status"];
if ([statusString isEqualToString:@"OK"])
{
locationArray = [locationArray objectAtIndex:0];
Str_Latitude= [locationArray valueForKey:@"lat"];
Str_Longitude= [locationArray valueForKey:@"lng"];
NSLog(@"LatitudeString:%@ & LongitudeString:%@", Str_Latitude, Str_Longitude);
/*Google place latitude Longitude*/
Arr_LatLong = @[Str_Latitude,Str_Longitude];
[[NSUserDefaults standardUserDefaults] setValue:Str_Latitude forKey:@"Str_Latitude"];
[[NSUserDefaults standardUserDefaults] setValue:Str_Longitude forKey:@"Str_Longitude"];
[[NSUserDefaults standardUserDefaults] synchronize];
GogLatitude = [Str_Latitude doubleValue];
Goglongitude = [Str_Longitude doubleValue];
if (Bool_SearchField) {
[self getGoogleAddress];
Bool_SearchField=FALSE;
}else{
}
}else{
UIAlertView *alertview =[[UIAlertView alloc] initWithTitle:@"Address not found" message:@"make sure you enter a valid address" delegate:self cancelButtonTitle:@"OK" otherButtonTitles: nil];
[alertview show];
NSLog(@"Something went wrong, couldn't find address");
[self.tableView reloadData];
}
GogLocation.latitude = GogLatitude;
GogLocation.longitude = Goglongitude;
return GogLocation;
}
当我在
maps.google.com
中搜索辐射时,它显示如下
但是当我在我的应用程序中搜索时,它会显示不同的位置,然后搜索我的内容
答案 0 :(得分:1)
您可以使用Region Biasing,according to wiki应该NP
。因此,请在查询末尾添加®ion=np
。
或者您可以使用Viewport Biasing来设置搜索范围。
答案 1 :(得分:1)
我已经完成了您在我的某个应用中提出的问题,但网址不同。
我发布了每次在文本字段中输入内容时调用的函数。
ActiveSheet.Close SaveChanges:=True