即使调用了setDefault,也可以在Android上获取真实设备TimeZone

时间:2017-02-15 17:57:14

标签: java android timezone

假设应用中有一个组件用TimeZone.setDefault()覆盖默认时区,让我们假设没问题!
(我认为这是一个不好的做法,但是为了这个问题,让我们继续使用它。)

在某些非常有限的情况下,我仍然需要实际设备的时区,但TimeZone.getDefault()将提供覆盖的值。

有没有办法查询设备的实际时区(在Android设置中设置/由网络提供)而不询问Java的TimeZone#getDefault

1 个答案:

答案 0 :(得分:0)

您可以使用互联网,使用此API请求(来自lat long):

http://api.geonames.org/timezoneJSON?formatted=true&lat=44&lng=11&username=demo

它返回:

   $noactivity_noassignedto = "abc@gmail.com;ABC,xyz@gmail.com;XYZ";
   $assignedAll = explode(',', $noactivity_noassignedto);

   // here you can put loop to send all, for now just first
   $assignedto = explode(';', $assignedAll[0]);
   $assignedto = array((object) array("Email" => $assignedto[0], "Name" => $assignedto[1]));