四稽物、android百度地圖之導(dǎo)航(環(huán)境的配置)
五奄毡、android百度地圖之導(dǎo)航(代碼的拆分和工具類(lèi)的封裝)
大家好,通過(guò)前面三篇百度地圖SDK的教程已經(jīng)有不少同學(xué)脫離了苦海贝或。然而在公司的產(chǎn)品需求下吼过,老衲又一次踩進(jìn)了糞坑。咪奖。啊呸盗忱,又一次踩進(jìn)了百度導(dǎo)航的坑。不過(guò)羊赵,憑著咱程序員頑強(qiáng)的意志力和牛(ruo)逼(ji)的技術(shù)售淡,我又一次干翻了百度的渣渣API和文檔。這不,第一時(shí)間就來(lái)拯救你們了揖闸。
一揍堕、Jar包和so文件
首先我們需要去下載Jar包和so文件。為了防止出錯(cuò)汤纸,我建議大家直接下載demo衩茸,把里面的Jar包和so文件加載進(jìn)自己的project里。下載后放入的結(jié)構(gòu)如下圖:
完成以上的添加后贮泞,需要在 build.gradle 里加上一句代碼以完成對(duì)so文件的加載:
android {
......
ndk {
abiFilters 'armeabi'
}
}
二楞慈、文件的配置
導(dǎo)航和百度地圖一樣需要對(duì) AndroidManifest 進(jìn)行配置,由于我是地圖和導(dǎo)航結(jié)合使用我就直接添加了都需要用到的權(quán)限啃擦,如果有單獨(dú)使用其中一個(gè)的可以自行分離或者不用分離囊蓝。
<!--允許程序打開(kāi)網(wǎng)絡(luò)套接字-->
<uses-permission android:name="android.permission.INTERNET" />
<!--允許程序設(shè)置內(nèi)置sd卡的寫(xiě)權(quán)限-->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<!--允許程序獲取網(wǎng)絡(luò)狀態(tài)-->
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<!--允許程序訪(fǎng)問(wèn)WiFi網(wǎng)絡(luò)信息-->
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<!--允許程序讀寫(xiě)手機(jī)狀態(tài)和身份-->
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<!--允許程序訪(fǎng)問(wèn)CellID或WiFi熱點(diǎn)來(lái)獲取粗略的位置-->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<!--用于訪(fǎng)問(wèn)GPS定位-->
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"></uses-permission>
<!--用于獲取wifi的獲取權(quán)限,wifi信息會(huì)用來(lái)進(jìn)行網(wǎng)絡(luò)定位-->
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"></uses-permission>
<!--用于申請(qǐng)調(diào)用A-GPS模塊-->
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS"></uses-permission>
<!--用于申請(qǐng)獲取藍(lán)牙信息進(jìn)行室內(nèi)定位-->
<uses-permission android:name="android.permission.BLUETOOTH"></uses-permission>
<!-- 開(kāi)啟藍(lán)牙權(quán)限 -->
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN"></uses-permission>
<!-- 快捷方式信息需要從setting中讀取 -->
<uses-permission android:name="com.android.launcher.permission.READ_SETTINGS" />
<!-- 喚醒鎖定 允許程序在手機(jī)屏幕關(guān)閉后后臺(tái)進(jìn)程仍然運(yùn)行 -->
<uses-permission android:name="android.permission.WAKE_LOCK"/>
<!-- 獲取任務(wù)信息 允許程序獲取當(dāng)前或最近運(yùn)行的應(yīng)用 -->
<uses-permission android:name="android.permission.GET_TASKS" />
<!-- 讀寫(xiě)系統(tǒng)設(shè)置 允許讀寫(xiě)系統(tǒng)設(shè)置項(xiàng)-->
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
<!-- 掛載文件系統(tǒng) 掛載令蛉、反掛載外部文件系統(tǒng) -->
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
<!-- 百度定位 -->
<uses-permission android:name="android.permission.BAIDU_LOCATION_SERVICE" />
<!-- 獲取模擬定位信息 -->
<uses-permission android:name="android.permission.ACCES_MOCK_LOCATION" />
<!-- 模擬GPS -->
<uses-permission android:name="android.permission.ACCESS_GPS" />
<!-- 連續(xù)廣播 允許一個(gè)程序收到廣播后快速收到下一個(gè)廣播 -->
<uses-permission android:name="android.permission.BROADCAST_STICKY" />
<!-- 來(lái)電消音 處理?yè)艹鲭娫?huà) 允許程序監(jiān)視聚霜,修改或放棄播出電話(huà)-->
<uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS" />
<!-- 修改聲音設(shè)置 -->
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
<!-- 錄音 錄制聲音通過(guò)手機(jī)或耳機(jī)的麥克 -->
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<!-- 攝影機(jī) -->
<uses-permission android:name="android.permission.CAMERA" />
權(quán)限配置完后,依舊需要對(duì)key和service進(jìn)行配置珠叔,由于直接的文章有蝎宇,這里不再貼出代碼,具體請(qǐng)查閱一祷安、android集成百度地圖(android百度地圖SDK系列)姥芥,到此為止,百度導(dǎo)航的環(huán)境和配置就大功告成了汇鞭,下一篇文章會(huì)是整個(gè)導(dǎo)航最核心的部分-對(duì)導(dǎo)航工具類(lèi)的封裝和代碼的拆分凉唐。