【问题标题】:Removing all push notifications from list when i click on one notification当我单击一个通知时从列表中删除所有推送通知
【发布时间】:2012-11-01 21:37:10
【问题描述】:

我正在实现一个支持苹果推送通知的应用程序。如果我从苹果服务器收到三个通知,那么在 iphone 中,通知列表将显示三个通知,如果我选择其中任何一个通知将根据通知。如果我在 iphone 通知列表中检查剩余的两个通知,则没有推送通知可查看。通知列表显示 没有新通知

而且我的应用程序是通用应用程序。推送通知在带有 ios6 的 iphone4 和 iphone5 中工作正常,但在带有 ios5 的 ipad1 中无法正常工作。

请帮助我。

提前致谢。

【问题讨论】:

    标签: iphone ios ipad


    【解决方案1】:

    当用户在通知中心点击通知时,该方法在 App Delegate 上触发:

    - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions (NSDictionary *)launchOptions {
    
        // You could use the following methods calls:
    
            // To remove the notifications in Notification Center:
            [[UIApplication sharedApplication] cancelAllLocalNotifications];
    
            // To set the badge (0 is no badge at all):
            [[UIApplication sharedApplication] setApplicationIconBadgeNumber:0];
    }
    

    如果您想在用户“正常”返回而不使用通知时也删除通知,请将方法调用添加到:

    - (void)applicationWillEnterForeground:(UIApplication *)application {
    }
    

    我认为不可能只取消一个通知,请查看this post 了解更多信息。


    你用谷歌搜索过这个 iPad 问题吗?我搜索了一下,发现其他人也有同样的问题。事实证明通知正在工作,但您看不到它们出现在锁定屏幕上。查看以下主题:

    或者尝试谷歌一下:https://www.google.nl/search?q=ipad+1+notification+center

    【讨论】:

    • 您好 Tieme,感谢您的回复。如果我写了 [[UIApplication sharedApplication] cancelAllLocalNotifications];那么所有的通知都会被删除,对吧?
    • 嗨,没错。确保将其放置在正确的方法中,并检查它是使用 NSLog 还是断点调用的。
    • 我不想一次取消所有通知。它将根据用户在通知列表中选择通知而取消。
    • Tieme,非常感谢您为我提供了很多宝贵的信息。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-24
    相关资源
    最近更新 更多