JMessage.getHistoryMessages里面获取的时间戳都是不正确的!

jmessage
标签: #<Tag:0x00007fb834384660>

(绝伦独舞) #1

我每一个都获取并且解析了,都是不对的


(12) #2

请给出具体的日志,Android 还是 iOS ,版本多少,你获取到的内容和解析得到的信息是什么


(绝伦独舞) #3

安卓的
[{“text”:“真的么”,“type”:“text”,“unreceiptCount”:0,“createTime”:1542959326354,“extras”:{},“target”:{“isFriend”:…}]
比如这个,你看返回的时间戳,根本就不是正常的解析格式,不知道为什么


(绝伦独舞) #4

版本是最新版"jmessage-react-plugin": “^2.4.8”,


(绝伦独舞) #5

啊我知道了 这个是毫秒的。。毫秒转换就好了


(12) #6

是的,我们的时间精度是 毫秒


(绝伦独舞) #7

好的,了解了谢谢


(绝伦独舞) #8

@Lris 你好,我想咨询你个问题。怎么判断获取的时间是同一时间,我想如果是同一时间的话我只显示一个时间,不然一条消息一个时间看起来有点儿不太好。。


(12) #9

你这个同一时间的概念是什么,同一个时间的时间戳肯定是一样的呀

这种一般都是一段时间内的消息在主页面上就只显示一次时间之类的,诸如钉钉

每条消息的详细时间在点击消息后才会看到,其他时候就隐藏这种,间隔较长时间才发的一条消息会单独显示一个时间


(绝伦独舞) #10

@Lris 啊对对原来这样呀 就这个意思 5分钟显示一次时间就行:joy: 但是获取的值只有一个createTime 怎么相减得出这个时间段呢:smiley:


(绝伦独舞) #11

一般处理方式是比较于上条消息的时间差,如果超过预定的时间,才展示时间。是这个意思吧,但是怎么获取上一条。。 @Lris


(12) #12

emmmm,不如这样,你在 UI 上显示时间的这个逻辑,就是显示了一个时间后,记录下来再往后推 5 分钟,设置如果有一条消息的时间判断超过了这个时间,就显示第二个时间,然后进入下一次计算和判断

这个得你自己存一下呀,根据上面这个思路就存你展示了的这个时间点就行了吧


(绝伦独舞) #13

哦哦 谢谢🙏


(绝伦独舞) #14

@Lris 还得麻烦你下大佬:joy: 展示了的这个时间点是自己随便定义的吗?


(12) #15

en ? 这不是你们自己的业务逻辑吗,UI 上要展示成什么样都取决于你们自己


(绝伦独舞) #16

哦哦 :sweat_smile: