【问题标题】:Show the Accurate Time instead of Device's Time [duplicate]显示准确时间而不是设备时间 [重复]
【发布时间】:2016-04-08 11:22:19
【问题描述】:

我不知道该怎么做,需要一些建议。我的应用程序当前使用设备的时间而不是“正确时间”。有什么办法可以显示“正确的时间”而不是设备的时间?例如,当用户更改设备的时间时,textview 的时间会跟随新设备的时间。但是,我不希望这种情况发生。

以下是我的代码:

//start time
private void updateTextView() {

    Calendar a = Calendar.getInstance();
    int year = a.get(Calendar.YEAR);
    int month = a.get(Calendar.MONTH) + 1;
    int date = a.get(Calendar.DATE);
    int hourOfDay = a.get(Calendar.HOUR_OF_DAY);
    int minute = a.get(Calendar.MINUTE);

    datetime_start = (TextView) findViewById(R.id.inputStartTime);
    datetime_start.setText(year + "-" + month + "-" + date + " " + String.valueOf(hourOfDay) + ":" + String.valueOf(minute) + ":00");

}

如果可能,请告诉我该怎么做。我是 Java 编码的初学者,目前正在编写我的学校项目。谢谢你。

【问题讨论】:

    标签: java android time


    【解决方案1】:

    如果您所说的“正确”时间是指 UTC 时间,那么您需要获得一个带有 UTC 的 Calendar 实例,如下所示:

    Calendar calendar = Calendar.getInstance(TimeZone.getTimeZone("UTC"));
    

    通常时间是本地化的(时区调整),因为这是通常需要的。

    您可以在此处查看问题/答案以获取更多信息:How can I set a Calendar with UTC time?

    【讨论】:

      猜你喜欢
      • 2014-01-07
      • 1970-01-01
      • 1970-01-01
      • 2021-03-15
      • 1970-01-01
      • 2021-07-24
      • 2015-04-28
      • 2015-10-24
      • 2021-05-02
      相关资源
      最近更新 更多