android百度地图sdk定位权限,Android:使用百度地图SDK实现定位:下载SDK、申请密钥、动态获得Android权限...
最近想實現(xiàn)一個打卡的功能,想到可以利用百度地圖的SDK。網(wǎng)上有很多關(guān)于百度地圖SDK定位、地圖功能應(yīng)用的demo,這部分倒不是很困難。但網(wǎng)上很多博客寫的內(nèi)容一般都著重于代碼部分,很多下載配置和編譯器設(shè)置的過程沒有涉及,官方的文檔也基本沒有這類的介紹。這篇博文就主要記錄一下遇到的非代碼部分的坑,雖然大多數(shù)問題都被博學(xué)的網(wǎng)友解決了,但統(tǒng)一整理一下,可以讓之后想簡單使用百度SDK的朋友少花點時間。
下載SDK至libs
在百度地圖SDK的網(wǎng)站上選擇自己需要的功能下載。
下載SDK
然后照常放進libs中,并且添加依賴。
添加依賴
但這樣編譯運行后會跳出found libBaiduMapSDK_base_vx_x_x.so error的錯誤,我看了看.so文件都在libs里呀,那是為什么呢?
查閱后發(fā)現(xiàn)需要在app:build.gradle里添加這樣幾行。
sourceSets{
main{
jniLibs.srcDir 'libs'
//說明so的路徑為該libs路徑,關(guān)聯(lián)所有地圖SDK的so文件
}
}
申請密鑰
百度地圖SDK為了防止被惡意攻擊,需要開發(fā)者申請密鑰使用。但好在申請過程很簡單并且免費,同時可以申請多個。
申請密鑰
申請密鑰時需要提供SHA1和包名,SHA1是安全哈希算法,應(yīng)用于數(shù)字簽名。包名就是APP的包名,如果多個APP要使用,就需要申請多個密鑰,但在同一臺計算機上編譯運行,SHA1似乎都是一樣的。AndroidStudio可以通過如圖的操作查看SHA1,很方便。
查看SHA1
查看SHA1
隨后將獲得的密鑰填入AndroidManifest中。
填寫配置
申請權(quán)限
做完以上配置后,準(zhǔn)備試著運行一下網(wǎng)上找到的代碼demo。
(我這里參考的是https://blog.csdn.net/csdn_aiyang/article/details/80407123)
發(fā)現(xiàn)可以顯示地圖,但是沒有定位功能,遂想到是不是跟定位有關(guān)的權(quán)限沒有申請,隨后查閱了一下百度地圖SDK所需要的權(quán)限,在AndroidManifest中填寫了以下權(quán)限申請。
其中,
是跟定位有關(guān)的權(quán)限,很多網(wǎng)上的博文不知道為啥沒有涉及。
但添加以后發(fā)現(xiàn)還是沒有定位功能,查閱資料后發(fā)現(xiàn),Android6.0以后版本很多權(quán)限需要動態(tài)申請,我測試的手機就是MIUI6+,很坑。按照https://www.jianshu.com/p/dea56f6d7af3介紹的方法一步步做好后就大功告成了,這里就不復(fù)制黏貼了,原博主介紹的很專業(yè)詳細。
總結(jié)
以上是生活随笔為你收集整理的android百度地图sdk定位权限,Android:使用百度地图SDK实现定位:下载SDK、申请密钥、动态获得Android权限...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: android 代码 日历 重复事件设置
- 下一篇: ppt android sdk,《0.A