xmpp学习笔记(三)

四:自动连接

 

从当前代码来看,如果有意外的断开,我们将无法获取信息。

所以要添加XMPPReconnect

 

    xmppReconnect = [[XMPPReconnectalloc]init];

    [xmppReconnectactivate:self.xmppStream];

 

 

五:发送和接收消息 XEP-0136

 

布置好自己的聊天页面,包括用来展示聊天记录的UITableView,和发送消息的按钮。

发送消息代码如下:

 

 

接收消息:

当有消息进来后,调用- (void)xmppStream:(XMPPStream *)sender didReceiveMessage:(XMPPMessage *)message方法

 

xmpp的框架自有消息存储的功能,用法与朋友列表类似。

 

 

 

 

发送消息后,查看文件夹,发现已经多了一个消息的数据库,所有的消息都存储在这里。

 

 

 

 

用类似朋友列表的方法取得了聊天信息的记录,包括时间、信息、接收人、发送或者接收信息的判断标志,信息到手,SM去吧!

 

依然是无法实时更新的问题,正在努力寻找合适的方法解决。

 

语音聊天

进行语音连天有两种方式:base64编码和Http

http的方式是在消息中添加http的连接,如果用户要点击播放则去下载。

base64则是将音频文件转换成base64,按照发送文本信息的模式发送,接收到后,进行解码。

发送方法与文字发送一致。

语音转换方式推荐:http://code4app.com/ios/%E5%BD%95%E9%9F%B3%E5%B9%B6AMR%E5%92%8CWAV%E4%BA%92%E8%BD%AC/51565c3e6803fa5c76000005

 

获取到信息之后,转码,保存,点击之后播放

 音频部分需要真机运行~~~~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值