如果在AppDelegate中为通知添加观察者,我是否需要打扰删除它?

时间:2012-03-05 00:55:11

标签: ios nsnotifications

在AppDelegate的didFinishLaunchingWithOptions

[[NSNotificationCenter defaultCenter] addObserver:self 
                                      selector:@selector(contextChanged:)
                                      name:NSManagedObjectContextDidSaveNotification
                                      object:nil];

这样我可以将更改合并到其他线程的数据中。

问题:我是否需要在applicationWillResignActiveapplicationWillTerminate中删除此侦听器?看起来似乎没有意义。我想我是否在主循环中让这样的监听器永远不会被删除是否正常。

1 个答案:

答案 0 :(得分:7)

你永远不能删除它,但如果你的应用程序在后台收到通知(在这种情况下不会发生),通知将排队并在应用程序再次启动时传递给应用程序(如果应用程序没有被杀死。)

如果您不希望在应用程序处于后台运行时发生通知,则可以在您指出的方法中删除侦听器。

在这种情况下,实际上,没关系。