百度地图集成过程中的错误归纳
错误一:found libBaiduMapSDK-base_v5_3_0.so error
这个真的是自己太粗心了,创建JniLibs文件夹时,拼写错误,写成了JinLibs,导致so包查找错误。
错误二:maker's icon can not be null
V5.1.0版本起,为了优化SDK的jar包体积,将一些Demo中用到的图片资源文件从SDK的jar包中移到了Demo的资源文件路径下,若有依赖,请在Demo中的资源路径获取,源码Demo下载。路径如下:
BaiduMapsApiASDemo/app/src/main/assets/
你要讲assets目录下的图片复制到你自己的工程里面,改错误解决
错误三:Annotation processors must be explicitly declared now.
在app的build.gradle文件中添加includeCompileClasspath参数:
android {
defaultConfig {
...
javaCompileOptions{
annotationProcessorOptions {
includeCompileClasspath true
}
}
}
...
}
这个错误解决
错误四:Error: Program type already present: com.baidu.android.bbalbs.common.util.CommonParam
jar包冲突,百度看了一下,很多都说删除galaxy_lite_lbs_v2.0.jar,但是删了之后好像没什么用,冲突的是galaxy_lite_lbs_v2.0.jar,protobuf-java-2.3.0-micro.jar和BaiduLBS_Android.jar之间的包冲突,有些包在BaiduLBS_Android.jar里面也加有了,所以我选择删掉前两个jar包冲突的类。具体删类方法参考下面链接:Jar包中删class。
删除之后就没有报错了
错误五: dlopen failed: library "/data/user/0/com.example.mybaidumap/lib/libcrypto.so" not found
百度了一下,看到有的说只留下一个armeabi,吧另外的全删了,我试了一下好像可以,但是后面又会有另外的错,我试了改一下ndk
ndk {
abiFilters "armeabi","x86","x86_64"
}
然后就成功了,好像是so包和手机版本不兼容,
错误六:mNaviHelper报空指针
解决方法,诱导Activity的父类是Activity不是AppCompatActivity
这是我集成百度地图过程中遇到的错误,希望对大家有所帮助