默认

[已回复] 我想将消息保存到mysql数据库中去,怎么做比较好?

查看数: 49283 | 评论数: 6 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2017-10-23 14:13

正文摘要:

我想将聊天消息保存到mysql中去 目前有两个问题困扰着我 1.onTransBuffer_C2C_CallBack 这个方法中 我收到了消息,然后保存到数据库中,但是这个方法里面的消息 不只是消息内容 ,而且还会有指纹消息。 2.当客户 ...

评论

JackJiang 发表于 7 年前
引用:吴佳同 发表于 2017-10-24 16:37
相当于对dataContent进行了一层的封装
然后对方收到后再解封条

吴佳同 发表于 7 年前
相当于对dataContent进行了一层的封装
然后对方收到后再解封条

感谢Jack
JackJiang 发表于 7 年前
引用:吴佳同 发表于 2017-10-24 09:25
我不想保存指纹码
我只想保存发送成功的消息

你用的是MobileIMSDK v2是吧,如果是MobileIMSDK v3里则这个回调方法会把fingerPrint带过来。

其实,你也有办法解决,写代码还是需要些想象力的:你客户端在调用发送方法的时候,自已来生成fingerPrint(其实就是Protocal.genFingerPrint()这个方法生成指纹码),然后在你的dataContent里把这个fingerPrint人为带上,不就可以了。
吴佳同 发表于 7 年前
引用:JackJiang 发表于 2017-10-23 17:28
用指纹码去重,mysql有专门的指令很容易处理的,参考这一篇文章:
《mysql insert if not exists防止插入 ...

我不想保存指纹码
我只想保存发送成功的消息

onTransBuffer_C2C_CallBack这个方法里 只能拿到3 个参数
(int userId, int from_user_id, String dataContent)

不能同时拿到 消息内容 和消息内容对应的指纹码


应该怎么做?
帮帮我
吴佳同 发表于 7 年前
我将重发次数改成了99999
JackJiang 发表于 7 年前
用指纹码去重,mysql有专门的指令很容易处理的,参考这一篇文章:
mysql insert if not exists防止插入重复记录的方法(转)

另外,你的一条消息为何会被重复这么多次,这不正常,你改了什么逻辑?

返回顶部