我有一个iOS应用程序,其中发送了一些推送通知.我的问题是,在点击后,消息/通知会保留在iOS中的通知中心.下次应用程序打开时如何在通知中心删除我的应用程序通知?
我遇到过人们调用setApplicationIconBadgeNumber零值来清除通知的帖子.这对我来说似乎很奇怪,所以我相信也许存在另一种解决方案?
EDIT1:
我在清除通知时遇到了一些问题.请在这里查看我的代码:
- (void) clearNotifications {
[[UIApplication sharedApplication] setApplicationIconBadgeNumber: 0];
[[UIApplication sharedApplication] cancelAllLocalNotifications];
}
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
if (launchOptions != nil)
{
NSDictionary* dictionary = [launchOptions objectForKey:UIApplicationLaunchOptionsRemoteNotificationKey];
if (dictionary != nil)
{
NSLog(@"Launched from push notification: %@", dictionary);
[self clearNotifications];
}
}
return YES;
}
- (void)application:(UIApplication*)application didReceiveRemoteNotification:(NSDictionary*)userInfo
{
NSLog(@"Received notification: %@", userInfo);
[self clearNotifications];
}
Run Code Online (Sandbox Code Playgroud)
我正在通过Xcode运行App.当应用程序最小化并且我使用通知中心中的通知启动应用程序时,我可以在日志didReceiveRemoteNotification中看到,调用并使用我可以看到的断点,clearNotifications已经运行了.但通知仍然在通知中心挂起.为什么?
是否可以在单击一个推送通知时从通知中心删除推送通知并启动应用程序?
大多数应用似乎都会留下通知.我读到另一个问题:
[[UIApplication sharedApplication] setApplicationIconBadgeNumber:0];
Run Code Online (Sandbox Code Playgroud)
可能会工作,但它不适合我.
一旦点击,Facebook应用程序肯定会删除推送通知.
notifications apple-push-notifications ios notificationcenter
一旦用户选择了其中一个推送通知,我想清除我的应用程序的所有推送通知.
我在这里看过其他线程,说它在iOS中是不可能的.但是我从app store下载了一个应用程序,它做了同样的事情.
我正在推送一些文本到iPhone应用程序.一旦消息被接受和处理应用程序我还是看到消息在通知区域,如果我再次接受消息中的应用得到复制.
我怎么能避免这种情况?一旦接受推送,是否可以将其从通知区域中删除.
换句话说,一次
- (void)application:(UIApplication *)application
didReceiveRemoteNotification:(NSDictionary *)userInfo
Run Code Online (Sandbox Code Playgroud)
执行,我想从通知区域删除通知.