sta*_*set 2 swift unusernotificationcenter swift4
斯威夫特 4 & >iOS 10.0
我想在特定日期和给定时间(比如下午 3 点)安排本地通知。我希望通知总是在下午 3 点发出,无论我在哪个时区(根据时区自动重新安排通知)。
以前,您可以调整UILocalNotifications“时区”来实现这一点,就像这篇 SO 帖子中完美解释的那样。但是,在>iOS 10.0,UILocalNotifications已弃用。
这是我的代码:
func scheduleNotification(title: String, message: String, atDate: Date){
let center = UNUserNotificationCenter.current()
// Create content
let content = UNMutableNotificationContent()
content.title = title
content.body = message
content.sound = UNNotificationSound.default()
// Create trigger
let calendar = Calendar(identifier: .gregorian)
let triggerDate = calendar.dateComponents([.year,.month,.day,.hour,.minute,.second,], from: atDate)
let trigger = UNCalendarNotificationTrigger(dateMatching: triggerDate, repeats: false)
// Create identifier
let identifier = "\(UUID())"
// Create request & add to center
let request = UNNotificationRequest(identifier: identifier,
content: content,
trigger: trigger)
center.add(request, withCompletionHandler: { (error) in
})
}
Run Code Online (Sandbox Code Playgroud)
问题: 如何使通知在时区变化时正确触发?
| 归档时间: |
|
| 查看次数: |
972 次 |
| 最近记录: |