Ios4 NSUserDefaultsIDChangeNotification和多任务问题

Ios4 NSUserDefaultsIDChangeNotification和多任务问题,ios4,Ios4,我正在使用设置应用程序存储应用程序设置。我还使用userdefaults存储内部应用程序设置(在设置应用程序中未公开)。例如,我使用用户默认值来存储设置应用程序中未公开的最后一个选项卡栏索引 我正在订阅NSUserDefaultsDidChangeNotification,以便在我的应用程序处于后台时侦听设置中的任何更改,并且运行正常 问题是,当我从我的应用程序中更新用户默认值(用于我的内部应用程序设置参数)时,这也会触发NSUserDefaultsIDChangeNotification,这是

我正在使用设置应用程序存储应用程序设置。我还使用userdefaults存储内部应用程序设置(在设置应用程序中未公开)。例如,我使用用户默认值来存储设置应用程序中未公开的最后一个选项卡栏索引

我正在订阅NSUserDefaultsDidChangeNotification,以便在我的应用程序处于后台时侦听设置中的任何更改,并且运行正常

问题是,当我从我的应用程序中更新用户默认值(用于我的内部应用程序设置参数)时,这也会触发NSUserDefaultsIDChangeNotification,这是我不希望看到的

  • 是否可以只听设置应用程序中的设置更改而不听应用程序中的设置更改
  • 只有在应用程序处于后台时才可以收听通知吗?我试图只在applicationWillResignActive(就在进入后台之前)中订阅通知(这对注册很有效),但一旦应用程序再次激活,我就找不到取消注册的方法(ApplicationIDMakeMakeActive似乎不是正确的回调,因为通知在此回调之后传递)
  • 还是有其他简单的方法来实现这一点

  • ApplicationIDMakeMakeActive?您的意思一定是ApplicationIDBecMeactive

    您可以考虑应用Apple Dead Entudio背景和应用程序,而不是应用程序。 当应用程序启动和结束时,也会调用“Active”方法,这意味着您将在通知启动后停止侦听通知(您实际上没有侦听此通知),如果您实现ApplicationIDBecMeactive,则在应用程序结束后开始侦听通知(免费)