XMPP个人信息展示

XMPP个人信息展示

大家好,又见面了,我是全栈君。

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

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

 XMPP个人信息展示

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

 XMPP个人信息展示

 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关联。连接输出口

 XMPP个人信息展示

 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 ;

  效果图例如以下:

 XMPP个人信息展示

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

 XMPP个人信息展示

  点击改动调用方法就可以

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

 

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

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

 

作者:
杰瑞教育

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


本文版权归烟台杰瑞教育科技有限公司和CSDN共同拥有,欢迎转载,但未经作者允许必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
 
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/116084.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • Linux教程+操作系统教程

    Linux教程+操作系统教程.Linux入门教程http://c.biancheng.net/cpp/linux/基础教程Linux简介Linux文件管理Linux目录Linux文件权限和访问模式Linux环境变量Linux打印文件和发送邮件Linux管道和过滤器Linux进程管理Linux网络通信工具vi编辑器Linux文件系统Linux文件存储结构Linux用户管理Linux系统性能分析Linux系统日志及…

    2022年10月13日
  • 创建MySQL从库

    创建MySQL从库

  • windows下thrift的使用(C++)

    windows下thrift的使用(C++)

    2021年11月19日
  • p6spy简介_p6教程

    p6spy简介_p6教程在公司项目中运用了这项技术,一开始不清楚这是干啥用的,在网上查找资料有所一定的了解,但是应该不够全面,希望可以评论指出。p6spy是数据库动态监控的一种框架,它可以使得数据库数据无缝拦截和操作,而不必对现有应用程序的代码作任何修改。P6Spy分发包包括P6Log,它是一个可记录任何Java应用程序的所有JDBC事务的应用程序。其配置完成使用时,可以进行数据访问性能的监测。下面我们来看一下…

  • win10 设定计划任务时提示所指定的账户名称无效,如何解决?「建议收藏」

    win10 设定计划任务时提示所指定的账户名称无效,如何解决?「建议收藏」我想把我的python爬虫脚本设定为自动定时执行,我的设备是win10操作系统,这将用到系统自带的计划任务功能。且我希望不管用户是否登录都要运行该定时任务,但在设置计划任务的属性时,遇到一个报错:所指定的账户名称无效。该报错是如何发生的,以及如何解决?记录如下:报错是如何发生的?如下图所示,设置计划任务的属性:如果仅勾选“只在用户登录时运行”,点击“确定”后直接创建成功。…

  • 在线视频下载网址合集

    在线视频下载网址合集视频鱼:http://m.shipinyu.cn/微博党:http://weibodang.cn/index硕鼠:http://www.flvcd.com/微博秒拍视频解析下载:https://weibo.iiilab.com/短视频解析下载:http://dy.ck921.com/飞狐视频下载:https://www.3987.com/dsp/ks.html兔兔解析:http://w…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号