Push-уведомление — действие кнопки просмотра

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

Как мне заставить его работать, чтобы после нажатия кнопки «Просмотр» я увидел «Контент» в приложении?

Моя идея (например): Я получаю Push-уведомление следующего содержания: Сегодня вы получаете скидку 30% в нашем магазине.

После нажатия «Просмотреть» я войду в приложение и смогу прочитать полное сообщение со всем содержимым. Я имею в виду работу как блог. Push-уведомление — это предварительная статья, а кнопка «Просмотреть» — тег «Подробнее». И в моем приложении у меня есть несколько статей, которые я могу прочитать. Как здесь: http://www.myfitapp.de/fitnessstudio-app/push-nachrichten/

Является ли это возможным? И как?


person emitremmus    schedule 13.06.2012    source источник


Ответы (2)


Да, конечно, это возможно. Но вы не можете отправить много контента с помощью push-уведомления. v Всего push-уведомление может занимать не более 256 байт.

Что вы можете сделать, так это добавить некоторые данные в userInfo уведомления, связать идентификатор. Затем, после того как пользователь откроет ваше приложение, вы получите содержимое с сервера, проанализировав идентификатор в уведомлении.

Если ваше приложение не запускается, когда пользователь нажимает на уведомление

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


   NSDictionary *remoteNotif = [launchOptions objectForKey: UIApplicationLaunchOptionsRemoteNotificationKey];
   if (remoteNotif) {
      ///Handle the notification
   } 

   /* Your regular init  */

   return YES; 
}

Если ваше приложение работает, этот метод вызывается:

- (void) application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo {
  ///Handle the notification
}

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

--

Часть push-уведомления с информацией о пользователе — это просто JSON, Полезная нагрузка уведомления.

{
    "aps" : {
        "alert" : "You got your emails.",
        "badge" : 9,
        "sound" : "bingbong.aiff"
    },
    "acme1" : "bar",
    "acme2" : 42
}

В этом примере от Apple часть aps JSON указывает приложению отображать 9 на значке значка и «Вы получили свои электронные письма». как текст сообщения. При получении этого уведомления система ищет в пакете приложений звук bingbong.aiff и, если находит, воспроизводит его.

Другие ключи, amce1 и amce2 отправляются с уведомлением, и вы можете получить доступ к словарю, который является push-уведомлением.

person rckoenes    schedule 13.06.2012
comment
Хорошо, мне ясно, что это невозможно с Push-уведомлением. Есть ли какой-нибудь учебник, как это реализовать. Я читал про библиотеку Apple, но тут мне не очень понятно. Я имею в виду, что в приложении должна быть возможность после нажатия кнопки VIEW загрузить полное сообщение (возможно, с изображением). Также должно быть возможно, что я могу видеть и читать все мои предыдущие сообщения, которые я уже получил. - person emitremmus; 13.06.2012
comment
Вы не можете видеть какие-либо предыдущие или другие push-уведомления, кроме того, которое пользователь щелкнул, чтобы открыть ваше приложение. - person rckoenes; 13.06.2012
comment
Вы можете отправить контент с помощью push-уведомления - person Gruntcakes; 13.06.2012
comment
Да можно, но не настолько. вам нужно сохранить общий размер push-уведомления до 256 байт. Таким образом, это делает контент, который вы можете отправить с уведомлением, очень маленьким. Будет разумнее отправить какой-нибудь идентификатор с уведомлением и получить контент с сервера. - person rckoenes; 13.06.2012
comment
Хорошо, но как я могу это сделать? У вас есть пример кода для меня? Я имею в виду, что мое приложение Push работает нормально, но я хочу отправлять информацию с помощью Push. Я много читал в библиотеке Apple и в Google, но ничего толком не нашел. - person emitremmus; 22.06.2012
comment
Добавьте пример push-уведомления. - person rckoenes; 14.09.2012

Вы можете перенаправить свое приложение на любой конкретный вид, когда ваше приложение получит уведомление. Метод делегата для этого:

 - (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo 

Вы также можете передать дополнительные параметры в словарь userInfo со стороны сервера в соответствии с вашими требованиями, например: blog_id в вашем случае и передать этот идентификатор в свое представление, которое вы хотите загрузить на кнопку «Просмотр» или «Подробнее».

person spaleja    schedule 13.06.2012
comment
Хорошо, можешь привести пример? Возможно для блога WordPress? я хочу использовать статьи из блога WordPress. Было бы здорово. :) - person emitremmus; 13.06.2012
comment
Было бы неплохо, если бы вы могли привести мне пример... Не знаю, как это реализовать. - person emitremmus; 14.06.2012
comment
любой пример для этого? возможно, с идентификатором блога WordPress? - person emitremmus; 22.06.2012