swift - 在后台收到通知时 didReceiveRemoteNotification 不起作用

标签 swift remote-notifications

App接收本地通知时,didReceiveRemoteNotification有一些操作。当应用程序位于前台时它工作正常。此外,当应用程序在后台收到通知并通过单击通知打开应用程序时。 但当我们打开应用程序而不单击通知时,它不起作用。

如何解决这个问题?

  if let options = launchOptions, notification = options[UIApplicationLaunchOptionsRemoteNotificationKey] as? [NSObject : AnyObject] {
            self.application(application, didReceiveRemoteNotification: notification, fetchCompletionHandler: { (NewData) in

            })
        }

最佳答案

正如您在问题中所说...

Notifications are not working when we open the app, without clicking the notification.

这是你的问题。如果您在点击通知时打开应用程序,它就会并且应该可以工作。 如果您在未点击通知的情况下打开应用程序。这意味着您对通知不感兴趣,而只对打开应用程序感兴趣。 所以你的通知不会有任何内容。

仅当您(用户)点击通知警报/横幅打开应用程序时,您才能获取通知字典。

如果您想在执行任何操作之前收到通知来为您保存它。正如您在下面的评论中提到的。 您可以从 this 进入发布。

关于swift - 在后台收到通知时 didReceiveRemoteNotification 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38994939/

相关文章:

ios - 从 Swift 中的父类(super class)访问子类属性

ios - requestTestAccountTokensWithArraysOfPermissions FBSDK 4.x 版本

Swift:使用命令行工具将 .strings 文件解析为 .csv 文件

android - 如何远程在 react-native-push-notifications 中设置自定义声音

ios - 从静默远程通知加载数据

ios - 如何限制只对某些用户删除 TableView 中的行?

swift - UITableView Cell 显示问题

iOS:点击一个推送通知时,同一应用的其他推送通知消失

ios - 为什么对成员 'Subscript' 的引用不明确?

ios - 如何清除应用中的远程通知?