带有UIImage的UNNotificationAttachment超出了内存

时间:2019-04-03 13:10:24

标签: swift apple-push-notifications unnotificationserviceextension

我正在尝试将应用资产目录中的图像作为附件显示在推送通知中。

我已将这些文章和问题用作灵感来源: UNNotificationAttachment with UIImage or Remote URL https://www.avanderlee.com/ios-10/rich-notifications-ios-10/

除了一张图像外,该方法效果很好。对于该图像,通知服务扩展名崩溃:

Thread 2: EXC_RESOURCE RESOURCE_TYPE_MEMORY (limit=12 MB, unused=0x0)

在UIImage上调用方法pngData()后发生崩溃。

崩溃似乎与磁盘上映像文件的大小没有直接关系,因为使用此方法的其他几个映像都更大(我们所讨论的范围大约为10KB至25KB)。 / p>

有什么想法可以解决这个问题吗?到目前为止,我尝试使用jpegData(compressionQuality :)进行替代,但是相同的图像仍然会引起问题,而其他图像仍然有效。

1 个答案:

答案 0 :(得分:0)

我终于通过完全不使用资产目录来解决此问题,而是直接将附件保存在捆绑软件中,找到捆绑软件中附件的URL,然后使用此URL在推送中显示附件。