2009-05-26 3 views
2

Я хочу, чтобы мой объект получал уведомление с помощью DeviceToken, становится доступным. Есть ли способ делегировать только определенные функции из UIApplication в мой класс?Как я могу прослушивать didRegisterForRemoteNotificationsWithDeviceToken за пределами делегата приложения

Update:

Я не столько заинтересован в доступе к нему из делегата приложения, у меня уже есть делегат приложения, но хочу, чтобы реагировать на событие через обратный вызов или какой-либо способ наблюдателя, если это возможно.

ответ

1

Несмотря на не помечается как таковой в документации, всеUIApplicationDelegate методы не являются обязательными, так что вы можете просто реализовать те, которые требуются, и игнорировать те, которые вы не делают.

Однако вы, вероятно, захотите реализовать все три метода APS, а не только тот, который указывает на успешность регистрации!

+0

Прошу прощения, мой вопрос может быть не таким ясным. У меня уже есть делегат приложения, но я хочу, чтобы какой-то код работал в одном из моих контроллеров или где можно было реагировать на событие или слушать его. – lolsborn

+1

Создайте протокол APSDelegate, содержащий точные копии прототипов метода 3 APS UIApplicationDelegate. В делетете вашего приложения создайте свойство «apsDelegate» типа id . Реализовать три метода APS, как это: - (недействительными) применение: (UIApplication *) применение didRegisterForRemoteNotificationsWithDeviceToken: (NSData *) deviceToken { [self.apsDelegate применение: применение didRegisterForRemoteNotificationsWithDeviceToken: deviceToken]; } (такой же рисунок для других двух). Теперь ваш контроллер может просто зарегистрироваться у вашего делегата приложения. Боб твой дядя! – hatfinch

Смежные вопросы