在我的应用的SettingsViewController
中,我创建了一个UISwitch
,我想用它来启用/禁用(意味着,安排和取消)本地通知。
我认为我的代码是正确的,因为当我切换开关时实际安排了本地通知,并在我再次切换时取消了。我用几个日志检查一下:
NSLog(@"Local notifications: %@",[[UIApplication sharedApplication] scheduledLocalNotifications]);
我还希望每次用户加载应用时,都会检查通知的状态,以便将UISwitch
设置为正确的初始状态。这似乎也适用于我已编写的代码。
我的问题是,经常在我切换开关后退出模拟器几秒钟(有时是一对,有时是10/15)时,我失去了对本地通知所做的最后一次更改。
我不明白为什么,如果我非常耐心等待退出申请之前(也许是因为我正在做其他事情),最后的改变是通知(安排或取消通知)正确"存储"并且下次加载应用时,通知的状态是正确的(等于它在上一个会话中的状态)。
我只能在模拟器中测试应用程序,因为我还没有Apple开发者帐户。 我知道这可能是问题的原因(如果问题确实是模拟器,我可以暂停这个部分的开发,直到我有一个注册帐户......但我'我想知道原因是什么,或者 - 这会更有意义 - 我做错了什么。)
在安排或取消本地通知时,其他人有同样的慢行为吗?有没有办法加快添加或取消?
如果我从应用程序发布一些代码,请告诉我它是否有帮助。
非常感谢,
@ cdf1982