我正在安排一个带有 NSDate 的本地通知,时间设置为晚上 9 点,并将通知的时区设置为 UTC/GMT。
如果我将设备时区设置为 UTC(时间设置为晚上 8.59),那么通知会按预期在晚上 9 点触发。
但是,如果我将设备时区设置为美国西海岸(即直接将其设置为西雅图或库比蒂诺或 PDT 等)并将时间设置为下午 1.59,或者将设备时区设置为美国东海岸并将时间设置为下午 4.59,那么通知不会分别在下午 2 点或 5 点触发。
但我期待它应该这样做,因为当它是世界标准时间晚上 9 点时,当前夏令时在世界标准时间晚上 9 点相当于东部时间下午 5 点和西部时间下午 2 点。
如果我将设备上的时间设置为晚上 8.59,而设备时区为 PDT,则通知将在晚上 9 点触发,即使我已将通知中的时区设置为 UTC/GMT,这是不正确的,因为太平洋夏令时间晚上 9 点不是晚上 9 点世界标准时间。
因此,在我看来,操作系统忽略了我正在设置的通知时区。有没有人有任何解释为什么它不能按预期工作?
谢谢