注意事项<br>
在发送非文字消息时都需要上传文件<br>
只有非文字消息上传成功之后才会使用XMPP发送字节消息<br>
当消息发送成功时会标识已读和已上传的状态同时写入本地数据库<br>
当消息发送失败时,会标识未发送状态<br>
接收方成功收到消息时会标记该条消息为已收到状态<br>
在销毁状态下如果接收方点击了该条消息会标识为已读状态<br>
文字消息<br>
发送消息前监听是否登陆,如果未登录返回登陆界面<br>
使用XMPP框架,将文字封装一个XMPPMessage对象(增加消息体和回执)<br>
消息体的内容包括发送时间,发送者的userID,接收者的ID,发送时间,发送的内容<br>
发送之前保存消息对象至本地
回执包括已发送回执和已阅回执<br>
发送完毕之后就刷新聊天界面,显示最新一条消息<br>
图片消息(包括表情)<br>
发送上传该图片的http请求<br>
保存消息对象至本地<br>
发送成功之后刷新聊天页面并显示最新一条消息<br>
上传成功之后发送图片消息<br>
监听图片消息的发送状态,如果发送成功更新已发送状态<br>
如果发送失败显示未发送<br>
上传成功之后发送音频文件<br>
监听音频文件的发送状态,如果发送成功更新已发送的状态<br>
如果发送失败显示未发送<br>