You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Expo项目预览/生产环境google-services.json配置及EAS构建错误解决

问题解决方案与环境配置指南

一、解决Malformed root json构建错误

该错误直接指向google-services-dev.json文件本身或读取逻辑问题,按以下步骤排查:

  1. 校验JSON格式
    将google-services-dev.json内容粘贴到VS Code等支持JSON语法校验的编辑器中,检查是否存在缺逗号、引号不匹配、括号未闭合等语法错误。
  2. 确认文件路径
    确保google-services-dev.json确实放在项目根目录,路径./google-services-dev.json完全正确(Linux/macOS系统注意区分文件名大小写)。
  3. 重新下载合规配置文件
    从Google Cloud控制台重新生成预览环境的配置文件:
    • 进入对应Google Cloud项目,找到「API和服务」→「Google服务」
    • 添加包名为a.dev的Android应用,下载生成的配置文件并重命名为google-services-dev.json
    • 确保文件内package_name字段与app.config.js中android.package的a.dev完全一致。

二、多环境google-services.json创建与管理

不需要新建Google Play Console项目,同一个Google Cloud项目下即可完成多环境配置:

创建步骤

  1. 生产环境:保留原有包名a,下载对应的google-services.json
  2. 预览环境:在同一Google Cloud项目中添加新的Android应用,包名填a.dev,下载配置文件并重命名为google-services-dev.json

管理方式

  • 将两个配置文件放在项目根目录,通过app.config.js中的APP_VARIANT环境变量自动切换(你当前的代码逻辑是正确的)
  • 确保EAS构建时变量正确传递,在项目根目录的eas.json中添加环境配置:
    {
      "build": {
        "preview": {
          "env": {
            "APP_VARIANT": "preview"
          }
        },
        "production": {
          "env": {
            "APP_VARIANT": "production"
          }
        }
      }
    }
    

三、Expo项目与Google Play Console配置指导

Expo项目配置

你当前的app.config.js逻辑正确,注意以下细节:

  • android.googleServicesFile的路径必须是相对项目根的正确路径
  • 预览和生产环境的android.package(包名)必须与对应google-services.json中的package_name完全匹配
  • Google Maps的API Key需分别在Google Cloud控制台启用「Maps SDK for Android」,并限制对应包名和签名证书(发布构建时需要)

Google Play Console配置

同一个Play Console项目下可创建多个独立应用:

  1. 进入Play Console,点击「创建应用」,分别创建包名为a(生产)和a.dev(预览)的应用
  2. 预览环境的构建包上传到「内部测试」或「封闭测试」轨道,生产环境上传到「生产」轨道
  3. 无需新建Play Console项目,同一项目支持多个不同包名的应用。

四、额外检查点

  • 确保本地EAS CLI和Expo CLI为最新版本:npm install -g eas-cli expo-cli
  • 本地构建前清理Expo缓存:expo r -c
  • 若使用签名证书,预览和生产环境可共用密钥,也可单独创建,但需在Google Cloud控制台的API密钥限制中添加对应证书指纹。

内容的提问来源于stack exchange,提问作者user42195

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.08 20:05:29