根据 Google 提供的start for google map sdk for iOS进行一系列的设置,这里就不多说了
https://developers.google.com/maps/documentation/ios/start
google map sdk for iOS提供了全套的定位和显示服务,所以不需要调用CoreLocation中的CLLocationManager去管理Location
只需要设置google map的
mapView_.myLocationEnabled = YES;
mapView_.settings.myLocationButton = YES;
就可以实现位置的跟踪。
但是在iOS8之后,同样的设置会无法定位,这是因为苹果在定位服务中强制开发者加入使用location信息的提醒,所以如果没有加入这个提醒,将无法获得定位坐标。
如何去设置提醒呢?很简单:
在XXXViewController.h文件中加入
@property (nonatomic,retain) CLLocationManager *locationManager;
在XXXViewController.m文件的viewDidload:中加入
[_locationManager requestWhenInUseAuthorization];
在XXXViewController.m中加入
- (BOOL)ios8{ return [[[UIDevice currentDevice] systemVersion] isEqual: @"8.0"]; }
在Info.plist中加入
NSLocationWhenInUseUsageDescription:This will be used to obtain or track your location.
这样的键值对
此时你就可以正常使用iPhone的定位功能了。
时间: 2024-10-08 04:05:49