Twilio不调用didReceiveRemoteNotification或UNUserNotifcationRequest委托函数

时间:2018-09-04 22:29:05

标签: apple-push-notifications twilio unusernotificationcenter

基本上,如果应用程序已后台运行,则我将无法在其应用程序的选项卡上正确更新我的徽章图标,因为未调用委托函数didReceiveRemoteNotification和UNUserNotificationCenter,因此我无法存储传入的徽章图标的值。

我已经阅读了很多有关此的文章。正如我使用UNUserNotificationCenter所建议的那样,此didReceiveRemoteNotification可能是一种较旧的委托方法。我使用以下方法注册通知:

    func requestNotifications(application: UIApplication) {
    let center = UNUserNotificationCenter.current()
    center.delegate = self
    center.requestAuthorization(options: [.alert, .sound]) {
        (granted, error) in
        if !granted {
            NSLog("Failed to get token, error: Notifications are not allowed")
        } else {
            DispatchQueue.main.async() {
                application.registerForRemoteNotifications()
            }
        }
    }
}

但是我的appDelegate中的任何委托函数都没有被调用:

    func userNotificationCenter(_ center: UNUserNotificationCenter, willPresent notification: UNNotification, withCompletionHandler completionHandler: @escaping (UNNotificationPresentationOptions) -> Void) {

    func userNotificationCenter(_ center: UNUserNotificationCenter,
                            didReceive response: UNNotificationResponse,
                            withCompletionHandler completionHandler: @escaping () -> Void) {

我不知道我在做什么错。是Twilio还是我这边?我已经正确地完成了所有操作,向用户请求通知权限,然后将center.delegate注册到self上。

此外,“应用”图标上的徽章编号未正确更新。第一次收到通知时始终为2,只有一个通知,那么为什么不只说1?这是Twilio的问题吗?

帮助完全卡住了...

0 个答案:

没有答案