我正在创建一个设置页面,允许用户打开和关闭推送通知。这是我的问题。如果用户在初始系统提示时允许推送通知,然后改变主意并将 UISwitch 设置为“否”,则我的关闭开关操作为:
[[UIApplication共享应用程序] unregisterForRemoteNotifications];
但如果您转到手机上的设置应用程序,“允许通知”仍设置为“开”。我知道取消注册它们会使令牌失效,因此他们不会再收到任何通知。但我认为如果设置应用程序仍然说他们允许通知,他们会感到困惑。我是否仍需要将用户从应用程序重定向到设置应用程序以关闭远程通知?或者我可以添加一些代码来将“设置”应用程序中的“允许通知”更改为“关闭”。
您无法从您的应用程序更改设置应用程序。您必须从设置应用程序手动禁用它。正如另一个答案中提到的,您可以提示消息永久禁用(请通过设置应用程序执行此操作)。
第二件事,如果你想让你的服务器知道不要向该设备发送通知
你可以做这样的事情,
如果您想在应用程序内部执行操作,则使用一个标识符并根据推送通知启用和禁用按钮将其发送到服务器。因此,您的服务器端编码使用此标识符并根据该标识符进行工作。就像标识符一样,它是启用的,而不是您的服务器将发送通知,否则不会。
您可以检查该用户设置enable
or disable
Push Notifications
使用以下代码。
启用或禁用 iPhone 推送通知
UIRemoteNotificationType types = [[UIApplication sharedApplication] enabledRemoteNotificationTypes];
if (types == UIRemoteNotificationTypeNone)
// Yes it is..
希望这会有所帮助:)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)