android - 如何在多模块项目中配置 Flutter 模块

标签 android gradle flutter

我有一个由许多模块组成的 android 项目,其中一些模块依赖于另一个模块。我想创建一个新模块,用作我项目的 flutter 原生部分。

所以我想要一个这样的结构:

- root
 |- moduleA
 |- moduleB
 |- moduleC
 |- FlutterModule
   |- lib
   |- ios
   |- android

FlutterModule/android 项目将使用模块 A 中的一些依赖项(可能使用模块 B 和 C)。
问题是主 build.gradle 必须在根文件夹中,而不是在 FlutterModule/android 中,正如 Flutter 所希望的那样。

目前我在打开 FlutterModule 后无法构建 Android 项目,因为它说“AndroidManifest.xml”丢失,但真正的问题是 FlutterModule/android 中缺少 build.gradle。
有一个解决方法 - 我可以先构建 ios 代码(然后编译 dart 代码),然后从我的根文件夹中调用 AndroidStudio 任务来构建 FlutterModule/android 模块,就像普通的 android 项目一样。
这行得通,但不是应该处理的方式......

我知道我不应该在 android/ios 项目中创建 FlutterModule,但这是我们的基础设施现在的工作方式,所以我必须这样做。没有人会同意从这个 moduleA 创建插件并将其发布到 flutter.pub。也没有人会为我创建单个 Flutter 项目的 CI 管道。

最佳答案

好像暂时不支持。在 github 上查看此问题:https://github.com/flutter/flutter/issues/39707#issuecomment-529716918 .

关于android - 如何在多模块项目中配置 Flutter 模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58697945/

相关文章:

gradle - IDEA报告build.gradle.kts中ShadowJar任务的错误,而./gradlew运行正常

logging - flutter :记录器

flutter - 如何将 <dynamic> 转换为 List<String>?

android - 无法在 PhoneGap Android 应用程序上显示数据 URI 图像

java - 单击一个菜单即可更改所有 Activity 的语言

java - 无限垂直世界

java - 无法连接到Android上的本地socketIO Nodejs服务器

java - Android Studio 在项目同步期间抛出异常

java - 该项目使用 Gradle 2.12,它与在 Java 10 或更高版本上运行的 IDEA 不兼容

json - 如何在Dart中定义一个属性可以为null或另一个模型的模型