【问题标题】:How to retrieve provider time in Android programmatically?如何以编程方式在 Android 中检索提供程序时间?
【发布时间】:2014-03-03 03:52:06
【问题描述】:

我正在做一个 android 应用程序,它必须显示当前的服务器/网络运营商时间,因为设备时间可以由用户更改。我不想更改/设置设备时间。我尝试了一些源代码,但效果不佳。我能够获取设备日期和时间,但我需要来自服务器或网络提供商本身的日期和时间。请帮帮我

【问题讨论】:

标签: android date mobile time


【解决方案1】:

您似乎需要与网络时间协议 (NTP) 交互。

在 SO use of ntp serviceget datetime from network provider(如 Gheo 所述)上也有类似的问题,建议:

正如这些帖子的 cmets 所述,从 Honeycomb 开始,您无法在主活动线程中执行任何网络操作(建议:改用服务)。

更新:

进一步搜索使我在 GitHub 上找到了 Dominik Schürmann's ntp-sync 存储库。他提供了不同的示例,说明您如何使用他的库,您可以在模拟器/设备上编译和运行这些库。

【讨论】:

  • 你不能看看SntpClient的来源吗?
  • 我是安卓新手。我检查了 sntpclient 代码并在我的应用程序中实现了它以及其他代码。但没有成功
  • 我的答案有更新......它用粗体写!我认为这是一个很好的回答你的问题。如果您有其他问题,请提出其他问题,Stackoverflow 是一个问答网站,而不是论坛或聊天室
  • 好吧..你的回答对我没有帮助。
【解决方案2】:

我找到了解决方案,但忘记发布了。如果有人觉得它有帮助,这对我有用。

使用 API 或网络调用获取服务器时间,其中响应将包含来自服务器的时间戳。根据您的方便使用数据。

您可以修改现有 API 本身(如果有)。

【讨论】:

    猜你喜欢
    • 2012-02-17
    • 2010-11-20
    • 2022-11-16
    • 2011-03-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-07
    相关资源
    最近更新 更多