通知中心中不显示本地通知附件?

我很难弄清为什么通知进入通知中心(设备锁定屏幕,或从主屏幕顶部向下滑动)后,通知附件不可用的原因。

通知已成功传递,在横幅视图中以及默认的“管理”和“查看”按钮所在的展开或长视通知中显示的图像为缩略图。如果用户在通知处于下拉横幅模式时点击通知,则通知会在应用程序中打开指定的视图控制器,并且图像将从通知中获取并显示在视图控制器中。

但是,如果在进入通知中心后查看通知(从锁定屏幕查看或从主屏幕顶部向下滑动并从默认的“打开”或“查看”中选择按钮),图像不会传递到指定的视图控制器。其他通知内容是图像,但不是图像。

在位于我的AppDelegate中的func userNotificationCenter(_ center: UNUserNotificationCenter,didReceive response: UNNotificationResponse,withCompletionHandler completionHandler: @escaping () -> Void)函数中,我具有以下代码:

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

我在注释掉的区域中尝试了contentOfFile和contentsof,结果相同:如果用户触摸了初始下拉横幅通知,则通知图像仅传递给视图控制器。

前面的“ ATTACHMENT IS:”语句将可选图像显示为紧接在上面显示的其余代码之前。每当涉及到其余代码时,它都会以“ else”语句结尾。

任何人都能提供的任何见解或指导都将受到赞赏。

hunanzlzzj 回答:通知中心中不显示本地通知附件?

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/2701277.html

大家都在问