首页 > 解决方案 > Flutter iOS 版 App 因消耗高内存而崩溃

问题描述

我使用 Bloc 模式开发了一个颤振应用程序。一切都很好,直到我们在 iOS 中遇到内存崩溃。Android 版本运行良好,没有任何内存问题。但是iOS版本的应用程序确实存在内存问题。当导航到另一个页面或每次后台同步时,内存会保持在同一页面上(即使没有导航也会增加内存)。最终,应用程序由于 Xcode 控制台中的“因内存问题而终止”而崩溃。我努力了:

  1. 关闭流
  2. 优化代码
  3. 关闭所有集团。
  4. 使用 Xcode Instruments 查看内存堆(它显示内存泄漏,但没有太多关于保留的任何方法或对象的可用信息。)
  5. 使用 Dart DevTools 来分析应用程序。尽管如此,仍然没有太多可用的信息。
  6. 使用“天文台”查看内存是否在任何特定区域累积。但是没有用。

Android版本运行良好。仅适用于 iOS 的问题可能是什么?我们是否需要明确地在 Flutter 中做一些其他事情来释放 iOS 中的内存?由于我正在关闭块和流,理想情况下应该在关闭它们的同时处理内存吗?请参阅随附的屏幕截图,该屏幕截图显示了 Xcode 中的内存堆。

Xcode中的内存堆

标签: androidiosflutterdartmemory-leaks

解决方案


推荐阅读