![](https://img-blog.csdnimg.cn/20210111140459326.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
从XMPPFramework到即时通讯的懵比事件
文章平均质量分 94
从XMPPFramework到即时通讯的懵比事件
神经骚栋
IT界无底坑洞栋主
展开
-
XMPPFramework开发(七):好友上下线和重新连接
前言XMPPFramework写到这一篇基本就要结束了,可能后期还要更新SDChat,如果有更新的话,骚栋会同步更新博客的,前面我们说了XMPPFramework中几个比较大功能,这一篇我们将说一下关于用户上下线和重新连接.用户上下线状态获取用户上下线相比其他功能要简单的多,就是在AppDelegate的XMPPSteam的- (void)xmppStream:(XMPPStream *)sender didReceivePresence:(XMPPPresence *)presence代..原创 2021-01-19 17:22:12 · 177 阅读 · 0 评论 -
XMPPFramework开发(六):聊天功能和消息回执
前言前面我们几篇文章我们一直在说关于XMPPFramework中好友关系相关的东东,今天即时通讯最重要的是什么?通讯聊天呀,所以,我们今天就说一下XMPPFramewor聊天的实现.SDChat比较简陋的聊天界面如下所示.XMPPFramework实现聊天功能的相关方法在XMPPFramework中实现聊天功能的类主要是XMPPSteam、XMPPMessageArchiving和XMPPMessageArchivingCoreDataStorage,其中XMPPSteam的作用主要是消息..原创 2021-01-19 17:20:06 · 416 阅读 · 1 评论 -
XMPPFramework开发(五):添加/删除好友
前言前面几篇文章我们主要搞了搞关于好友列表的相关技术以及逻辑,还有用户上下线监控这个没说,我准备放到最后再说,比较简单,今天我们就说一下关于添加好友和删除好友的逻辑和技术.添加好友的逻辑比较多.XMPP好友关系在前面的好友列表中,我们也设定当两个JID相互订阅才认定两者是好友关系,那么为什么要这么设定呢?其实主要是因为添加好友的缘故,这文章的后面我会具体的说到,我们看一下两个JID账号都有什么订阅关系.总共有五种订阅关系.分别是None、To、From、Both、Remove;五种定影状态..原创 2021-01-19 17:18:00 · 214 阅读 · 0 评论 -
XMPPFramework开发(四):电子名片
前言上一篇博客中我们说到如何通过XMPPFramework中的代理方法来获取到好友节点数据信息,但是我们发现节点信息能展示的只有JID,所以今天我们就说一下在XMPPFramework如何设置名片信息以及如何获取自己的和好友的名片信息.XMPP中的电子名片简介(来自网络…)在Extensions中有XEP-0054扩展,提供了一种可以通过XMPP发送电子名片的机制。vCard,也叫Versitcard,vCard的常用文件扩展名是.vcf。在XMPPFramework中通过XMPPvC..原创 2021-01-19 17:09:45 · 287 阅读 · 0 评论 -
XMPPFramework开发(三):好友列表
搞事前言前一篇博客,我们对XMPPFramework的登录注册功能以及逻辑做了详细的说明,用户登录完成之后,我们需要做的就是获取到当前账号的好友列表和个人信息,今天这一篇博客就是对好友列表的相关逻辑以及代理方法来做一下讲解说明.我们先看看SDChat中的好友列表示意图.XMPPFramework中好友关系说明解释在XMPPFramework中呢,好友关系是可以通过订阅来实现的,也就是说A与B相互订阅,那么A与B就是好友了,如果A只是订阅了B,B没有订阅A,那么我们就说A与B两者不是好友,当..原创 2021-01-19 17:08:58 · 153 阅读 · 0 评论 -
XMPPFramework开发(二):工程配置以及登录注册
搞事前言在前面一篇博客中说到关于Openfire的服务器的搭建,这一篇博客就从登录注册开始搞起,其实发现很多网上的XMPPFramework的使用博客都是简单的说一下其中的各种代理方法是干什么用的,各种界面之间的逻辑没有较为详细的讲解,所以骚栋准备从XMPPFramework中各种代理方法的使用情况以及一个简单的聊天App的逻辑实现,进行详细的说明讲解.恩恩,对于自己写的示例SDChat也是写了好几天了,其中还是存在不少的Bug.我准备同步更新,一边改Bug的同时,一边更新博客.希望大家谅解...原创 2021-01-19 17:03:31 · 287 阅读 · 0 评论 -
XMPPFramework开发(一):Openfire服务器搭建
XMPPFramework开发前言这两天没有更新博客,这里先对大家说声对不起了.因为这几天一直忙于研究XMPPFramework这个开源框架.XMPPFramework是一个OS X/iOS平台的开源项目,使用Objective-C实现了XMPP协议,同时还提供了用于读写XML的工具.可以帮助我们快速的开发即时通讯功能.XMPPFramework其实以前培训的时候也是有做过的,不过那只是一顿无脑敲,对其原理以及逻辑并没有深入的了解.而且后期开发使用环信、融云三方开发比较多,XMPPFramework..原创 2021-01-19 16:55:17 · 563 阅读 · 0 评论 -
华山论剑之浅谈XMPP协议实现即时通讯功能
优秀的代码是它自己最好的文档。当你考虑要添加一个注释时,问问自己,“如何能改进这段代码,以让它不需要注释?”*XMPP简介XMPP是一种基于标准通用标记语言的子集XML的协议,它继承了在XML环境中灵活的发展性。因此,基于XMPP的应用具有超强的可扩展性。经过扩展以后的XMPP可以通过发送扩展的信息来处理用户的需求,以及在XMPP的顶端建立如内容发布系统和基于地址的服务等应用程序。而且,XMPP包含了针对服务器端的软件协议,使之能与另一个进行通话,这使得开发者更容易建立客户应用程序或给一个配好系.原创 2021-01-12 09:49:41 · 614 阅读 · 0 评论