每当需要下载大量图像时,我的应用程序就会在同步过程中自行关闭。

它在模拟器上可以正常工作,但是当我在设备上运行它时,在控制台中下载了几张带有“由于内存问题终止”警告的图像后,它关闭了。

如果我减少要下载的图像数量,则可以在设备上正常工作。

有什么建议?

最佳答案

这些可能是由于内存问题而发生的。您的模拟器正在Mac PC上运行。因此,应用程序可以轻松运行而不会出现内存问题。但是由于其内存,设备无法处理此问题。

根据您的情况,您正在完成繁重的任务。

  • 主要事情,您必须在异步后台线程中运行下载任务。使用NSURLSessionDownloadTask
  • 尝试减少原始质量的图像,因此您可以获得更快的速度。
  • 转到Xcode并选择"show the debug navigator (left side) and check Memory and Energy Impact"。现在运行该应用程序并执行相同操作。这将帮助您确定应用程序的内存和使用的电量。
  • Instruments可帮助您监视应用程序的崩溃位置。
  • 检查您将通过"Windows->Devices->Select your device on left side -> View Device Logs"获取的崩溃报告,然后选择应用程序的最新崩溃日志。
  • 10-07 19:46
    查看更多