那麼,現有的討論都沒有爲我提供一個可行的解決方案。所以這裏是我的代碼來顯示本地通知。我錯過了什麼?UILocalNotifications不在預定時觸發
let notification = UILocalNotification()
notification.alertBody = "Reminder" // text that will be displayed in the notification
notification.alertAction = "open"
notification.applicationIconBadgeNumber = 1
notification.soundName = UILocalNotificationDefaultSoundName
notification.fireDate = NSDate(timeIntervalSinceNow: 5)
print("Notification scheduled")
notification.userInfo = ["title": "Test", "UUID": "1"]
notification.repeatInterval = NSCalendarUnit.WeekOfMonth
UIApplication.sharedApplication().scheduleLocalNotification(notification)
我知道,當應用程序在前臺應該有一個事件didReceiveLocalNotification。我沒有在appdelegate的didReceiveLocalNotification或通知中獲取事件。但是,當我使用presentLocalNotificationNow與通知 - 我的應用程序委託didReceiveLocalNotification確實被調用。我也嘗試與其他fireDates,但它不起作用。我錯過了什麼?
哦,我有下面的代碼在我的appdelegate didfinishlaunchingapplication
讓應用= UIApplication.sharedApplication()
let settings: UIUserNotificationSettings =
UIUserNotificationSettings(forTypes: [.Alert, .Badge, .Sound], categories: nil)
application.registerUserNotificationSettings(settings)
application.registerForRemoteNotifications()
iOS 10中的本地通知需要用戶授權。你有代碼獲取授權嗎? - 你現在應該使用UNNotificationRequest,而不是UILocalNotification。 – matt
是的,我要求授權,並且在我的帖子中。 –
關於UNNotificationRequest我無法使用它,因爲我支持iOS 9以及 –