我们已经开发了一个iOS应用程序,允许用户根据给定的时间设置一些警报。这些设置的警报显示在我的应用程序的“警报调度程序”屏幕中。当到达设定时间时,本地通知会触发此告警。
现在,如果用户将其时区从EDT更改为PDT,那么"Alarm scheduler“屏幕将正确显示警报时间,但我的本地通知不会被触发。
例如,假设其美国东部时间上午8:55,用户已将警报设置为在美国东部时间上午9:00触发。现在我的"Alarm scheduler“屏幕将显示闹钟时间为"9:00 AM",现在如果用户将时区更改为PDT,那么"Alarm scheduler”页面将显示正确的"6:00 AM“闹钟时间,并且用户的手机将显示时间为"5:55 AM”。然而,5分钟后,当到达"6:00 AM PDT“时,本地通知不会被触发。
有人能建议如何做到这一点吗?
发布于 2015-01-05 21:01:44
您在安排本地通知时是否发送了时区?
当您发送时区通知时,操作系统会为您完成所有的艰苦工作。
发布于 2015-04-28 16:16:06
这可能对你有帮助..。
在更改系统时区时,
UIApplicationDelegate的--> applicationSignificantTimeChange:
方法会被调用。你可以在那里管理你的东西。
https://stackoverflow.com/questions/25052537
复制相似问题