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

Flutter电商应用因flutter_braintree依赖旧版Maps SDK无法发布更新

解决flutter_braintree依赖旧版Android Maps SDK导致的Play商店发布警告

方案1:强制升级依赖版本(无需修改包源码)

这是最快捷的处理方式,借助Gradle的依赖解析策略,直接覆盖flutter_braintree指定的旧版SDK版本:

  1. 打开项目根目录下的android/build.gradle文件
  2. 在allprojects区块内,添加resolutionStrategy配置,指定新版Play Services Maps SDK(推荐用17.0.1这类稳定的17.x版本):
allprojects {
    repositories {
        // 保留原有的仓库配置(如google()、mavenCentral()等)
    }

    // 添加以下代码强制指定依赖版本
    configurations.all {
        resolutionStrategy {
            force 'com.google.android.gms:play-services-maps:17.0.1'
        }
    }
}
  1. 执行flutter clean后再运行flutter pub get,重新构建项目即可。

方案2:Fork包并手动更新依赖(兼容问题时用)

如果强制升级后出现兼容性报错(比如flutter_braintree代码依赖旧版SDK的特定API),可以自己维护修改后的包:

  1. 把flutter_braintree的GitHub仓库fork到自己账号下
  2. 克隆fork后的仓库到本地,找到包内的android/build.gradle文件,将其中com.google.android.gms:play-services-maps的版本从16.0.0改为17.0.1或更高17.x版本
  3. 修改项目的pubspec.yaml,将flutter_braintree的依赖替换为你fork的仓库:
dependencies:
  flutter_braintree:
    git:
      url: https://github.com/你的GitHub用户名/flutter_braintree.git
      ref: main # 对应你修改代码的分支名
  1. 执行flutter pub get更新依赖,重新构建项目。

关于ivy.xml文件的说明

你看到的两个ivy.xml文件是Gradle下载依赖时自动生成的缓存文件,不需要手动修改。只要按照上面的方案修改Gradle配置并重新构建,这些文件会自动更新为新的依赖版本。

验证方法

修改完成后,执行flutter build apk --release生成正式包,重新上传到Play商店,查看警告是否消失即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.07 02:38:24