首页 > 解决方案 > 替换 Flutter 库中的 gradle 依赖项

问题描述

我正在编写一个使用“flutter_reactive_ble”插件的 Flutter 应用程序。反过来,该插件使用“RxAndroidBle”Java 库。我对 RxAndroidBle 做了一个小改动,它会编译成 .aar 文件。但是我的 Gradle-fu 不足以弄清楚如何告诉 flutter_reactive_ble 使用我的版本,而不是从网上检索最新版本。如果我可以只指向我的本地 .aar 文件,我会很高兴,但如果我必须从我自己的站点提供它们,那也可以。

构建我的应用程序后,“android/app/build.gradle”文件以:

dependencies {
    . . .
    implementation "com.polidea.rxandroidble2:rxandroidble:1.11.1"
}

我认为这就是我需要改变的地方,但我在 Gradle 文档中找不到的东西看起来像我需要的。

标签: androidfluttergradle

解决方案


我认为覆盖 android 依赖可能会解决您的问题。

in build.gradle file of android project

configurations.all {
   resolutionStrategy {
      force ‘<android library with specific version>’
   }
}

在你的情况下:

force com.polidea.rxandroidble2:rxandroidble:1.11.1

检查此链接以获取更多详细信息

--------------------

用于添加本地项目的依赖项

在您的settings.gradle文件中添加本地项目的映射并包含它

project(':local_project_name').projectDir = new File(settingsDir, '<relative path of project>')

include ':local_project_name'

然后在你项目的 build.gradle 文件中添加一个 resolutionStrategy

configurations.all {
        resolutionStrategy {
            force implementation project(':local_project_name')
        }
    }

推荐阅读