保留读取推送通知

时间:2012-04-13 13:55:00

标签: ios ipad push-notification

我想知道是否可以在Apple的通知中心保留最后5个(例如)阅读通知(当您向上滑动时显示的那个)

我注意到,一旦您点击通知并且"阅读"它,它从列表中消失。这是由应用程序以编程方式完成的,该应用程序向设备发送通知已被读取且可以删除它的消息,或者它是由设备自动完成的,您完全无法控制它。

一位客户表示它看到了一个应用程序执行此操作并保留了最后5个通知,无论是否访问过,但到目前为止,我没有发现任何迹象表明这是可能的

2 个答案:

答案 0 :(得分:2)

嗯,这不是一个非常完整的答案,但我的一位同事成功地完成了这项工作。 他所做的就是停止使用徽章编号进行通知。收到通知时未设置徽章编号,并且在读取通知时未设置徽章编号。

[edit]看来,当您收到通知后将徽章编号设置为0时,iOS会自动清除通知,这是一个未记录的功能。

答案 1 :(得分:1)

您只能“阅读”发送到您应用的通知,并且仅当用户明确使用其“操作”按钮打开您的应用时。如果那是你可以使用的场景:

// Handle local notification if received
if ([launchOptions objectForKey:UIApplicationLaunchOptionsLocalNotificationKey] != nil) {
    NSLog(@"received a local notification = %@", [launchOptions objectForKey:UIApplicationLaunchOptionsLocalNotificationKey]);
    // Do something, save it..
}

// Handle remote notification if received
if ([launchOptions objectForKey:UIApplicationLaunchOptionsRemoteNotificationKey] != nil) {
    NSlog(@"received a remote notification = %@", [launchOptions objectForKey:UIApplicationLaunchOptionsRemoteNotificationKey]);
    // Do something, save it..
}

或其他替代方案(NotificationCenter等),以便在使用它打开应用程序时读取通知并持久保存。