React Native Eas build破坏了应用程序,而经典expo build运行良好

qv7cva1a  于 2023-01-02  发布在  React
关注(0)|答案(4)|浏览(156)

我有一个EAS建设的问题(博览会),我的应用程序大小约为~ 60 MB(使用博览会建设:Android),该建设是工作刚刚好,(我正在使用物理手机).
我已经建立了相同的应用程序,没有变化,与eas建设,有一个崩溃。
我如何运行eas构建:第一个月
我如何运行世博会建设:expo build:android -t apk
我想指出的是,当运行Grandle时,我没有收到任何错误,构建也很好
这是我的eas.json

{
  "build": {
      
    "preview": {

      "android": {
        "buildType": "apk"
        
      }
    },
    "preview2": {
      "android": {
        "gradleCommand": ":app:assembleRelease"
      }
    },
    "preview3": {
      "developmentClient": true
    },
    "production": {}
  },
  "cli": {
    "version": ">= 0.48.2"
  }
}

我怎么能检查崩溃的日志?有人有类似的东西吗?也许不同的解决方案,使应用程序更小?

vm0i2vca

vm0i2vca1#

在我的例子中,如果第一个屏幕上缺少环境变量,应用程序将崩溃。
问题是我把变量放在了.env文件中,这个文件可以在经典版本中使用,但在eas版本中不起作用。
如果是这种情况,你需要在eas.json文件中声明你的环境变量,或者通过expo网站为你的应用创建一个敏感值的秘密。
您可以在这里阅读更多信息:https://docs.expo.dev/build-reference/variables/

fdx2calv

fdx2calv2#

有没有木头?
我遇到了1个关于Android Gradle插件需要Java 11才能运行的问题。您当前使用的是Java 1.8.EXPO.dev,而我使用的是Firebase,那么问题是.gitignoregoogle-service.json.env,根据此评论,这两个问题未上传到EAS构建版本中。

7uhlpewt

7uhlpewt3#

我遇到了同样的问题,正在调试。
这里是一个很好的起点--如果你用的是Mac,连接一个Android设备并运行:

adb logcat '*:S' ReactNative:V ReactNativeJS:V

这将帮助您记录相关错误并调试问题。简单地运行adb logcat会记录大量无法管理的数据。

f8rj6qna

f8rj6qna4#

问题和答案实际上都在this post中,但我将在这里简要概述一下。
我也遇到过同样的.env变量未定义的问题,问题是你的.gitignore文件中的文件没有上传到组装你的构建的eas机器上,但是你可以创建.easignore文件,它是你的.gitignore文件的副本,不包括你的.env文件。

相关问题