2012-06-21 2 views
2

Могу ли я узнать, какое событие запускает приложение на iOS?Найти событие, запускающее приложение: уведомление баннера, уведомление о предупреждении или значок нажмите?

мне нужно различать следующие:

  1. Иконка водопроводную
  2. уведомление Баннер уведомления
  3. оповещения

В качестве альтернативы, можно просматривать локальные настройки приложения (набор для баннера или оповещение)?

ответ

4

Чтобы определить, было ли приложение запущено с помощью нажатия на уведомление, вам необходимо реализовать 2 метода.

Во-первых, в didFinishLaunchingWithOptions приложений, сделать что-то вроде:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
if ([launchOptions valueForKey:@"UIApplicationLaunchOptionsRemoteNotificationKey"]) { 
// Handle notification 
} 

Второе:

-(void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo { 
if (application.applicationState == UIApplicationStateActive) { 
    // The app was open when a remote notification was received... 
} else { 
    // The app was in the background and just came to the foreground in response to the user pressing the push notification 
} 

}

Вы можете посмотреть, какие типы уведомлений были включены с помощью:

UIRemoteNotificationType notificationTypes = [[UIApplication sharedApplication] enabledRemoteNotificationTypes]; 

Однако вы не можете различать уведомления Banner или Alert.

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