• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

ios - PhoneGap iOS LocalNotifications 夏令时

[复制链接]
菜鸟教程小白 发表于 2022-12-12 10:10:47 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

我正在使用(臭名昭著的)Drew Dahlman's Phonegap Local Notifications in iOS .而且它似乎起作用了。

我从来没有写过一行objective-c,也不想写(这可能是我现在遇到麻烦的原因!)但我认为插件工作不正常,会如果可能的话,喜欢修复它。

当我在今天 13:00 设置通知时,它会正确触发。但是,当夏令时生效时,通知会在 14:00 触发,晚了一个小时。

这是因为没有考虑时区吗? Drew 提到将时区设置为 +0000 不是问题,但这是错误信息吗?我应该更新插件以处理时区和夏令时吗?或者在我自己的代码中处理夏令时,并在 DST 处于事件状态时简单地设置日期 -1 小时?

我认为我必须更新 LocalNotification.m 中的第二行,但正如我所说,我不确定将其更新为什么。

UILocalNotification *notif = [[UILocalNotification alloc] init];
notif.timeZone = [NSTimeZone defaultTimeZone];



Best Answer-推荐答案


啊,设置通知时似乎有点奇怪的问题。

示例 1: 当我做这样的事情时,其中 duedate 的值为 2013-04-08T21:30

var d = new Date(duedate).getTime();
d = new Date(d);

plugins.localNotification.add({
date: d,
...

通知被记录为设置为 21:30,如下所示:

通知集:2013-04-08 21:30:00 +0000

示例 2: 如果我这样设置 duedate现在时间是 21:30)

var d = new Date().getTime();

通知被记录为设置为 20:30,如下所示:

通知集:2013-04-08 20:30:00 +0000

但是在第二个示例中,由于夏令时,通知会在 21:30 触发。

解决方案(各种)

我将不得不添加或减去从现在到我希望触发通知的时间差,而不是专门设置日期。

关于ios - PhoneGap iOS LocalNotifications 夏令时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15881445/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap