高德地图定位 3DMap 导航多合一导入后冲突解决

416 阅读1分钟

image.png

中级解决方案,参考第一张插图, impl "com.amap.api:navi-3dmap-location-search:10.0.700_3dmap10.0.700_loc6.4.5_sea9.7.2" 这个这样导包,该导入方式隐藏在高地地图的官方SDK update log 日志文件下,高德开发者有点可恶。

解决方案来源:

企业微信截图_17204257189480.png

duplicate class 标准解决方案,对于该问题是无法解决的,高德地图自身的架构不规范。 参考下图

eg:

    implementation('com.amap.api:3dmap:7.6.0') {  
        exclude group: 'com.amap.api', module: 'navi-3dmap'  
    }  
    implementation('com.amap.api:navi-3dmap:10.0.600_3dmap10.0.600') {  
        exclude group: 'com.amap.api', module: '3dmap'  
    }

附: 可能你在开发的过程中,还有一些地方放或自己写的插件依赖了高德地图 3DMap:9.7.2, 但是该版本官方说让使用,但是的并没有对外发布, 此时你得第三方库只需要将该版本号降低到9.7.1 或 9.7.0, 并制定导入关键字为compileOnly "com.amap.api:3DMap:9.7.0"