百度地图使用时出现的问题

使用百度地图时遇到一些问题,记录一下

1.初始化报错

java.lang.ExceptionInInitializerError
at com.baidu.mapsdkplatform.comapi.map.k.a(Unknown Source)
at com.baidu.mapapi.map.MapView.a(Unknown Source)
at com.baidu.mapapi.map.MapView.(Unknown Source)

解决方案:
在Application 中添加

	SDKInitializer.initialize(context.getApplicationContext());  
	SDKInitializer.setCoordType(CoordType.GCJ02);

这个问题很难被定位,因为不知道哪里报错,而且需要添加的代码容易被遗忘。

2.lib包含百度so库\jar包,打包成aar文件

so库可以打包到aar,也可以在宿主module中引用
在build.gradle文件中添加

sourceSets{
     baidumap{
        jniLibs.srcDirs('bdlibs')
    }
}

其中的baidumap是渠道名,如果不存在多渠道,应该改为‘main’
bdlibs为存放百度so库的目录
如果不想aar太大的话也可以在宿主module的build.gradle文件中添加上述配置亦可

jar包不建议打包进aar中,可直接在宿主module中引用
在要打包成aar的module中添加jar包,引用使用如下

baidumapCompileOnly files('bdlibs/BaiduLBS_Android.jar')

在宿主module中添加jar包

baidumapImplementation files('bdlibs/BaiduLBS_Android.jar')
发布了7 篇原创文章 · 获赞 1 · 访问量 429

猜你喜欢

转载自blog.csdn.net/hust_edu_csdn_123/article/details/105551453