如何在iOS(Swift 3)上断开Firebase通知?

时间:2017-06-26 09:01:50

标签: ios swift firebase firebase-notifications

我在使用Firebase通知的应用上工作。我已经在AppDelegate中对其进行了配置,他们的工作正常。

问题:我有一个带开关的设置视图,可以打开/关闭通知,而且我不知道如何禁用通知。我试过这个,但是没有用:

@IBAction func changeSwitch(_ sender: Any) {
    if mySwitch.isOn {
        print("NOTIFICATIONS ON")

        connectToFcm()

    } else {
        print("NOTIFICATIONS OFF")

        FIRMessaging.messaging().disconnect()
    }
}

func connectToFcm() {
    FIRMessaging.messaging().connect { (error) in
        if (error != nil) {
            print("Unable to connect with FCM. \(error)")
        } else {
            print("Connected to FCM.")
        }
    }
}

也许你可以帮助我。

谢谢!

2 个答案:

答案 0 :(得分:7)

可以从设备本身禁用/启用通知,如下所示:

    func switchChanged(sender: UISwitch!) {
    print("Switch value is \(sender.isOn)")

    if(sender.isOn){
        UIApplication.shared.registerForRemoteNotifications()
    }
    else{
        UIApplication.shared.unregisterForRemoteNotifications()
    }
}

答案 1 :(得分:1)

最简单快捷的方法是在关闭通知时从后端数据库中删除设备令牌