iOS实现XMPP通讯(二)XMPP编程】的更多相关文章

项目概述 这是一个可以登录jabber账号,获取好友列表,并且能与好友进行聊天的项目. 使用的是第三方库XMPPFramework框架来实现XMPP通讯. 项目地址:XMPP-Project 项目准备工作:搭建好Openfire服务器,安装客户端Spark,具体步骤请见:iOS实现XMPP通讯(一)搭建Openfire 这样就可以登录本项目与登录Spark的另一用户进行XMPP通讯. 项目结构概述: 有三个视图控制器LoginViewController,ListViewController,C…
在讲解XMPP前,我们需要先了解什么是即时通讯技术: * 即时通讯技术(IM - InstantMessaging)支持用户在线实时交谈.当一方需要发送消息时,用户必须打开一个窗口,以便让用户与交流对象在窗口中输入并显示交谈内容. * 目前有许多IM系统,如QQ.MSN.YahooIM等等,它们主要区别在于各自通讯协议的实现.所以即时通讯的技术核心在于它的传输协议. * 协议用来说明信息在网络上如何传输,开发者经过许多努力试图统一各大主要IM供应商的标准(Yahoo.Microsoft),但是目…
原始地址:XMPPFrameWork IOS 开发(一) XMPP : The Extensible Messaging and Presence Protocol 中文全称: 可扩展通讯和表示协议 简介:可扩展通讯和表示协议 (XMPP) 可用于服务类实时通讯.表示和需求响应服务中的XML数据元 流式传输.XMPP以Jabber协议为基础,而Jabber是 即时通讯中常用的开放式协议. 下面是XMPPFramework几个常用到的扩展. 协议列表: 协议 协议简介 XEP-0009 在两个XM…
今天看到CSDN上这么一篇< 彻底放弃没落的MFC,对新人的忠告!>, 作为一个一直在Windows上搞客户端开发的C++程序员,几年前也有过类似的隐忧(参见 落伍的感觉), 现在却有一些不同的想法.   首先,个人职业发展是否成功, 技术只是其中一小块,尤其是在大公司, 更多的是依靠所谓的软实力.作为一个对技术有追求的工匠,我们下面重点说技术相关的.   现在回头看计算机行业的发展,我们看到不同的发展阶段:   1. PC时代,这个时代离我们并不遥远, 也有是2000年前后, 该时代最鲜明的…
上篇讲了[即时通讯]即时通讯及XMPP概述及环境配置,接下来我们就要进行调试,看看是否可用! 在测试之前我们需要先事先保存一些东西,以便后面使用 —— 登录openfire后台 ——获取服务器名和端口号(我这里获取到得的 服务器名是xxxxxxx.local , 端口5222) 其实,在MAC上应用程序内的 “信息”就已经支持XMPP了,让我们先来打开“信息”: 1. 打开 2. 选择其他信息账户进行添加   3.填写账户信息   *[账户名格式:用户名 + @ + 服务器名]比如我要登录之前创…
在XMPP通讯开发-服务器连接 中我们成功连接到服务器上面,然后进入到主界面,接下来就是获取好友列表,这里我们分段开发,首先就是界面的设计,这里仿照QQ好友界面,里面的数据先是用模拟的,下一章获取服务器上面的信息然后在替换,先看一下界面效果 其实界面设计很简单,主要用到JTabbedPane,然后使用JTree将数据添加进来,最后在把JTree添加到JTabbedPane中,代码如下: /** * 添加好友列表的功能:模拟数据 */ private void initFriends(){ //…
在 XMPP通讯开发-好友获取界面设计   我们设计了放QQ的列表功能,这里我们获取我们服务器上的 数据. 这一部分知识我们可以查看smack_3_3_0/smack_3_3_0/documentation/roster.html,这个是官方的文档,介绍了我们可以使用Roster来获取,同时我们还可以注册监听器,当用户的状态信息发生变化的时候可以通知UI进行更新. 获取好友实体 Roster是一个集合,我们看一下集合中的实体是由什么组成的. Every user in a roster is r…
在 XMPP通讯开发-服务器好友获取以及监听状态变化   中我们获取服务器上的用户好友信息,然后结合XMPP通讯开发-好友获取界面设计    我们将两个合并起来,首先获取用户组,然后把用户组用List存储起来用作对比好友的用户组,根据用户组的个数然后创建相应的DefaultMutableTreeNode节点用于添加好友,获取好友列表,根据用户组把当前用户添加的所属的用户组,这里要注意的是一个好友可以存在不同的用户组里面,所以获取的好友所在的组也是一个集合,最后在添加一个根的DefaultMuta…
这篇博客的代码是直接在上篇博客的基础上增加的,先给出部分代码,最后会给出能实现简单功能的完整代码. UI进阶 即时通讯之XMPP登录.注册 1.好友列表 初始化好友花名册 #pragma mark - 管理好友 // 获取管理好友的单例对象 XMPPRosterCoreDataStorage *rosterStorage = [XMPPRosterCoreDataStorage sharedInstance]; // 用管理好友的单例对象初始化Roster花名册 // 好友操作是耗时操作 sel…
Socket: 1>Socket又称"套接字" 2>网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket. 3>应用程序通常通过"套接字"向网络发出请求或者应答网络请求   网络通信的要素: 1>网络上的请求就是通过Socket来建立连接然后互相通信 2>IP地址(网络上主机设备的唯一标识) 3>端口号(定位程序) 4>用于标示进程的逻辑地址,不同进程的标示 5>有效端口:0~655…