【发布时间】:2012-06-10 19:49:58
【问题描述】:
我有以下问题:“我的应用程序从自己的服务器接收一些远程通知,只是为了向用户显示一些实用信息。我没有使用图标徽章,因为我不需要它。如果应用程序用户从 iOS 通知中心触摸远程通知,我的应用程序可以毫无问题地捕获它,我收到来自application:didFinishLaunchingWithOptions: 的选项,或者,如果应用程序打开,我使用application:didReceiveRemoteNotification: 选择器捕获远程通知。但是,现在我想从 iOS 通知中心删除这些通知,因为这只是一条消息,我一直在其他帖子中寻找答案,我在我的应用程序中尝试了这些解决方案,但它们不起作用”
接下来是一些解决方案:
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo {
[application cancelAllLocalNotifications];
application.applicationIconBadgeNumber = 0;
...
}
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
...
if (launchOptions) {
[application cancelAllLocalNotifications];
application.applicationIconBadgeNumber = 0;
}
...
}
远程通知仍在 iOS 通知中心,我如何才能在没有任何棘手代码或 iOS SDK 问题的情况下从该位置删除?我认为这不可能是因为 Tweetbot 应用在您进入应用后会从 iOS 通知中心删除其远程通知。
问候!
【问题讨论】:
-
0 反对票这似乎对我也不起作用。我已经尝试过 [UIApplication sharedApplication].applicationIconBadgeNumber = 0;和 [[UIApplication sharedApplication] cancelAllLocalNotifications];有什么建议吗?
标签: ios objective-c push-notification apple-push-notifications