как я могу обработать push-уведомление, когда мое приложение не запущено - PullRequest
4 голосов
/ 24 января 2011

как я могу обрабатывать push-уведомления, когда мое приложение не запущено, я разрабатываю для ios3. Пожалуйста, помогите

1 Ответ

14 голосов
/ 24 января 2011

Краткий пример:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {    

    NSDictionary *tmpDic = [launchOptions objectForKey:@"UIApplicationLaunchOptionsRemoteNotificationKey"];

    //if tmpDic is not nil, then your app is launched due to an APNs push, therefore check this NSDictionary for further information
    if (tmpDic != nil) {
        NSLog(@" - launch options dict has something ");
        NSLog(@" - badge number is %@ ", [[tmpDic objectForKey:@"aps"] objectForKey:@"badge"]);
        NSLog(@" - ");
    } 

Отредактировано: о NSDictionary, который вы получили из официальной документации Apple:

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

  1. alert - значение может быть либо строкой для сообщения с предупреждением, либо словарь с двумя ключами: тело и шоу-представление. Ценность первого предупреждающее сообщение и последнее является Булево (ложно или верно). Если ложь, то Кнопка просмотра оповещения не отображается. по умолчанию отображается кнопка просмотра который, если пользователь касается его, запускает приложение.
  2. знак - число, указывающее количество элементов данных для загрузки от провайдера. Этот номер для будет отображаться на значке приложения. Отсутствие значка собственности указывает на то, что любое число в настоящее время значок значок должен быть удален.
  3. sound - имя звукового файла в комплекте приложений для воспроизведения в качестве бдительный звук. Если «по умолчанию» указан, звук по умолчанию должен быть играл.

Словарь может также иметь пользовательские данные, определенные поставщиком согласно схеме JSON. свойства для пользовательских данных должны быть указан на том же уровне, что и апс толковый словарь. Тем не менее, пользовательские свойства не должны использоваться для массы передача данных, потому что есть строгое ограничение размера на уведомление (256 байт) и доставка не гарантируется.

...