You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Mapbox SDK v11.7.1时遇重复类错误及类缺失问题

解决Mapbox SDK 11.7.1集成时的重复类与类缺失问题

问题根源

你同时引入了新版Mapbox SDK(11.7.1)和大量旧版Mapbox依赖(v9及以下),两者架构完全不兼容:旧版依赖会引入mapbox-android-core,而新版SDK依赖com.mapbox.common,这两个包包含重复的权限类;强行排除任一依赖又会导致必要的初始化类缺失,引发崩溃。

解决方案步骤

  1. 彻底移除所有旧版Mapbox依赖
    删除build.gradle中所有基于v9及以下的Mapbox相关依赖,包括:

    • com.mapbox.mapboxsdk:mapbox-sdk-services:5.0.0
    • com.mapbox.mapboxsdk:mapbox-sdk-turf:5.0.0
    • com.mapbox.mapboxsdk:mapbox-android-plugin-building-v7:0.5.0
    • 所有v9开头的插件(mapbox-android-plugin-markerview-v9、mapbox-android-plugin-places-v9等)
  2. 保留并补充新版Mapbox依赖
    仅保留核心新版SDK,并根据需求添加兼容的新版功能依赖:

    // 核心Mapbox地图SDK(你已添加)
    implementation 'com.mapbox.maps:android:11.7.1'
    // 如需Turf地理计算功能,使用新版Turf依赖
    implementation 'com.mapbox.turf:turf:7.0.0'
    // 如需标记、地点搜索等功能,参考Mapbox 11.x官方文档添加对应新版插件
    
  3. 清理并同步项目

    • 执行File > Sync Project with Gradle Files
    • 清理项目缓存:Build > Clean Project,再Build > Rebuild Project

为什么这样能解决问题

  • Mapbox从v10开始完全重构了SDK架构,旧版v9及以下的依赖与v11.x没有兼容性,必须彻底切换到新版依赖栈。
  • 移除旧版依赖后,mapbox-android-core会被自动剔除,重复类问题自然消失;同时新版SDK的com.mapbox.common依赖会被正确保留,解决初始化类缺失的崩溃问题。

内容的提问来源于stack exchange,提问作者Benny

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.16 13:02:02