繁体   English   中英

如何使用 Swift 获取推送通知状态?

[英]How to get push notification status using Swift?

在我的应用程序中有一个启用/禁用推送通知的设置。 注册一切正常,我的应用程序收到通知。

现在,当我更改设置时,我也使用UIApplication.shared.unregisterForRemoteNotifications()取消注册。

但是当我尝试获取应用程序已经注册或未使用UIApplication.shared.isRegisteredForRemoteNotifications的状态时,它总是返回true

任何解决方案,我该如何解决?

我已经在我的应用程序中以这种方式实现了推送通知设置。

  • 当用户选择不接受推送通知时,我调用了一个api(带有参数“ isEnabled = false”的updateNotificaitonStatus) ,从而禁用了服务器端的推送通知标志。

  • 因此,只要服务器有一些数据要发送,服务器就会检查是否为用户启用了推送通知?如果没有,则忽略发送通知。

  • 如果用户改变了主意,并启用了来自应用程序的通知,则使用true标志( 带有参数“ isEnabled = true”的updateNotificaitonStatus)进行api调用。

使用此代码

let isRegisteredForRemoteNotifications = UIApplication.shared.isRegisteredForRemoteNotifications
if isRegisteredForRemoteNotifications {
     // User is registered for notification
} else {
     // Show alert user is not registered for notification
}

如果您需要任何教程,请使用

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM