我有一个iPhone应用程序并已实施本地通知。该应用在“设置”中有一个页面,允许用户在事件发生前的指定天数内安排通知。为了确保更改的设置生效每次用户启动应用程序时,我有我的应用程序委托以下:检测到更改的用户默认设置
- (void)applicationDidBecomeActive:(UIApplication *)application {
[[NSUserDefaults standardUserDefaults] synchronize];
[self rescheduleAllNotificationsWithUserNotification:NO];
}
的问题是,在调用rescheduleAllNotificationsWithUserNotification:
需要几秒钟,应用感觉一开始有点呆滞。
如果任何设置已更改,我只需要拨打rescheduleAllNotificationsWithUserNotification:
即可。 有没有办法检测用户是否更改了应用程序激活之间的任何设置,这样我就可以避免总是重新安排通知?
好主意,把它放在后台线程中,当我调用这个方法时,我绝对应该在所有情况下做这件事。但是,如果自上次激活应用程序后设置保持不变,我仍然在寻找一种方法来避免来电。 – 2011-02-09 19:30:56