ios - 本地通知附件在通知中心消失?
问题描述
一旦通知进入通知中心(设备锁定屏幕或从主屏幕顶部向下滑动),我无法弄清楚为什么我的通知附件不可用。
通知已成功传递,图像在横幅视图中显示为缩略图,并在默认“管理”和“查看”按钮所在的展开或长视图通知中。如果用户在通知处于下拉横幅模式时点击通知,则通知会在应用程序中打开指定的视图控制器,并从通知中抓取图像并显示在视图控制器中。
但是,如果在通知中心进入通知中心后查看通知(即从锁定屏幕查看或从主屏幕顶部向下滑动并从默认的“打开”或“查看”按钮中选择),则图像未传递给指定的视图控制器。另一个通知内容是,但不是图像。
在func userNotificationCenter(_ center: UNUserNotificationCenter, didReceive response: UNNotificationResponse, withCompletionHandler completionHandler: @escaping () -> Void)
位于我的 AppDelegate 的函数中,我有以下代码:
print("ATTACHMENT IS: \(String(describing: response.notification.request.content.attachments.first))")
// GRAB 1ST NOTIFICATION ATTACHMENT AND CONVERT TO UIMAGE AND SET IN MESSAGECONTENT VC
if let attachment = response.notification.request.content.attachments.first {
if attachment.url.startAccessingSecurityScopedResource() {
if let data = NSData(contentsOfFile: attachment.url.path) as Data? {
messageContentVC.messagePicture = UIImage(data: data)
print("MESSAGEPICTURE VAR IS SET TO: \(String(describing: messageContentVC.messagePicture))")
attachment.url.stopAccessingSecurityScopedResource()
}
/* THIS WORKS FINE W/ BANNER DROP DOWN BUT NOT NOTIFCENTER
if let imageData = NSData(contentsOf: attachment.url) {
let image = UIImage(data: imageData as Data)
messageContentVC.messagePicture = image
print("MESSAGEPICTURE VAR IS SET TO: \(String(describing: messageContentVC.messagePicture))")
attachment.url.stopAccessingSecurityScopedResource()
}*/
else {
print("SOMETHING WENT WRONG IN APPDELEGATE TRYING TO PUSH MESSAGEPICTURE.")
print(" ")
print(" ")
} // END ELSE
} // END ATTACHMENT.URL
} // END ATTACHMENT = RESPONSE
我在注释掉的部分尝试了 contentsOfFile 和 contentsOf ,结果相同:只有当用户触摸初始下拉横幅通知时,通知图像才会传递给视图控制器。
前面的“附件是:”语句将可选图像显示为就在上面显示的其余代码之前。每当它到达代码的其余部分时,它都会在“else”语句中结束。
非常感谢任何人可以提供的任何见解或指导。
解决方案
推荐阅读
- asp.net - 如何在epplus的Excel中将图例位置设置为左上角
- react-navigation - 将堆栈设置为'headerMode:“none”'后如何在任何给定页面上显示标题?
- css - css 动画填充模式 foward 更改元素不透明度
- php - PHP FOPEN 函数中的数据未保存到 CSV。改为保存页面 HTML
- html - 我正在解析 html,我不想包含 header 元素的 header img 标签
- http-referer - Javascript 检测访问者来源/推荐人
- vb.net - 加密数据库详细信息时,exe文件在其他PC上不起作用VB2013
- xamarin - Twilio.Initialize 在 xamrin android 中不起作用
- apache-kafka - 我可以在 KSQL 中从表转换为流吗?
- angular - 角度文件上传验证