Android原生项目创建了个flutter module,然后gradle build的时候报错:

Caused by: java.lang.AssertionError: Project :app doesn't exist. To custom the host app project name, set `org.gradle.project.flutter.hostAppProjectName=<project-name>` in gradle.properties.. Expression: (appProject != null). Values: appProject = null

就是主module一般名字是app,但是这个名字被改了(很多项目都会把app这个module改为项目自己定义的名字),解决方式:
方式1:在flutter模块的gradle.properties 文件中设置 flutter.hostAppProjectName = app_module_name
比如:
gradle.properties

org.gradle.jvmargs=-Xmx3072m
android.useAndroidX=true
android.enableJetifier=true
kapt.incremental.apt=false
flutter.hostAppProjectName = Signal-Android

虽然方式1是官方文档的解决方案,但是我怎么试都依旧报同样的错误,不知道什么原因。

最后测试发现是应该在项目的根目录下的gradle.properties 文件中设置flutter.hostAppProjectName = app_module_name,而不是在在flutter模块的gradle.properties 文件中设置 flutter.hostAppProjectName = app_module_name

这里采用的方式2解决的。
方式2:在project的settings.gradle文件中将app模块的名字改回成:app,即不要对app进行重命名
//project(’:app’).name = ‘Signal-Android’
project(’:app’)

参考:
官方文档:https://flutter.cn/docs/development/add-to-app/android/project-setup
方案 B - 依赖模块的源码 这部分内容

https://flutter.dev/docs/development/add-to-app/android/project-setup
Option B - Depend on the module’s source code这部分内容

https://blog.csdn.net/jinshitou2012/article/details/110430854

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐