【问题标题】:Disable minification and uglify in react-native release build for android在 Android 的 react-native 发布版本中禁用缩小和丑化
【发布时间】:2018-01-10 09:45:45
【问题描述】:

我已经在开发环境react-native 应用程序中正常工作。我想测试它的性能并发布了一个构建,它在发布后崩溃了。

01-09 20:16:13.644 23215 23251 E ReactNativeJS: Object type 't' not found in schema.

01-09 20:16:13.648 23215 23251 E ReactNativeJS: Module AppRegistry is not a registered callable module (calling runApplication)

由于源的缩小和丑化,我无法确定崩溃的原因。请你帮我禁用它,因为我已经花了很多时间在它上面。

react-native 版本:0.49.5

【问题讨论】:

  • 您可以尝试将 Sentry 集成到您的应用中。使用源映射,您会在 Sentry 中看到符号化错误,而不是缩小代码。

标签: android react-native realm


【解决方案1】:

将 --minify=false 放在 android/app/build.gradle 的 extraPackagerArgs 中应该可以完成这项工作。

project.ext.react = [
    entryFile: "index.js",
    extraPackagerArgs: [ '--minify=false' ],
];

【讨论】:

  • 还在 gradlew 文档中提到使用 bundleInRelease: false
【解决方案2】:

您可以使用 CLI 工具 Haul 完成此操作

Haul bundle --minify false 应该可以解决问题,如果没有,Haul 也提供其他命令。

【讨论】:

  • 有没有办法通过配置metro来做到这一点?
【解决方案3】:

我认为您应该首先通过取消选中应用内开发人员菜单上的开发模式来测试您的应用。

我遇到了同样的问题,我花了一些时间才弄清楚。

我禁用了开发模式,因此它生成了与发布包相同的 JS 包,我发现了问题并修复了它。

【讨论】:

    【解决方案4】:

    如果有人到这里,这可能会有所帮助:

    node_modules/.bin/haul bundle --dev=false --config=node_modules/react-native-bundle-visualizer/src/webpack.haul.js

    你可以了解更多:

    node_modules/.bin/haul bundle --help

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-13
      • 2021-03-18
      • 2022-06-22
      • 2021-09-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多