Swift, как определить, когда разрешение на push-уведомление изменяется в настройках системы? - PullRequest
0 голосов
/ 11 октября 2019

Пользователь установил приложение и нажал «Не разрешать» и отклонил push-уведомления. А когда приложение активно, пользователь переходит к системным настройкам и предоставляет push-уведомления, а затем возвращается в приложение.

Как определить, что разрешение на уведомление о настройках было изменено, когда приложение активируется, и зарегистрировать вызовдля push-уведомлений?

Ответы [ 2 ]

0 голосов
/ 11 октября 2019

Вы можете проверить это Событие AppDelegates didBecomeActive , используя тот же код. Событие didBecomeActive вызывается каждый раз, когда приложение переходит из фонового состояния в состояние переднего плана.

let center = UNUserNotificationCenter.current()

center.getNotificationSettings { (settings) in

if(settings.authorizationStatus == .authorized) {
    print("Push notification is enabled")
} else {
    print("Push notification is not enabled")
}

}

0 голосов
/ 11 октября 2019

Для iOS 10.0 и более поздних версий вы можете использовать UNUserNotificationCenter.

Вам необходимо импортировать этот

import UserNotifications

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

let center = UNUserNotificationCenter.current()
center.getNotificationSettings { (settings) in

    if(settings.authorizationStatus == .authorized) {
        print("Push notification is enabled")
    } else {
        print("Push notification is not enabled")
    }
}
...