You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter应用如何获取实时时间?DateTime.timestamp()与设备时间不符

Flutter中DateTime.timestamp()时间与设备本地时间不符的解决方案

DateTime.timestamp()返回的是UTC标准时间,而你的Galaxy A20s显示的是本地时区时间,两者的时区偏移导致了时间差(比如你遇到的11:23 UTC对应15:51本地时间,差4小时,应该是东四区时区)。

解决方法有两种:

  • 把UTC时间转成本地时区时间:调用toLocal()方法即可得到和设备显示一致的时间
    DateTime correctLocalTime = DateTime.timestamp().toLocal();
    
  • 直接获取本地时间:如果不需要UTC时间,直接用DateTime.now(),它默认返回设备所在时区的本地时间
    DateTime correctLocalTime = DateTime.now();
    

如果要做未来时间计算,建议统一使用本地时间进行操作,避免时区混淆导致计算结果偏差。

内容的提问来源于stack exchange,提问作者Sulaiman Fazli

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 06:34:51