1.在高德地圖官網(wǎng)上注冊(cè) 成功開發(fā)者
2.添加一個(gè)應(yīng)用 注冊(cè)一個(gè)appKey
3.用cocoa pod 中 寫入 pod 'AMapLocation-NO-IDFA' #定位SDK 下載SDK
4需要在info.plist中追加 NSLocationWhenInUseUsageDescription 或NSLocationAlwaysUsageDescription 等字段,如下圖
5.在appDelegate中 加入Key
? ? funcapplication(_application:UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey:Any]?) ->Bool{ ? ? ? ?AMapServices.shared().apiKey = "7c23cd5d3770XXX9528fe0cf6274d66"
return true
}
6.在你需要定位的頁(yè)面寫入:
? ? ? ? self.locationManager = AMapLocationManager.init()
? ? ? ? self.locationManager.delegate = self//實(shí)現(xiàn)代理
? ? ? ? self.locationManager.locatingWithReGeocode = true//連續(xù)定位是否返回逆地理信息记罚,默認(rèn)NO墅诡。
? ? ? ? self.locationManager.startUpdatingLocation()//開始連續(xù)定位。調(diào)用此方法會(huì)cancel掉所有的單次定位請(qǐng)求桐智。
7.實(shí)現(xiàn)代理方法
//iOS10以上必須實(shí)現(xiàn)該方法末早,要不然無(wú)法調(diào)起下面的代理方法,即無(wú)法獲取定位
? ? funcamapLocationManager(_manager:AMapLocationManager!, doRequireLocationAuth locationManager:CLLocationManager!) {
? ? ? ? locationManager.requestAlwaysAuthorization()
? ? }
?*? @brief 連續(xù)定位回調(diào)函數(shù).注意:如果實(shí)現(xiàn)了本方法酵使,則定位信息不會(huì)通過(guò)amapLocationManager:didUpdateLocation:方法回調(diào)荐吉。
?*? @param manager定位 AMapLocationManager 類焙糟。
?*? @param location 定位結(jié)果口渔。
?*? @param reGeocode 逆地理信息。
?*/
- (void)amapLocationManager:(AMapLocationManager *)managerdidUpdateLocation:(CLLocation *)locationreGeocode:(AMapLocationReGeocode *)reGeocode;