Firebase iOS получает данные из push-уведомлений - PullRequest
0 голосов
/ 14 мая 2018

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

Мой сервер отправляет уведомление, которое получает мой телефон, и уведомление содержит topic_name, message_body, data_message, sound. Все это работает, хотя я не совсем понимаю, как получить доступ к данным. По сути, я хочу сохранить отправленные данные в переменную.

Как бы я поступил так?

Ответы [ 2 ]

0 голосов
/ 14 мая 2018

полезная нагрузка вот так

{
    "aps" : {
        "alert" : "Notification with custom payload!",
        "badge" : 1,
        "content-available" : 1
    },
     "data" :{
        "title" : "Game Request",
        "body" : "Bob wants to play poker",
        "action-loc-key" : "PLAY"
     }
}

Считать данные полезной нагрузки

@available(iOS 10, *)

    extension AppDelegate : UNUserNotificationCenterDelegate {

        func userNotificationCenter(_ center: UNUserNotificationCenter,
                                    willPresent notification: UNNotification,
                                    withCompletionHandler completionHandler: @escaping (UNNotificationPresentationOptions) -> Void) {
            let userInfo = notification.request.content.userInfo

              if let aps = userInfo["aps"] as? NSDictionary
             {
                let alert = aps["alert"]as? NSString
                let badge = aps["badge"] as? Int
             }
          completionHandler([.alert, .badge, .sound])

    }
0 голосов
/ 14 мая 2018

Пока у вас есть данные, вы можете передавать их в своем коде разными способами.Один из способов - опубликовать уведомление с данными, которые может прослушивать класс / объект, ответственный за использование данных.Лучшее решение для использования зависит от того, как структурировано ваше приложение ...

...