我正在尝试在当天结束时将本地数据库数据保存到服务器。但问题是移动用户可以更改设置的日期和时间。所以我不能把系统时间作为正确的时间。如何同步服务器时间和应用程序时间?
答案 0 :(得分:0)
您可以使用GMT日期:
public static Date getGMTDate(String dateFormat) throws ParseException {
SimpleDateFormat dateFormatGmt = new SimpleDateFormat(dateFormat);
dateFormatGmt.setTimeZone(TimeZone.getTimeZone("GMT"));
// Local time zone
SimpleDateFormat dateFormatLocal = new SimpleDateFormat(dateFormat);
// Time in GMT
return dateFormatLocal.parse(dateFormatGmt.format(new Date()));
}
//////////////////////////////////////////
public static Date getCurrentServerDate(String dateFormat, int min) {
Date date = null;
String TimeFormate = "HH:mm:ss";
try {
date = getGMTDate(TimeFormate);
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
DateFormat formatter = new SimpleDateFormat(dateFormat);
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
calendar.add(Calendar.MINUTE, min);
return calendar.getTime();
}
我希望这对你有用....
我编辑的ans: 当您按以下方法调用此方法时:
SimpleDateFormat format = new SimpleDateFormat("HH:mm:ss");
int int_TimeZoneOffset = Integer.parseInt(TIMEZONE_OFFSET);
String TimeFormate = "HH:mm:ss";
Date CurrServerdate = CommonMethod.getCurrentServerDate(TimeFormate,
int_TimeZoneOffset);
Log.i("CurrServerdate", "CurrServerdate=" + CurrServerdate);
我希望这对你有用....