iOS开发中,实现类似于闹钟的事件提醒功能,使用本地通知无疑是比较合适的、且简单易行。之前在实现这个功能时,每次都是以完成功能和任务为出发点,匆匆搞定之后,就再也不管了。今天对UILocalNotification做一个较全面的记录。
1、注册本地通知
即通常看到提示用户是否允许接收通知,这步很关键,若不注册即使通知加入系统,时间到了也不会发送。
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
if #available(iOS 8, *) {
self.registerNotificationForiOS8()
} else {
self.registerNotification()
}
return true
}
iOS8版本之后,通知注册与之前不同,需要分别处理
@available(iOS 8, *)
func registerNotificationForiOS8() {
let types: UIUserNotificationType = StringUtils.userNotificationTypeCombine() //由于swift的枚举类型比较恶心,不能用|去连接,因此没