欢迎到专业群( uni-app 官方技术交流群 1 ) 咨询,群中有相关专业的管理员和群友。
这个报错的核心是:云端打包机在配置 android 工程时,没有解析到 com.google.gms:google-services:4.3.3 这个 gradle 插件依赖。
从你贴的信息看,关键点是:
- 你当前是
hbuilderx 4.87
- 云端打包环境也是
4.87
- 报错是:
could not find com.google.gms.google-services:4.3.3
这里先说明一个重要问题:
你日志里的坐标写成了 com.google.gms.google-services:4.3.3,这个格式本身就不对。正确格式应该是:
com.google.gms:google-services:4.3.3
本助手使用国产模型,生成代码可能不准确。专业的代码生成需要全球顶尖的AI Coding模型。推荐使用uni-agent
中间是 gms:google-services,不是 gms.google-services。
结合知识库里的官方说明,谷歌推送 / fcm 相关配置中,project 级 build.gradle 需要的是:
buildscript {
repositories {
google()
}
dependencies {
classpath 'com.google.gms:google-services:4.3.10'
}
}
allprojects {
repositories {
google()
}
}
本助手使用国产模型,生成代码可能不准确。专业的代码生成需要全球顶尖的AI Coding模型。推荐使用uni-agent
并且官方文档特别提醒:
如果 gradle 版本大于 7.3.0,google-services 版本号应该改成 4.3.14 以上。
参考文档:push > fcm > gradle配置
而你当前 hbuilderx 4.87 对应的云端打包环境,知识库中明确说明已经是很新的 android 构建环境了,远高于 gradle 7.3.0。所以如果你项目里还在用 google-services:4.3.3,很可能会因为版本过旧导致云端打包失败。
建议你按下面顺序排查:
-
先检查项目里是否有手写错误的依赖坐标
重点搜索:
com.google.gms.google-services
本助手使用国产模型,生成代码可能不准确。专业的代码生成需要全球顶尖的AI Coding模型。推荐使用uni-agent
如果有,改成:
com.google.gms:google-services
本助手使用国产模型,生成代码可能不准确。专业的代码生成需要全球顶尖的AI Coding模型。推荐使用uni-agent
-
把 google-services 版本升级
不要再用 4.3.3,建议至少按官方文档要求升到 4.3.14 以上。
如果你是在配置 fcm / 谷歌推送,优先参考官方文档推荐写法。
-
确认仓库里配置了 google()
如果没有 google() 仓库,gradle 也会找不到这个依赖。
-
如果你是在 uni-app 云端打包里配置了谷歌推送相关模块
请确认你配置的是平台支持的 fcm 配置方式,不要自行把原生 gradle 配置随意改写到 manifest.json 里。
目前知识库能确认的是:fcm 的 gradle 依赖配置要求如上,但 manifest.json 里具体怎么填,需要以 dcloud 对应模块文档为准,不能凭原生经验猜配置节点。
-
如果修改后仍然报同样错误
那就更像是云端打包机拉取依赖失败,或者你项目里某个插件仍然强制引用了旧版 google-services。这时需要继续检查:
- 是否集成了 fcm / 谷歌推送插件
- 是否使用了第三方 uts 插件或原生插件
- 插件内部是否写死了
google-services:4.3.3
另外,知识库里也有一个类似案例:有用户云打包时因为 google-services.json 或谷歌服务相关配置问题导致构建失败,说明这类问题通常都集中在“谷歌服务插件版本 / 配置文件 / 模块配置”这几项上。可参考这个社区问题:hbuilderx 云打包报错:missing project_info object,但 google-services.json 文件完整
结论:
你这个报错优先怀疑两点:
google-services 坐标写错了
4.3.3 版本太旧,不适配当前 hbuilderx 4.87 云端打包环境
先把依赖改成正确格式,并把版本升到 4.3.14+,再重新云打包。
如果你愿意,我可以继续帮你定位:把你项目里和“谷歌推送 / fcm / google-services”相关的配置内容贴出来,我可以直接帮你指出是哪一项写错了。