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

Expo构建APK成功但无法加载Firestore数据且导航崩溃求助

排查步骤及解决方案

一、先解决日志获取问题(排查核心前提)

  • 通过adb抓取设备日志:
    1. 确保电脑已安装Android SDK且adb命令在系统PATH中
    2. 连接开启USB调试的设备,执行 adb logcat *:E 仅查看错误日志,或用 adb logcat | grep "Firebase\|ReactNative" 过滤关键内容
  • 构建开发版APK查看日志:在eas.json的构建配置中添加 "developmentClient": true,构建完成后安装该APK,可直接在应用内查看调试日志,或通过Expo调试工具连接查看

二、Firestore数据不显示的排查与修复

  • 核对Firebase配置:确保google-services.json已放置在项目根目录,且eas.json的Android构建配置中指定了文件路径:
    "android": {
      "googleServicesFile": "./google-services.json"
    }
    
  • 检查Firestore安全规则:Expo Go调试环境可能使用宽松规则,生产环境需确认规则是否允许目标用户访问,可先临时放开测试:
    rules_version = '2';
    service cloud.firestore {
      match /databases/{database}/documents {
        match /{document=**} {
          allow read, write: if true; // 测试用,验证后需改回符合业务的认证规则
        }
      }
    }
    
  • 对齐依赖版本:package.json中expo-firebase-core、expo-firebase-firestore的版本需与当前Expo SDK版本匹配,版本不兼容会导致生产构建失效

三、导航崩溃的排查与修复

  • 核对导航库版本:@react-navigation/native、@react-navigation/stack等依赖版本需与react-native版本匹配,例如React Native 0.72对应@react-navigation/native@6.1.7左右版本
  • 排查导航代码:生产环境会暴露Expo Go中被忽略的错误,比如未处理的异步操作、未定义的路由参数,检查所有navigate调用的参数是否存在,异步操作是否添加try/catch处理
  • 临时禁用Hermes测试:在eas.json的Android构建配置中添加 "hermesEnabled": false,若崩溃消失,说明Hermes与某依赖不兼容,需升级对应依赖或寻找替代方案

四、package.json与eas.json的调整示例

package.json依赖部分示例

"dependencies": {
  "expo": "~49.0.15",
  "expo-firebase-core": "~12.5.0",
  "expo-firebase-firestore": "~11.5.0",
  "@react-navigation/native": "^6.1.7",
  "@react-navigation/stack": "^6.3.17",
  "react-native": "0.72.6"
  // 其他业务依赖...
},
"devDependencies": {
  "@babel/core": "^7.20.0"
}

eas.json调整示例

{
  "build": {
    "production": {
      "android": {
        "googleServicesFile": "./google-services.json",
        "buildType": "apk"
      }
    },
    "development": {
      "android": {
        "developmentClient": true,
        "googleServicesFile": "./google-services.json"
      }
    }
  },
  "submit": {
    "production": {}
  }
}

内容的提问来源于stack exchange,提问作者Angeles III C. Tablante

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.16 16:49:59