Unity添加Firebase后安卓构建报错,如何解决?
Unity集成Firebase安卓构建失败解决方案
先明确:NO-SOURCE提示并非直接诱因
NO-SOURCE是Gradle任务找不到对应源文件的提示(比如某些空的资源/代码任务),通常只是警告级别的信息,不会直接导致构建失败,重点要解决Task :unityLibrary:processReleaseManifest失败的问题,同时先处理R8废弃警告的影响。
步骤1:修复android.enableR8=false废弃问题
- 打开Unity项目的
Assets/Plugins/Android/gradleTemplate.properties文件 - 找到
android.enableR8=false这一行,替换成:
(如果没有这行,直接添加到文件末尾)android.enableR8.fullMode=false - 同时确保文件中包含以下必要配置:
org.gradle.jvmargs=-Xmx4096M android.useAndroidX=true android.enableJetifier=true
步骤2:排查processReleaseManifest失败的核心原因
这个任务失败通常是Manifest文件冲突或配置缺失,按以下步骤排查:
- 检查
Assets/Plugins/Android下所有AndroidManifest.xml文件,看是否有重复的<uses-permission>、<activity>、<service>等标签 - 确认Unity项目Player Settings > Android > Package Name和Firebase控制台中安卓应用的包名完全一致
- 确保
google-services.json已正确放在Assets/Plugins/Android目录,且文件内的包名和项目包名匹配 - 执行
File > Build Settings > Android > Clean Build清理缓存后重新构建
步骤3:修复Firebase导入异常
如果是通过.tgz包导入的Firebase Core,试试以下操作:
- 彻底移除现有Firebase相关内容:在Package Manager中删除com.google.firebase.app,同时删掉
Assets/Plugins/Android下Firebase相关文件(包括google-services.json) - 改用External Dependency Manager重新导入:打开
Window > Package Manager > My Registries,找到Firebase Core并安装,EDM会自动处理依赖和Manifest配置 - 重新下载对应包名的google-services.json,放回
Assets/Plugins/Android目录
步骤4:检查Gradle版本兼容性
确保Unity使用的Gradle版本和Firebase要求匹配:
- 打开
Edit > Preferences > External Tools,查看Android的Gradle路径和版本,建议使用7.0以上版本 - 打开
Assets/Plugins/Android/mainTemplate.gradle,确认dependencies中的Android Gradle Plugin版本和Gradle版本兼容(比如Gradle 7.0对应AGP 7.0.0)
补充:查看详细错误日志
如果以上步骤没解决,勾选Build Settings > Show Console后重新构建,在控制台中找到processReleaseManifest失败的详细堆栈信息,日志会明确指出冲突点或缺失项,针对性修复即可。
内容的提问来源于stack exchange,提问作者TOM
相关产品推荐
相关产品推荐

