XMPP个人信息展示

  在现阶段的通信服务中。各种标准都有,因此会出现无法实现相互连通,而XMPP(Extensible Message and presence Protocol)协议的出现。实现了整个及时通信服务协议的互通。有了这个协议之后,使用不论什么一个组织或者个人提供的即使通信服务,都可以无障碍的与其它的及时通信服务的用户进行交流。比如google 公司2005年推出的Google talk就是一款基于XMPP协议的即时通信软件。以下我们就谈论一下怎样简单的使用XMPP的好友和个人电子名片

1、在XMPPFramework.h中将须要用到的头文件打开

2、在storyboard创建电子名片的页面

3、定义数据存储和电子名片模型属性而且进行初始化

//电子名片
@property (strong,nonatomic) XMPPvCardTempModule * vCardModule;

//电子名片存储
@property (strong,nonatomic) XMPPvCardCoreDataStorage *vCardStorage;

   //初始化卡片存储
        self.vCardStorage=[XMPPvCardCoreDataStorage sharedInstance];
        //初始化花名冊存储
        self.rosterStorage=[[XMPPRosterCoreDataStorage alloc] init];
   //激活当前的电子名片
        [self.vCardModule activate:self.stream];

4、创建相应的类,而且和电子卡片的storyboard关联。连接输出口

5、获取当前的人员电子卡片

//获取vcard卡片信息即个人信息
    AppDelegate * delegate=[UIApplication sharedApplication].delegate;

    XMPPvCardTemp *vcard = [delegate.vCardModule myvCardTemp];

    //假设电子卡片信息不存在须要又一次设置
    if (vcard==nil) {
        vcard=[XMPPvCardTemp vCardTemp];
        vcard.nickname=[[NSUserDefaults standardUserDefaults] objectForKey:@"userName"];
    }

    if (vcard.jid==nil) {
        XMPPJID * jid=[XMPPJID jidWithString:[[NSUserDefaults standardUserDefaults] objectForKey:@"userName"]];
        vcard.jid=jid;
    }

    //更新一下改动的数据
[delegate.vCardModule updateMyvCardTemp:vcard];

6、将电子卡片的信息展示到UI界面

    //将电子名片的信息展示到UI

    self.jrImage.image=[UIImage imageWithData:vcard.photo];
    self.name.text=vcard.nickname;
    self.jid.text=vcard.jid.full;

    self.email.text=vcard.mailer;
    self.company.text=vcard.orgName;
    self.depart.text=[vcard.orgUnits firstObject];
    self.post.text=vcard.title;
    self.tel.text=vcard.note ;

  效果图例如以下:

6、改动电子卡片。涉及到个人信息的改动。这里我们须要又一次做UI

  点击改动调用方法就可以

//更新一下改动的数据
[delegate.vCardModule updateMyvCardTemp:vcard];

  想要了解很多其它内容的小伙伴。能够点击查看源代码,亲自执行測试。

  疑问咨询或技术交流。请增加官方QQ群: (452379712)

作者:杰瑞教育

出处:http://blog.csdn.net/jerehedu/

本文版权归烟台杰瑞教育科技有限公司和CSDN共同拥有,欢迎转载,但未经作者允许必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

时间: 2024-10-07 03:11:20

XMPP个人信息展示的相关文章

JavaScript实现联想校招员工信息展示

原文摘自我的前端博客,欢迎大家来访问 http://www.hacke2.cn 起因 今天和豪哥聊天,才知道他是我老乡,而且特别近..真的感觉他是我的贵人,这是他从 联想校招扣出来的,我们就用JavaScript来实现吧 联想校招员工信息展示点击弹出详细信息 过程 给的有HTML还有CSS3,我打算先用前端模板技术讲信息都出来,之前数据是写死在HTML 数据封装在data.js里 var data = []; data.push({ 'name' : 'Dillon', 'enname' : '

2017-3-8 学生信息展示习题

(满分100分,少一个功能或限制扣5分,少一项大功能扣20分) 题目要求:(请仔细阅读需求,并严格按照需求编写程序) 连续输入5个学生的信息,每个学生都有以下4个内容: 1.学号 - 自动生成,不需要手动填写,第一个学生为"S001"第二个为"S002"依次类推2.姓名 - 不能为空,输入正确方可继续,否则需要用户一直填写3.生日 - 不能为空,需要验证时间格式是否正确,如果错误则一直填写4.成绩 - 不能为空,0~100之间的数,需要有小数位数 注意:以上内容必须

网站信息展示(html)

网站信息展示 需求-在页面展示一些文字信息,需要排版 技术分析-html:超文本标签语言 htlm 作 用:展示 超文本:超越了一般文本,描述文本的字体.颜色.图片 标 签:标记 html书写规则: 文件的后缀名 .html(建议) 或者 .htm 标签必须用<>起来 已经定义好的标签 属性 格式:key = "value" 建议属性的值用引号引起来. 不区分大小写 注意: 最好将所有的内容放在一个标签中 <html></html> 有开始标签和结束

如何开发一款以太坊安卓钱包系列3 - 资产信息展示

这是如何开发以太坊(安卓)钱包系列第3篇, 钱包账号资产信息展示,展示信息主要包括账号地址.eth余额及该账号所拥有的Token及余额. 预备知识 MVVM 本文会涉及和UI界面的交互,提前理解下界面和数据如何交互是非常有必要的,如果你已经很熟悉MVVM,可跳过这一小节. 最早写Android的时候,数据和界面经常耦合在一起,一个Activity文件总是特别大,每当产品界面改版就非常痛苦,吐槽下,很多产品经理都喜欢对界面改来改去. 后来Google 推荐多个架构模式: MPV. MVVM模式来解

Python 爬取 北京市政府首都之窗信件列表-[信息展示]

日期:2020.01.25 博客期:133 星期六 [代码说明,如果要使用此页代码,必须在本博客页面评论区给予说明] //博客总体说明 1.准备工作 2.爬取工作 3.数据处理 4.信息展示(本期博客) 大年初一,先给大家说声“过年好”!嗯~说说今天写的部分,因为今天过大年嘛,也没有写什么特别难的东西!就是把上一回博客的内容进行整理,然后根据ECharts的接口进行数据可视化的展示! 下面是项目的目录结构: 嗯!老师说基本的页面是按照我的那个老模板来做的,这样比较省力气! Java部分: com

从SQLite获取数据完成一个产品信息展示

在ios实际开发当中,我们常常用到Core Data做为数据储存首选.但在处理一些大量复杂的数据值且数据之间相互关联的时候,这就不得不使用关系型数据库来实现.例如一个导航程序,自身应该包含大量的地图自身数据并且数据需要在app启动的时候就开始读取加载.而且数据本身变动不是特别频繁.重复向服务器发送请求获取信息是一件十分浪费的事情.因此我们可以用一个本地数据文件来直接配置.做为轻量级关系型数据库的sqlite是ios开发首选.而xcode本身包含了sqlite库,因此在ios使用的时候不需要额外配

Angularjs+node+Mysql实现地图上特定点的定位以及附加信息展示

注:本博文为博主原创,转载请注明出处. 在上一篇博文中主要讲述了如何利用AngularJs+Node+MySql构建项目,并实现地图上的多点标注,今天在这篇文章中,我们将在上一个项目的基础上,实现特定点的定位以及附加信息的展示.这样我们的项目就更加完善了,从宏观上看到每个点,从微观上分析每个点的不同.这种方法往往在大数据可视化方面很有效果. Angularjs+node+Mysql实现地图上的多点标注原文地址:http://www.cnblogs.com/DonaHero/p/5815595.h

高亮地图点及属性信息展示优化方案

作者:小阳 1.序言 本文主要是利用了UTFGrid图层快速交互获取地物信息的特点,以SuperMap iClient for JavaScript的开发作为示范.(注:要实现本文所讲述的功能,同时需要SuperMap iServer和SuperMap iClient for JavaScript 7C系列及以上的版本才支持). 在此之前,我先简要的讲一下什么是UTFGrid:UTFGrid只包含地物的属性信息,可以根据地物的屏幕像素位置在客户端快速获地物的属性信息, 如:实现鼠标悬停或鼠标单击

28、Django实战第28天:个人信息展示

从今天开始,我来完成个人中心部分,前端页面如下 1.浏览这些页面可以发现,它们和base.html是有区别的,因此,它们需要新建一个模板usercenter-base.html 2.把usercenter-info.html的内容拷贝到usercenter-base.html,用block把会不同的部分包起来,然后替换静态文件 3.在head部分加上一个用于样式的:{% block custom_css %}{% endblock %} 4.在body最后加上一个用于js的:{% block c