2014-02-03 3 views
1

Моя цель - открыть конкретный экран, когда пользователь нажимает на UILocalNotification из Центра уведомлений iOS.Работа с пользователем, действующим на UILocalNotification

Теперь, если приложение возобновляется из фона, когда пользователь действует на уведомления, я замечаю didReceiveLocalNotification называется:

- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification 

Теперь я могу получить словарь USERINFO от объекта UILocalNotification и открывает правильный экран ,

К сожалению, этот же метод вызывается также, когда мое приложение публикует UILocationNotification в то время как приложение работает на переднем плане:

[[UIApplication sharedApplication] scheduleLocalNotification:localNotification]; 

Как бы я различать 2 случаев?

ответ

2

Он передает вам объект application, содержащий состояние в своем .applicationState.

Следовательно, вы можете убедиться, что он не активен при тестировании ...

if (application.applicationState != UIApplicationStateActive){ 
// do your stuff 
} 

И это все!

+0

Вы правы! Он был отредактирован, чтобы отразить это. – AdamG

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