0

有没有办法在iOS中取消/清除推送通知? (我知道[launchOptions objectForKey:UIApplicationLaunchOptionsRemoteNotificationKey]返回一个字典,而不是一个通知对象。)如何在iOS中清除推送通知

是否有APN类似像本地通知致电:

  1. [[UIApplication sharedApplication] cancelLocalNotification:notification];清除一个通知。

  2. [[UIApplication sharedApplication] cancelAllLocalNotifications];所有本地通知。 ??

此前(在应用程序的prev版本中)APNs在点击它们时得到清除。 但是,现在他们没有得到清除。我只是不明白为什么?

应享权利的关键看起来像这样在“分配”的provisioning profile:

<key>Entitlements</key> 
<dict> 
    <key>application-identifier</key> 
    <string>74T2SKP33D.com.xyz.abc</string> 
    <key>aps-environment</key> 
    <string>production</string> 
    <key>com.apple.developer.default-data-protection</key> 
    <string>NSFileProtectionComplete</string> 
    <key>get-task-allow</key> 
    <false/> 
    <key>keychain-access-groups</key> 
    <array> 
     <string>74T2SKP33D.*</string> 
    </array> 
</dict> 

我使用的是点对点的个人资料和分发通过testflight应用。

+0

你说的是从通知中心或从锁定屏幕清除它们吗? – Lance

+0

@兰斯:从两个。 –

回答

1
[[UIApplication sharedApplication] unregisterForRemoteNotifications]; 

会为你做诡计。

0

将应用程序的徽章号​​码设置为零将从通知中心删除所有推送通知,并清除图标徽章。

[[UIApplication sharedApplication] setApplicationIconBadgeNumber:0];