0

我在我的 iOS 应用程序中使用sailThru,我需要在从sailThru 仪表板触发时显示丰富的通知。但是通知以简单推送的形式到达,而应该以 Rich 通知的形式到达。

此外,override func didReceive(_ request: UNNotificationRequest, withContentHandler contentHandler: @escaping (UNNotificationContent) -> Void)ofUNNotificationServiceExtension不会被调用。

请帮助我,为什么它没有被调用。谢谢

4

3 回答 3

0

要获得丰富的通知,请确保在有效负载中添加“mutable_content”键,我们还需要配置所有必需的 UNUserNotification 设置来实现这一点。

我必须解决这个问题。

于 2019-01-28T09:32:26.563 回答
0

如果您认为一切都已完全设置,例如您的服务器传递给您的应用程序的有效负载(更不用说 Krishna 的评论,有效负载应该包括:content-available : 1NotificationServiceExtension、、、NotificationContentExtension等等,那么应该没有问题。

现在,要override func didReceive(_ request: UNNotificationRequest, withContentHandler contentHandler: @escaping (UNNotificationContent) -> Void)触发方法(例如在其中触发断点),您需要使用NotificationService目标运行您的应用程序。

我希望这有帮助。

于 2019-01-15T09:48:47.890 回答
0

您应该检查的一件事是,您的 NotificationServiceExtension 没有占用太多内存 (RAM),因为它在单独的进程上运行,并且如果占用的内存超过几 Mb,它可能会被操作系统杀死。控制台应用程序有助于调试此类问题。

于 2019-01-15T10:03:25.353 回答