OStack程序员社区-中国程序员成长平台

标题: IOS 7 判断 "Show in Notification Center"是否被禁用 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 11:11
标题: IOS 7 判断 "Show in Notification Center"是否被禁用

我正在使用以下代码来确定用户是否启用了警报通知

UIRemoteNotificationType notificationType =  [[UIApplication sharedApplication] enabledRemoteNotificationTypes];

if (!(notificationType & UIRemoteNotificationTypeAlert))
{

}

当我设置时

Settings -> Notifications -> Appname -> "Show in Notification Center" to YES

并选择警报类型以通知我得到 UIRemoteNotificationTypeAlert 的通知类型

当我设置时

Settings -> Notifications -> Appname -> "Show in Notification Center" to NO

我仍然收到通知类型的 UIRemoteNotificationTypeAlert。有没有办法判断是否

"Show in Notification Center"

设置为否?



Best Answer-推荐答案


简单的答案 - 这不能以编程方式完成。

你可以这样称呼:

UIRemoteNotificationType types = [UIApplicationsharedApplication].enabledRemoteNotificationTypes;

在您的 UIRemoteNotificationType 中给出以下枚举:

typedef enum 
{    
  UIRemoteNotificationTypeNone    = 0,   
  UIRemoteNotificationTypeBadge   = 1 << 0,   
  UIRemoteNotificationTypeSound   = 1 << 1,   
  UIRemoteNotificationTypeAlert   = 1 << 2,   
  UIRemoteNotificationTypeNewsstandContentAvailability = 1 << 3 
}

因此您可以知道用户启用的通知类型,但不知道用户是否为您的应用启用或禁用了通知中心。

关于IOS 7 判断 "Show in Notification Center"是否被禁用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32887812/






欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4