检测未确认的UILocalNotifications

ari*_*old 6 uiapplication ios uilocalnotification

看起来

didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

didReceiveLocalNotification:(UILocalNotification *)notification

仅在用户确认UILocalNotification时触发,例如通过滑动滑块或触摸iOS通知下拉菜单中的条目.

如果用户忽略UILocalNotification并通过单击应用程序图标重新进入应用程序,有没有办法告诉UILocalNotification已关闭?

我应该提到这实际上仅适用于重复通知,因为可以通过观察总计数来检测非重复通知的触发.也就是说,当他们开火时,它就会消失[[UIApplication sharedApplication] scheduledLocalNotifications].

我正在寻找像......

[[UIApplication sharedApplication] unacknowledgedLocalNotifications]

唉,我找不到类似的东西.

Pet*_*rbo 5

那么,你可以查看里面的预定通知[[UIApplication sharedApplication] scheduledLocalNotifications].要查明是否已触发计划的重复通知fireDate,请访问该属性以查看为通知设置的初始日期.然后检查repeatInterval酒店.

所以你有两个变量,一个是初始NSDate,让我们说2013-05-08 12:00,第二个是重复间隔,让我们说每天.通过执行a,[NSDate date]您将获得我现在所在的位置(瑞典)2013-05-09 22:45.所以这意味着有一个用户没有采取行动的通知.

因此,您需要创建一个方法来获取这些参数,然后从初始日期开始迭代,以查看在当前日期时间之前丢失了多少通知.

你会发现有效NSCalendardateByAddingComponents:toDate:options.