通过lat和long获取TimeZone在android中?

时间:2017-08-19 03:43:09

标签: android google-maps datetime timezone latitude-longitude

我需要时区by lat,long,因为我发现这篇文章很有帮助Get Time Zone From Lat Long。如此链接中所述,如果我使用Google Api,则其响应为

 {
        "dstOffset" : 3600,
       "rawOffset" : -18000,
       "status" : "OK",
       "timeZoneId" : "America/New_York",
       "timeZoneName" : "Eastern Daylight Time"
    }

但我的要求是,如果印度的时区是5:30,那么我需要它为5.5 或者如果任何国家/地区时区是7:0然后是7.0。我的问题是如何从上面指定的自定义形式获取lat long的时区

1 个答案:

答案 0 :(得分:1)

这条线可以帮助你......

double zone = (responseObject.get("rawOffset").getAsInt() + responseObject.get("dstOffset").getAsInt()) / 3600.0;

从响应中获取rawOffset和dstOffset并添加它们,然后将它们除以3600 ..... rawOffset是GMT + - 时区,以秒为单位,dstOffset是夏令时偏移秒(如果一个国家有dst它将会是3600其他0)