在使用百度导航时,有以下几点需要注意:
- manifest清单文件中,AK是否正确、定位服务是否注册
<meta-data
android:name="com.baidu.lbsapi.API_KEY"
android:value="你申请的key" />
<service
android:name="com.baidu.location.f"
android:enabled="true"
android:process=":remote" />
- 将工具包中assets中的文件拷贝至项目assets目录中
- 将工具包中libs中jar包和so库拷贝至项目libs目录中,之后将Jar包添加进项目依赖库、并在build.gradle文件中android{}中添加
sourceSets {
main {
jniLibs.srcDirs = ['libs']
}
}
添加进项目的资源文件、Jar包和so库版本一定要统一,如果用到了百度的多项功能,如百度地图、百度导航等,不要单独下载自己整合,会出现冲突!可以通过下面这个网址,根据自己需求选择不同模块,再进行下载。
最后,重中之重,因为这是官方文档未说明的、很多人不注意,所以很难定位到问题出错模块,纠结了两天,通过对比官方Demo和自己写的实例发现,需要在manifest清单文件中添加你是用的导航sdk的版本号和版本名,如:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:versionCode="6"
android:versionName="3.1.1">
至此,导航模块才能初始化成功。