获取位置的日期和时间(时区)

时间:2018-10-09 04:17:15

标签: android datetime timezone location

我需要用户采取行动的日期和时间。

但是获取设备日期/时间将无法进行锻炼,因为我们可以手动调整设备日期/时间。

我们可以为此做API。

但是我认为会有一些开源API可以按位置或其他方式获取日期/时间。 请指导我。谢谢

TimeZone转换

try
    {
String ourDate = "2018-10-17T06:36-04:00";
            SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd'T'HH:mmXXX");
        formatter.setTimeZone(TimeZone.getTimeZone("EST"));
        Date value = formatter.parse(ourDate);

        SimpleDateFormat dateFormatter = new SimpleDateFormat("EE, MMM,dd,yyyy'Z'hh:mm aa");
        dateFormatter.setTimeZone(TimeZone.getDefault());
        ourDate = dateFormatter.format(value);
    }
    catch (Exception e)
    {
        ourDate = "00, 000,00,0000'Z'00:00 00";
    }
    return ourDate;

2 个答案:

答案 0 :(得分:0)

请检查此API以获取当前时间

http://worldclockapi.com/api/json/est/now

要将其更改为当前用户区域设置,可以使用 (科特琳码)

 SimpleDateFormat("date_time_poattern", Locale("user_locale")).format(time_in_millisecond)

将date_time_poattern更改为您自己的模式,将user_locale更改为您的用户区域设置,最后以毫秒为单位添加时间

答案 1 :(得分:0)

签出此项目:

https://github.com/instacart/truetime-android

您必须在后台线程上初始化库:

window.addEventListener('load', function load() {
     window.removeEventListener('load', load, false);               
     setTimeout(function(){document.body.classList.remove('js-loading');},2000);

},false);

之后,您可以致电

TrueTime.build().initialize();