我正在开发一个可以播放几个流的广播播放器应用程序。这个应用程序有一个今天的扩展程序,它通过使用应用程序组“com.myname.myapp”来共享用户默认值的一些数据。现在,每当用户数据发生变化时,我都会收到通知。更改可以来自包含的应用程序和今天的扩展程序。我在容器应用程序中添加了一个观察者来观察NSUserDefaultDidChangeNotification
.
NSNotificationCenter *center = [NSNotificationCenter defaultCenter];
[center addObserver:self
selector:@selector(defaultsChanged:)
name:NSUserDefaultsDidChangeNotification
object:nil];
- (void)defaultsChanged:(NSNotification *)notification {
// do the needful
}
每当我在应用程序本身中进行更改时都会调用该方法,但不会在扩展程序中进行相同的更改时调用。
当扩展程序更改用户默认值时,您是否知道出了什么问题以及需要做什么才能在包含的应用程序中获得通知?不幸的是,没有直接的方法可以告诉容器应用程序用户正在更改某些内容。谢谢!