I’m using local notification in my app but have a problem handling them correctly.
When app is running, and active, in didReceiveLocalNotification I can fetch user settings from NSUserDefaults and handle the repeating notification, and cancel it if fire date isn’t the day it should fire, or show an alert if it’s correct date.
However, when app is running, but inactive, the notification will fire although it shouldn’t.
Same thing when app is not running, the notification will fire although it shouldn’t.
Question
When app is not running, and when app is inactive, how can I access NSUserDefaults and cancel the notification before the alert show up?
Edited answer
The reason I had to ask this was because of bad app design and logic. I tried to set repeating local notification no matter what settings user has set and access NSUserDefaults in it although I should have access user settings first in app itself and then set notifications accordingly.
You can’t. a
UILocalNotificationis handled by iOS and not your app.Only when your app is active the notification get directly pushed to you app.
In all other cases the os will just show the notification.