在iOS中使用Firebase实施通知时出现问题

时间:2019-05-17 17:05:45

标签: ios swift iphone firebase

我正在尝试使用Firebase在我的应用程序上实现推送通知。我正在从Firebase消息传递委托那里获取数据,但未在通知中心中显示。

我已经配置了从Firebase到消息传递委托的所有内容。

   func registerForPushNotifications(application: UIApplication) {
        if #available(iOS 10.0, *) {
            let center  = UNUserNotificationCenter.current()
            center.delegate = self
            center.requestAuthorization(options: [.alert,.sound]) { (granted, error) in
                if error == nil{
                    DispatchQueue.main.async(execute: {
                        application.registerForRemoteNotifications()
                    })
                }
            }
        }
        else {

            let settings = UIUserNotificationSettings(types: [.alert,.sound], categories: nil)
            application.registerUserNotificationSettings(settings)
            application.registerForRemoteNotifications()
        }



    }

1 个答案:

答案 0 :(得分:0)

如果您使用的是较新的UNUserNotifications,则需要正确实现此method,并提供UserNotifications框架的委托。

如果您没有实现此委托,而您的应用程序处于前台,则默认行为是静默通知。这意味着您将不会收到任何视觉通知,但会通过该方法获取通知数据。如果您处于后台,则无论您是否已实现该方法,通知都会正确显示。