首先如果你只引入高德地圖那麼在申請的Key是沒有問題的,只要在AppDelegate中設置
[AMapServicessharedServices].apiKey = key;
然後遇到“[MAMapKit] apiKey爲空,請檢查key是否正確設置”的打印信息,只要在AppDelegate中再設置
[MAMapServices sharedServices].apiKey = key;
2.周邊雲檢索標註問題
CloudPOIAnnotation類在sdk裏找不到,可以在高德下載的demo裏面找到,拖到工程裏。另外構造AMapCloudPOIAroundSearchRequest對象,設置雲周邊檢索請求參數的時候,設置center的座標前最好先打印一下座標信息,看看是否已經完成定位了,要是沒定位就開始設置就會出現請求參數的中心座標爲(0,0),造成無法檢索到自有數據。
3.導航的坑
要是要集成導航功能,需要用到3D的地圖,會跟之前的2D地圖相互衝突。要刪掉原先的MAMapKit.framework,引入新的。有試過刪除,莫名報很多錯。乾脆新建了一個工程,按照導航的文檔來集成,基本的地圖功能也能夠實現。
高德導航的語音播報是集成的科大訊飛的,最好調用系統的語音合成。
需要語音識別功能的話要自己集成訊飛的庫,高德集成的好像有修改訊飛庫的工具類(會出現衝突),所以導航的語音播報最好使用 AVSpeechSynthesizer 合成語音(iOS7及以上版本)
4.隱藏系統的藍色精度圈
高德地圖有一個屬性:customizeUserLocationAccuracyCircleRepresentation
是否自定義用戶位置經度圈。默認是NO,顯示系統的藍色樣式。
如果爲YES,會調用代理方法
- (MAOverlayRenderer *)mapView:(MAMapView *)mapView rendererForOverlay:(id)overlay
可以在代理裏面設置自己想要的樣式。
如果需要隱藏掉,只要return nil就可以了。