Вы можете сделать две вещи.
Один из них - проверить словарь launchOptions
метода UIApplicationDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
, чтобы узнать, было ли приложение запущено через пользователя, нажимающего на уведомление.Если это так, то в этом методе вы можете поместить соответствующий контроллер представления в стек, как обычно при использовании в приложении.
Если приложение уже открыто, но в фоновом режиме, то та же теорияприменяется, но вместо этого используется метод UIApplicationDelegate
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo
См. эту ссылку для получения информации об обработке входящих уведомлений.