Как обновить токен устройства APNS удаленно - PullRequest
0 голосов
/ 08 ноября 2018

Мое приложение использует удаленное уведомление, чтобы напомнить пользователям о запланированных действиях. Пользователь может быть проинформирован даже через несколько месяцев.

Приложение обновляет токен устройства при каждом запуске (отправляет полученный токен на сервер).

Но есть проблема. Иногда токен устройства становится недействительным. (backend-сервис получил ошибку «Неверный токен» от APNS). Я знаю, что это нормально, что токен устройства может измениться. Но есть случай, когда пользователь устанавливает напоминание через несколько месяцев и не использует приложение в течение этого времени.

Как обновить токен устройства, когда он истек и когда приложение выключено?

1 Ответ

0 голосов
/ 08 ноября 2018

При каждом запуске приложения оно будет вызываться ниже метода AppDelegate, поэтому вам нужно отправлять токен APN при каждом запуске приложения:

func application(_ application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data) {
        let tokenParts = deviceToken.map { data -> String in
            return String(format: "%02.2hhx", data)
        }

        let token = tokenParts.joined()
        print("token :: ", token)
        //TODO:- now you need to send above token to your API that saved this token to user profile


    }
...