我正在尝试每小时安排一次本地通知。问题是我在这样的不规则时间内获取通知。大约在10分钟,第二秒或30分钟内。有时我突然在同一秒钟收到10条通知。我不知道我在这里犯了什么错误。我事先表示歉意,我才刚开始学习敏捷。
这是我的代码。
@objc func LocalNotificationHour() {
let user = UNUserNotificationCenter.current()
user.requestAuthorization(options: [.alert,.sound]) { (granted, error) in}
let content = UNMutableNotificationContent()
content.title = "Local Notification"
content.body = "Test."
let trigger = UNTimeIntervalNotificationTrigger(timeInterval: (60*60), repeats: true)
let uuid = UUID().uuidString
let request = UNNotificationRequest(identifier: uuid, content: content, trigger: trigger)
user.add(request) { (error) in print("Error")}
}
答案 0 :(得分:0)
您的函数是否有可能被多次运行,因此安排了多个通知重复执行?如果您不希望收到这些通知,那么可以一次/一次接收多个通知。
在这种情况下,请尝试在user.removeAllPendingNotificationRequests()
下添加行let user = UNUserNotificationCenter.current()
。这将删除您的应用在安排新通知之前可能已安排的所有待处理通知。