Как вызвать разные экраны на основе push-уведомлений, полученных в iPhone? - PullRequest
1 голос
/ 09 декабря 2011

В моем приложении для iPhone есть разные контроллеры представления, и я хотел бы вызвать их на основе push-уведомлений, полученных от бэкэнда.Например, если у меня есть контроллеры представления «A» и «B», я запускаю «A», когда пользователь получает сообщение о некоторой активности в «A» (например, «Пожалуйста, завершите операцию в« A ») и запускает экран« B »"если пользователь получает" Пожалуйста, завершите действие в "B"). Кто-нибудь может сказать мне, если это возможно в iPhone, и если да, то как?

1 Ответ

5 голосов
/ 09 декабря 2011

Конечно. Делегат приложения получает уведомление о push-уведомлении либо с помощью метода application:didReceiveRemoteNotification: (если уведомление поступает, когда приложение активно на переднем плане, или если приложение находится в фоновом режиме, а пользователь выводит его на передний план, воздействуя на push-уведомление). уведомление) или application:didFinishLaunchingWithOptions: (если приложение не находилось ни в фоновом режиме, ни на переднем плане, а пользователь запускает его, действуя на основе push-уведомления).

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

...