内存不足应用程序崩溃 React Native
Out of memory Application crash React Native
使用 React Native 0.33
几秒钟后,应用程序停止(仅在 Android 上测试)
查看 android 日志,我得到:
我不知道如何检查这个问题。
这解决了我的问题:
将此添加到您的 "android/app/src/main/AndroidManifest.xml"
<application android:largeHeap="true"
使用以下内容可能对您有所帮助
<application android:largeHeap="true">
但是您可能需要检查您的应用程序是否存在内存泄漏。例如:
- 未发布 timers/listeners 添加到 componentDidMount
- 闭包范围泄漏。
- 大图像尺寸。
- 全局变量的使用。
我们的 React 本机应用程序也面临同样的问题。我们花了很多时间和精力来使我们的应用程序稳定一些。你可以看看这个博客,它对我们帮助很大 https://blog.swmansion.com/hunting-js-memory-leaks-in-react-native-apps-bd73807d0fde
更新:
在 API 中连续加载大量数据至少在低端设备上会增加 RAM 的负载,从而导致内存不足问题。您还需要清理它并找到更好的优化方式来加载数据。
对于 Android:在清单文件 Android 标签中
application android:largeHeap="true"
android:hardwareAccelerated="true"
For iOS:在构建阶段下捆绑 React Native 代码和图像部分
export NODE_BINARY=node
export NODE_ARGS=--max-old-space-size=8192
export NODE_OPTIONS=--max-old-space-size=8192
../node_modules/react-native/scripts/react-native-xcode.sh
此外,如果您的应用从网络加载图像,则使用下面的库
https://github.com/fungilation/react-native-cached-image
使用 React Native 0.33 几秒钟后,应用程序停止(仅在 Android 上测试)
查看 android 日志,我得到:
我不知道如何检查这个问题。
这解决了我的问题:
将此添加到您的 "android/app/src/main/AndroidManifest.xml"
<application android:largeHeap="true"
使用以下内容可能对您有所帮助
<application android:largeHeap="true">
但是您可能需要检查您的应用程序是否存在内存泄漏。例如:
- 未发布 timers/listeners 添加到 componentDidMount
- 闭包范围泄漏。
- 大图像尺寸。
- 全局变量的使用。
我们的 React 本机应用程序也面临同样的问题。我们花了很多时间和精力来使我们的应用程序稳定一些。你可以看看这个博客,它对我们帮助很大 https://blog.swmansion.com/hunting-js-memory-leaks-in-react-native-apps-bd73807d0fde
更新: 在 API 中连续加载大量数据至少在低端设备上会增加 RAM 的负载,从而导致内存不足问题。您还需要清理它并找到更好的优化方式来加载数据。
对于 Android:在清单文件 Android 标签中
application android:largeHeap="true"
android:hardwareAccelerated="true"
For iOS:在构建阶段下捆绑 React Native 代码和图像部分
export NODE_BINARY=node
export NODE_ARGS=--max-old-space-size=8192
export NODE_OPTIONS=--max-old-space-size=8192
../node_modules/react-native/scripts/react-native-xcode.sh
此外,如果您的应用从网络加载图像,则使用下面的库
https://github.com/fungilation/react-native-cached-image