【问题标题】:Android Kotlin / JAVA - get current world time / UTC in seconds since 1970Android Kotlin / JAVA - 自 1970 年以来以秒为单位获取当前世界时间 / UTC
【发布时间】:2019-06-21 15:24:12
【问题描述】:

正如标题所说,我需要自 1970 年以来的当前工作时间(以秒为单位)。

这是我迄今为止尝试过的:

System.currentTimeMillis()

val df = DateFormat.getTimeInstance()
df.setTimeZone(TimeZone.getTimeZone("gmt"))
val gmtTime = df.format(Date())

但两者都显示基于手机时间的时间,所以当用户手动更改手机时间时,它会受到影响

有没有办法在不使用外部 API 的情况下以秒为单位获取当前工作时间?

【问题讨论】:

  • “不使用外部 API”你将需要与 something 交谈。
  • 但是 android 使用什么来自动设置当前时间?到目前为止,我使用了一个外部 API,但是自从我修复了最新的补丁后就出现了问题。但我不想担心每一次该死的 android 更新,所以我希望尽可能少地使用 API
  • @KingDingeling 那将是一个Network Time Protocol 服务器,它是一个外部资源。否则,手机依赖于其内部时钟,正如您所提到的,可以更改。
  • How to get current time from internet in android。搜索更多类似的问题和答案。

标签: java android kotlin timestamp utc


【解决方案1】:

不,不根据设备时钟获取时间的唯一方法是从某些 Web API 服务请求它。

【讨论】:

  • 好的,我们都希望我们可以在不涉及设备时钟的情况下获得实时时间:D
  • NTP 是一个很好的知名协议。 stackoverflow.com/questions/2817475/…
  • @Michael Dodd 说 NTP 使用外部 API
猜你喜欢
  • 1970-01-01
  • 2013-11-02
  • 2012-07-06
  • 2010-12-29
  • 2011-11-26
  • 1970-01-01
  • 2014-08-24
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多