Отсутствует значок и звук на местном уведомлении Swift - PullRequest
0 голосов
/ 26 мая 2018

Я пытаюсь добавить значок и звук к локальному уведомлению в моем приложении, но ничего не получаю.Я вижу уведомление, когда оно должно появиться, но без звука или значка ... Может кто-нибудь сказать мне, что я делаю неправильно?

func requestUserPermissionForNotifications(){
    UNUserNotificationCenter.current().requestAuthorization(options: [.alert, .sound, .badge], completionHandler: {didAllow, error in
        if (error != nil) {
            print("Error authorzing notifications")
        } else {
            if (didAllow) {
                self.setDailyNotifications()
                print("User allowed to Push notifications")
            } else {
                print("User did not allow to Push notifications")
            }
        }
    })
}

func setDailyNotifications() {
    var sunday = DateComponents()
    sunday.hour = 11
    sunday.minute = 00
    sunday.weekday = 1
    timeNotification(id: "Sunday", notificationTitle: "Daily reward is waiting", notificationText: "Log in and get your daily reward", timeOfNotification: sunday)
}

func timeNotification(id: String, notificationTitle: String, notificationText: String, timeOfNotification: DateComponents) {
    let trigger = UNCalendarNotificationTrigger(dateMatching: timeOfNotification, repeats: true)
    let content = UNMutableNotificationContent()
    content.title = notificationTitle
    content.body = notificationText
    content.sound = UNNotificationSound.default()
    content.badge = 1

    let request = UNNotificationRequest(identifier: id, content: content, trigger: trigger)

    UNUserNotificationCenter.current().add(request) { (error) in
        if (error != nil) {
            print("Error adding notification \(id) --- \(String(describing: error))")
        }
    }
}

1 Ответ

0 голосов
/ 13 июня 2018

Проблема заключалась в том, что я вызвал мою функцию setDailyNotifications () из метода requestAuthorization ().Все, что я сделал, это вызвал setDailyNotifications () из viewDidLoad, если пользователь одобрил push-уведомления.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...