赞
踩
不通过读取手机时间,读取服务器时间,通过NTP协议进行获取时间
ios: http://blog.csdn.net/wzq9706/article/details/9497615
android :http://blog.csdn.net/mapdigit/article/details/7669325
也可以从response的headers中获取:
okhttp可以这样获取:
response.headers().get("Date");
上边的是格林时间,可以转成我们自己的北京时区时间
- public static void getServerTimeDelta(ResponseInfo<String> responseInfo){
- if (responseInfo != null) {
- Header headers = responseInfo.getFirstHeader("Date");
- String strServerDate = headers.getValue();
- if (!TextUtils.isEmpty(strServerDate)){
- //Thu, 29 Sep 2016 07:57:42 GMT
- final SimpleDateFormat simpleDateFormat = new SimpleDateFormat("EEE, d MMM yyyy HH:mm:ss z",
- Locale.ENGLISH);
- TimeZone.setDefault(TimeZone.getTimeZone("GMT+8"));
- try {
- Date serverDate = simpleDateFormat.parse(strServerDate);
-
- GeexekApplication.ResponseTime = serverDate.getTime();
- GeexekApplication.ResponseCurrentTime =SystemClock.elapsedRealtime();
-
- }catch(Exception exception){
- exception.printStackTrace();
- }
- }
- }
- }

Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。