? ? ? ? 最近公司的項(xiàng)目需要在高德地圖上做二次開發(fā)奈附,作為一個(gè)安卓的小菜鳥全度,之前沒(méi)有做過(guò)這種開發(fā),但是還是硬著頭皮把項(xiàng)目做完了斥滤,在這記錄一下集成高德地圖中遇到的一些問(wèn)題将鸵,如果有錯(cuò)誤,希望各位大神指正佑颇。
一顶掉、基礎(chǔ)地圖展示之前的準(zhǔn)備工作
在百度地圖創(chuàng)建應(yīng)用,獲取appKey部分就不說(shuō)了挑胸,直接注冊(cè)痒筒,在應(yīng)用管理的地方創(chuàng)建應(yīng)用就可以,然后下載高德地圖需要的jar文件跟.so文件(這里寫的是3D地圖的集成),上圖:
說(shuō)明:3D地圖才需要添加so庫(kù)凸克,2D地圖無(wú)需這一步驟议蟆。
為了軟件運(yùn)行的時(shí)候,地圖可以正常使用萎战,我們將簽名文件直接放在app目錄下咐容,如圖:
然后再主model的gradle中配置
注意:
1、3D地圖 SDK 和導(dǎo)航 SDK蚂维,5.0.0 版本以后全面支持多平臺(tái) so 庫(kù)(armeabi戳粒、armeabi-v7a、arm64-v8a虫啥、x86蔚约、x86_64),開發(fā)者可以根據(jù)需要選擇涂籽。同時(shí)還需要注意的是:如果您涉及到新舊版本更替請(qǐng)移除舊版本的 so 庫(kù)之后替換新版本 so 庫(kù)到工程中苹祟。
2、navi導(dǎo)航SDK 5.0.0以后版本包含了3D地圖SDK评雌,所以請(qǐng)不要同時(shí)引入 map3d 和 navi SDK树枫。
3、如果build失敗提示com.amap.api:XXX:X.X.X 找不到景东,請(qǐng)確認(rèn)拼寫及版本號(hào)是否正確砂轻,如果訪問(wèn)不到j(luò)center可以切換為maven倉(cāng)庫(kù)嘗試一下。
4斤吐、依照上述方法引入 SDK 以后搔涝,不需要在libs文件夾下導(dǎo)入對(duì)應(yīng)SDK的 so 和 jar 包,會(huì)有沖突和措。
然后就可以根據(jù)說(shuō)明文檔愉快的粘貼了庄呈,哈哈!>势拧抒痒!
二、基礎(chǔ)地圖的展示
第一步颁褂,配置AndroidManifest.xml
然后故响,設(shè)置高德Key
在application標(biāo)簽中加入如下內(nèi)容:
第三步,初始化地圖容器
MapView 是 AndroidView 類的一個(gè)子類颁独, 用于在 Android View 中放置地圖彩届。 MapView 是地圖容器。用 MapView 加載地圖的方法與 Android 提供的其他 View 一樣誓酒,具體的使用步驟如下:
首先在布局xml文件中添加地圖控件:
在項(xiàng)目中使用地圖的時(shí)候需要注意樟蠕,需要合理的管理地圖生命周期贮聂,這非常的重要。
以下示例簡(jiǎn)述地圖生命周期的管理:
第四步寨辩,顯示地圖
AMap 類是地圖的控制器類吓懈,用來(lái)操作地圖。它所承載的工作包括:地圖圖層切換(如衛(wèi)星圖靡狞、黑夜地圖)耻警、改變地圖狀態(tài)(地圖旋轉(zhuǎn)角度、俯仰角甸怕、中心點(diǎn)坐標(biāo)和縮放級(jí)別)甘穿、添加點(diǎn)標(biāo)記(Marker)、繪制幾何圖形(Polyline梢杭、Polygon温兼、Circle)、各類事件監(jiān)聽(tīng)(點(diǎn)擊武契、手勢(shì)等)等募判,AMap 是地圖 SDK 最重要的核心類,諸多操作都依賴它完成吝羞。
在 MapView 對(duì)象初始化完畢之后兰伤,構(gòu)造 AMap 對(duì)象内颗。示例代碼如下:
運(yùn)行您剛完成的工程就可以在您的 APP 中看到高德地圖了钧排。運(yùn)行后的效果如下圖所示:
寫到這一個(gè)基礎(chǔ)的高德地圖就可以出現(xiàn)了,有錯(cuò)誤歡迎指正均澳。菜鳥第一次在網(wǎng)上發(fā)表文章恨溜,希望大神勿噴。