我在我的 iOS 项目中使用来自 Google Places API 的 GMSAutoCompleteViewController。
今天突然间我的 GMSAutoCompleteViewController 不断给我错误“无法加载搜索结果”。
我已经使用新的密钥重新生成了我的 API 密钥。我已经尝试了一切,但仍然有一些它不起作用。
我正在使用Objective-C。任何人都可以帮忙吗?
代码
GMSAutocompleteViewController *acController = [[GMSAutocompleteViewController alloc] init];
acController.delegate = self;
[self.navigationController pushViewController:acController animated:YES];
委托方法
- (void)viewController:(GMSAutocompleteViewController *)viewController
didAutocompleteWithPlace:(GMSPlace *)place {
// Do something with the selected place.
NSLog(@"Place name %@", place.name);
NSLog(@"Place address %@", place.formattedAddress);
NSLog(@"Place attributions %@", place.attributions.string);
NSLog(@"Latitude = %.20f",place.coordinate.latitude);
NSLog(@"Longitude = %.20f",place.coordinate.longitude);
NSLog(@"Type = %@",place.types);
NSLog(@"Place ID = %@",place.placeID);
//[self dismissViewControllerAnimated:YES completion:nil];
[self.navigationController popViewControllerAnimated:YES];
/* Call and API in background to get the address according to the new LAT AND LONG as well
Once get the address from there we can store the latitude and longitude in the cache
if type of search is Postal code then we have to call another web service i.e. FIND ADDRESS to get the whole exact address */
[self callWS_ConvertLatLongWithLatitude:[NSString stringWithFormat:@"%.20f",place.coordinate.latitude]
andLongitude:[NSString stringWithFormat:@"%.20f",place.coordinate.longitude]
inBackground:NO];
}
- (void)viewController:(GMSAutocompleteViewController *)viewController
didFailAutocompleteWithError:(NSError *)error {
NSLog(@"error: %ld", [error code]);
[self.navigationController popViewControllerAnimated:YES];
}
// User canceled the operation.
- (void)wasCancelled:(GMSAutocompleteViewController *)viewController {
NSLog(@"Autocomplete was cancelled.");
[self.navigationController popViewControllerAnimated:YES];
}
// Turn the network activity indicator on and off again.
- (void)didRequestAutocompletePredictions:(GMSAutocompleteViewController *)viewController {
[UIApplication sharedApplication].networkActivityIndicatorVisible = YES;
}
- (void)didUpdateAutocompletePredictions:(GMSAutocompleteViewController *)viewController {
[UIApplication sharedApplication].networkActivityIndicatorVisible = NO;
}