我正在为推送通知构建iOS的静态库。如何知道何时收到推送通知而无法访问AppDelegate
?换句话说,我不希望用户在收到推送通知时调用某些库委托来告诉lib。 AppDelegate
有这种方法didRegisterForRemoteNotificationsWithDeviceToken
,如果我可以在调用该方法时收到通知,那将是完美的。我认为NSNotificationCenter
必须是解决方案,但是没有可以通过添加观察者到NSNotificaitonCenter
接收到这样的通知,当接收到推送通知时它将被触发。或者我错了?如何在没有AppDelegate的iOS中收到推送通知时收到通知?
然而,有一个解决方案,而不是一个干净的,我必须承认,其中一个可以接收AppDelegate
。被用户设置,将其保存到财产做出新AppDelegate
,将路线一切之前设置AppDelegate
。 (在dealloc
,财产应该更新)但是,这意味着只有一个图书馆可以做到这一点,所以我不认为这是做到这一点。这里的代码吧:
{
....
self.applicationDelegate = [UIApplication sharedApplication].delegate;
[UIApplication sharedApplication].delegate = self;
}
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
return [self.applicationDelegate application:application didFinishLaunchingWithOptions:launchOptions];
}
我不知道这是否会工作,但我喜欢这个想法,并想尝试一下。 – thesummersign 2015-04-14 12:33:09