React Native 0.57版本的Android应用在发布模式下启动时崩溃。

4

问题是我们需要使用较新版本的react来构建,以便可以使用API 26或更高版本进行构建,因为这是现在提交到Google Play的新应用程序所要求的。

似乎这是一个问题,在发布版本中babelHelpers没有被正确加载。我不知道如何修复它,因为所有我找到的方法都似乎无法解决这个问题。以下是崩溃应用程序的logcat供参考。

     E/ReactNativeJS: undefined is not a function (evaluating 'babelHelpers.applyDecoratedDescriptor(t.prototype,"notificationsEnabled",[Ve.serializable],{configurable:!0,enumerable:!0,writable:!0,initializer:null})')
09-17 12:32:48.301 11704-11758/? E/AndroidRuntime: FATAL EXCEPTION: mqt_native_modules
    Process: com.***********, PID: 11704
    com.facebook.react.common.JavascriptException: undefined is not a function (evaluating 'babelHelpers.applyDecoratedDescriptor(t.prototype,"notificationsEnabled",[Ve.serializable],{configurable:!0,enumerable:!0,writable:!0,initializer:null})'), stack:
    <unknown>@820:1833
3个回答

1
所以我向react-native提交了一个错误报告,并得到了解决问题的回复。 https://github.com/facebook/react-native/issues/19955#issuecomment-421295617 基本上,新的更改弄乱了很多东西。他们将在以后的版本中修复问题,但有一个解决方法是手动强制导入所需的装饰器导入。我认为对于babelHelpers未正确导入的其他问题,类似的解决方法也是可用的。

0

我在发布模式下遇到了同样的问题,但是针对的是iOS,原因是一个名为"react-native-image-crop-picker"的库。我从我的设备中获得了以下日志:

Termination Description: DYLD, Library not loaded: @rpath/QBImagePicker.framework/QBImagePicker | Referenced from: /var/containers/Bundle/Application/2590E70F-7532-45BC-9FE1-BAC/MyApp.app/MyApp | Reason: image not found

我已经通过使用这个解决方案来修复了它: https://github.com/ivpusic/react-native-image-crop-picker/issues/204#issuecomment-306765126

我的依赖项:

"react": "16.5.0",
"react-native": "0.57.0",
"react-native-image-crop-picker": "0.21.2",

这是您链接到的 iOS。 - ofer2980

0

我曾经遇到过同样的问题,你可以尝试更新 Android JSC:

https://www.npmjs.com/package/jsc-android

但这将设置您的最低 Andoird SKD 构建为 21+。

在我的情况下,这是不可能的,我的客户要求 SKD 18+,所以我不得不将我的 react-native 版本降级到 0.55.4,这解决了问题。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接