管理当地时间和时区


Manage local hours and timezones

我开发了一个Android应用程序,用户可以从组织的数据库服务器中检索事件。每个事件都有一个日期和一个小时。

我的问题是:

  • 我的服务器在巴黎,现在是下午6点。
  • 用户在纽约,现在是中午。

用户登录并检索今天在纽约计划的活动。服务器进入日期超过当前日期的数据库事件。问题是,服务器在当天比用户晚,因此用户不会看到下午计划的事件。

我该如何解决这个问题?

我可以获取用户和事件的时区,但我如何管理?服务器是将巴黎时区中事件的所有日期放入数据库中,还是我让本地时间的事件进入数据库。

  • 例如:计划在纽约中午举行的活动,我应该使用本地时区(中午)还是服务器时区(下午 6 点)存储它?之后如何比较?

谢谢你的回答。

我建议将服务器转换为以UTC存储/加载数据,并让您的客户端在后台使用UTC时间。这将有助于确保它们都使用相同的时区进行比较。

这通常是推荐的方法,因为 UTC 是标准,永远不会受到夏令时的影响。