分析下现在 遇到的这个棘手的问题,
本地提醒,nsLocalNotification
1,点击通知栏里面的通知项(同一时间多个通知的话),会调用 多次。《第一次要进来,同一时间的第二次不要进来;下一个时间点的第一次要进来,同上》
-(void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification,这个方法,然后 就会 push多次 “今日提醒”这个 controller?
方案一:定义一个 bool类型的 开关变量,比如:firstIn,只让进入一次,问题是 其它时间的通知也进入不来了。
方案二:定义一个时间的 timer,让它运行 60秒,当是第一秒的时候进入,当是 第30秒的时候进入,然后把timer设置实效。问题是 这个只是让 第一次push进来的时间变的长了,并没有影响第二次push进来啊。
方案三:根据notification自带的 fireDate来判断,定义一个变量来存储这个值,写入缓存当中把它,当他们不同的时候 就进来,相同的时候 就不执行。问题:一次跟一次的 fireDate都不一样啊。
诡异一:为什么回调那么多次,就显示了 两个通知有效啊,明明就两个啊???
诡异二:为什么提示栏里面有两条,而实际提醒的时候是 三次提醒呢???