Android 两个设备在延迟信息时间戳中具有不同的时区
我使用openfire服务器的延迟信息获取MUC消息的延迟时区 下面是我的代码Android 两个设备在延迟信息时间戳中具有不同的时区,android,timezone,Android,Timezone,我使用openfire服务器的延迟信息获取MUC消息的延迟时区 下面是我的代码 DelayInformation inf = null; try { inf = (DelayInformation) packet.getExtension("x", "jabber:x:delay"); } catch (Exception e) { e.printStackTrace(); } if (inf == null) { try { in
DelayInformation inf = null;
try {
inf = (DelayInformation) packet.getExtension("x",
"jabber:x:delay");
} catch (Exception e) {
e.printStackTrace();
}
if (inf == null) {
try {
inf = (DelayInformation) message.getExtension(
"delay", "urn:xmpp:delay");
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
Date date;
String dateStr="";
// get offline message timestamp
if (inf != null) {
date = inf.getStamp();
// in 1st device Sat Oct 18 14:10:53 IST 2014
// in 2nd device Sat Oct 18 14:10:30 GMT+05:30 2014
dateStr=TimeRender.getDate(date);
} else {
dateStr=TimeRender.getDate();
}
当我从设备1收到延迟消息时
我的约会是2014年10月18日星期六14:10:53
我的第二个设备日期是2014年10月18日14:10:30 GMT+05:30
我还检查设备日期和时间
两台设备都有GMT+05:30,印度标准时间
那为什么我会得到两个不同的时区IST和GMT
我不明白这个问题,我是不是遗漏了什么
请帮我解决这个问题
谢谢您的帮助。您使用Smack吗?如果是,哪个版本?不,我使用的是asmack…我认为它不依赖于smack或asmack。是和否。它取决于生成时间戳的系统的时区。例如,一个可以由客户端上的aSmack生成,该客户端的时区设置为“IST”,而另一个可以由XMPP服务器生成,该服务器的系统时区设置为“GMT”。但我在这两个设备中使用相同的代码和jar