location.getTime() ->GPS-Listener
返回longint-value:1441279754000.
按照http://currentmillis.com/:1441279754000个代表
' 星期四2015年9月3日11时29分14秒UTC ',虽然目前的时间为
' 星期四2015年9月3日1 2:29:14 UTC '
设备上的当前时区:(
GMT+2:00, Central European Summer Time夏令时)
将时区更改为:(
GMT+4:00 Moscow无夏令时):
- > location.getTime()返回正确的值.
也许是Android 4.4.2中的一个错误; 设备是'Wiko Rainbow 4G':
如果当前时区是daylight-savings-timezone,则返回错误值(UTC-1).
有谁知道解决方法或我做错了吗?
更多信息:
使用:
public class MyLocationListener implements LocationListener{
...
public void onLocationChanged(Location location){
long millis = location.getTime();
long deltaToDeviceTime = millis - System.currentTimeMillis();
...
}}
意味着gps-timestamp'millis'刚刚到来 - 是新鲜的.
测试程序正在运行时,我会去
Android-main-menu - >设置 - >日期和时间 - >选择时区
并将时区从
"夏令时 - 时区"更改
为"非夏令时 - 时区"并返回.
使用'non-daylight-savings-timezone',deltaToDeviceTime的值
约为2000 ==两秒 - >正确.
使用'daylight-savings-timezone',deltaToDeviceTime的值
约为3600000 == 1小时 - >错误.