iOSが送出するNotificationを全てトラップするコールバックが使えると便利な時がたまにありますのでその方法です。
まずコールバック関数を用意します。とりあえず中身はNSLogするだけです。
static void MyCallBack(CFNotificationCenterRef center, void *observer, CFStringRef name,const void *object, CFDictionaryRef userInfo) { NSLog(@"observer: %@", observer); NSLog(@"name: %@", name); NSLog(@"userinfo: %@", userInfo); NSLog(@"object: %@", object); }
次にルートViewControllerのViewDidLoadやAppDelegateのdidFinishLaunchingWithOptionsなどでCFNotificationCenterAddObserverを呼び出しコールバック関数を登録します。
CFNotificationCenterAddObserver(CFNotificationCenterGetLocalCenter(), NULL, MyCallBack, NULL, NULL, CFNotificationSuspensionBehaviorDeliverImmediately);
これですべてのNotificationに対してMyCallbackが呼び出されるようになります。
実際の使用方法はこれで通知を調べて必要そうなものだけハンドリングするコードを書く形になると思います。