我正在将iOS的SDK SDK应用到我的应用程序中。但是,有两个函数可以注册和取消注册通知:
来自Facebook's login to facebook with ios:
在 viewDidLoad 方法中,通过将此代码添加到方法的末尾来注册您在应用委托中定义的会话更改通知:
[[NSNotificationCenter defaultCenter]
的addObserver:自
选择:@选择(sessionStateChanged :)
名称:FBSessionStateChangedNotification
对象:nil];
和
通过将以下代码添加到 didReceiveMemoryWarning 方法的末尾来取消注册通知:
[[NSNotificationCenter defaultCenter] removeObserver:self];
由于我有很多视图控制器并且所有视图控制器都应该使用facebook的API,我认为我应该在 applicationDidFinishLoadingWithOptions 中实现注册/取消注册方法(对于register
用于通知)
但我不确定是否以及如何实现unregister
的removeObserver命令,因为appDlegate的applicationDidReceiveMemoryWarning 不可用。
答案 0 :(得分:1)
应用程序代理 接收内存警告:
如果没有,另一种选择是使用通知中心:
NSNotificationCenter *center = [NSNotificationCenter defaultCenter];
[center addObserver:self
selector:@selector(whatever:)
name:UIApplicationDidReceiveMemoryWarningNotification
object:nil];
大家都这么说,在我看来,删除内存警告的观察者是不合适的。你将在什么时候恢复它?但是,嘿,如果这是Facebook推荐的......