重复推送警报 Swift
Repetitive Push Alert Swift
嗨,我正在尝试在 swift 中发出推送警报,该警报会在当地时间每天早上 7 点(不是格林威治标准时间)发出。
这是我的代码:
func scheduleLocalNotification() {
var localNotification = UILocalNotification()
localNotification.timeZone = timeZone
//localNotification.fireDate = Here is where I need help.
localNotification.alertBody = "FooBar"
localNotification.alertAction = "BarFoo"
}
我似乎无法弄清楚如何实现在当地时间每天早上 7 点发送推送通知的代码,而不是仅在 7:00 上午发送一次。我该怎么做呢?是否有一个 NSDate 对象可以做到这一点?不同的代码一起?
谢谢!
使用repeatInterval
字段设置重复并使用NSCalendar计算下一个7点
let calendar = NSCalendar.currentCalendar()
// Calculate the next 7 AM
var date = calendar.dateBySettingHour(7, minute: 0, second: 0, ofDate: NSDate(), options:nil)
if date?.timeIntervalSinceNow < 0 {
date = calendar.dateByAddingUnit(.CalendarUnitDay, value: 1, toDate: date!, options: nil)
}
localNotification.fireDate = date
// Set up a daily repeat
localNotification.repeatInterval = .CalendarUnitDay
localNotification.repeatCalendar = calendar
嗨,我正在尝试在 swift 中发出推送警报,该警报会在当地时间每天早上 7 点(不是格林威治标准时间)发出。
这是我的代码:
func scheduleLocalNotification() {
var localNotification = UILocalNotification()
localNotification.timeZone = timeZone
//localNotification.fireDate = Here is where I need help.
localNotification.alertBody = "FooBar"
localNotification.alertAction = "BarFoo"
}
我似乎无法弄清楚如何实现在当地时间每天早上 7 点发送推送通知的代码,而不是仅在 7:00 上午发送一次。我该怎么做呢?是否有一个 NSDate 对象可以做到这一点?不同的代码一起?
谢谢!
使用repeatInterval
字段设置重复并使用NSCalendar计算下一个7点
let calendar = NSCalendar.currentCalendar()
// Calculate the next 7 AM
var date = calendar.dateBySettingHour(7, minute: 0, second: 0, ofDate: NSDate(), options:nil)
if date?.timeIntervalSinceNow < 0 {
date = calendar.dateByAddingUnit(.CalendarUnitDay, value: 1, toDate: date!, options: nil)
}
localNotification.fireDate = date
// Set up a daily repeat
localNotification.repeatInterval = .CalendarUnitDay
localNotification.repeatCalendar = calendar