我目前正在保存一个标志,以禁用我的用户首选项中的通知.我在我的标志中使用该标志didReceieveRemoteNotifications
来显示或跳过进来的通知.但是,当我的应用程序在后台时它仍然显示,我相信我已经正确设置了所有方法并且它没有被击中.有没有办法在应用程序处于后台时抓住此通知并将其从显示中跳过?
NSNumber* enabled = [Helper getBooleanPreference:[Config subscriptionsEnabled]]; if(enabled == nil || [enabled integerValue] == 1) { completionHandler(UIBackgroundFetchResultNewData); }
Sander.. 5
来自Apple文档
发送静默通知需要特殊配置通知的有效负载.如果未正确配置有效负载,则通知可能会显示给用户,而不是在后台传递给您的应用.在您的有效负载中,请确保满足以下条件:
有效负载的aps字典必须包含值为1的content-available键.
有效负载的aps字典不得包含警报,声音或徽章键.
因此,您的推送应包含值为1的内容 - 不包含警报,声音或徽章键.
在这种情况下,您必须显示UILocalNotification
是否要通知用户.
来自Apple文档
发送静默通知需要特殊配置通知的有效负载.如果未正确配置有效负载,则通知可能会显示给用户,而不是在后台传递给您的应用.在您的有效负载中,请确保满足以下条件:
有效负载的aps字典必须包含值为1的content-available键.
有效负载的aps字典不得包含警报,声音或徽章键.
因此,您的推送应包含值为1的内容 - 不包含警报,声音或徽章键.
在这种情况下,您必须显示UILocalNotification
是否要通知用户.