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 - >设置 - >日期&时间 - >选择时区
并从中更改时区
a' daylight-savings-timezone'到
a'非日光节约时区'然后回来。
使用非日光节约时区' deltaToDeviceTime的值为
约2000 ==两秒 - >正确的。
使用' daylight-savings-timezone' deltaToDeviceTime的值为
约3600000 ==一小时 - >错。