我正在尝试在我的应用中为本地通知添加徽章和声音,但我没有。 我看到它应该出现的通知,但没有任何声音或徽章...... 谁能告诉我我做错了什么?
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))")
}
}
}
答案 0 :(得分:0)
问题是我从requestAuthorization()方法调用了setDailyNotifications()函数。如果用户批准推送通知,我所做的就是从viewDidLoad调用setDailyNotifications()。