0

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

我使用这些文章和问题作为灵感来源: 带有 UIImage 或远程 URL 的 UNNotificationAttachment 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 之间)。

知道如何规避这个问题吗?到目前为止,我尝试使用 jpegData(compressionQuality:) 代替,但同样的图像再次导致问题,而其他图像则有效。

4

1 回答 1

0

我最终解决了这个问题,根本不使用资产目录,而是直接将附件保存在包中,找到包中附件的 URL,然后使用此 URL 在推送中显示附件。

于 2019-04-05T10:47:28.393 回答