上期我们介绍了如何通过SDK实现自定义消息,第四期视频教程我们将教大家如何快速实现iOS系统下IM登录登出。

第四期

如何快速实现iOS登录登出?

8分钟视频手把手教你接入

文档详解

前期准备

1. 注册网易云账号后,创建网易云信应用,获取对应的Appkey。

2. 在该应用下,注册账号(accid或account),获取密码(token)。

集成思路

展现形式说明:

实现一个包含手动登录、自动登录与登出的简易demo。在登录界面中输入账号密码登录成功后,进入主界面。在主界面中呈现相关信息,并放置登出按钮。点击登出后,再次回到登录界面。此外,实现自动登录,即在主界面时清理app后,点击图标后应用启动自动实现IM登录,并来到主界面。

1. 使用Pod集成NIMSDK(视频与本文中均是集成NIMKit,即同时集成IM-SDK与云信UI开源组件NIM_iOS_UIKit,请根据所需自行选择)。

2. 创建两个继承自UIViewController的类,分别用于承载登录界面(LoginVC)与主界面(MainTabVC)。

3. 在AppDelegate.m的

-application:didFinishLaunchingWithOptions:方法中加入SDK初始化方法。

4. 在登录button对应的-doLogin:方法中加入SDK登录的方法,并在登录成功后跳转至主界面。

5. 在主界面的登出button对应的-doLogout:方法中加入SDK登出方法,登出成功后跳转回登录界面。

6. 在AppDelegate.m实现自动登录逻辑。即判断当前是否有缓存的accid与token,若有则在自动登录后跳转至原来的界面,否则进入登录界面。

具体步骤

1. 工程环境准备

打开Xcode,创建一个Single View App。

按照文档里的方式,通过Pod导入SDK。

2. SDK的初始化

在AppDelegate.m的-application:didFinishLaunchingWithOptions:方法中加入SDK初始化方法。

3. 应用界面搭建

在Main.storyboard对创建好的登录界面类LoginVC和主界面类MainTabVC添加UI元素:Label、Text Field与Button。分别用于信息提示、文本输入与执行登录/登出操作。随后并将元素绑定到对应的代码文件中。

4. 实现登录操作

LoginVC.m中,在登录button对应的-doLogin:方法中加入SDK登录的方法,并在登录成功后跳转至主界面,针对失败的情况,做弹窗提示。

5. 实现登出操作

在登录成功进入主界面MainTabVC后,还可更新欢迎字样。如要显示登录者的账号,可以通过NIMLoginManager协议的-currentAccount获得。

在MainTabVC.m中的-doLogout:方法中加入SDK登出的方法,在登出成功后,跳转回登录界面。

6. 实现自动登录

自动登录的一种典型使用场景是,当app被系统清理后,重新点击图标启动后,无需手动输入账号密码,即可恢复登录。

在AppDelegate.m里,云信SDK初始化后,准备进入LoginVC前,加一层判断:是否有缓存的accid与token。

若有缓存的话,即走入自动登录的逻辑。云信SDK自动登录没有直接的回调,需要使用NIMLoginManagerDelegate协议的–onLogin:方法与-onAutoLoginFailed:方法。

在-onLogin:方法的中的step为NIMLoginStepLoginOK时,进入mainTabVC。

以上就是我们网易云信集成视频教程第四期的内容,赶紧试试吧~

点击【阅读原文】

看更多集成视频教程

网易云信集成视频教程(四):如何快速实现iOS登录登出?相关推荐

  1. 网易云信集成视频教程(一):如何快速实现安卓登录登出?

    由于网易云信稳定.可靠的技术服务以及拥有深厚积淀的行业口碑,越来越多用户集成云信IM和音视频功能.为了提升用户集成效率,我们推出了一系列网易云信集成视频教程,希望帮助用户快速实现功能接入.第一期将为大 ...

  2. 网易云信集成视频教程(六):如何快速实现iOS下IM自定义消息收发?

    第三期视频集成教程中,我们介绍了Android自定义消息的实现,有小伙伴留言问我们会有iOS版本吗,现在iOS版本来了!第六期视频教程我们将教大家如何快速实现iOS下IM自定义消息收发. 第六期 如何 ...

  3. 网易云信集成视频教程(三):如何通过SDK实现自定义消息?

    上期我们介绍了Android如何通过Uikit集成单聊模块,第三期视频教程我们将教大家如何通过SDK实现自定义消息. 前期准备 从官网开发文档自定义消息流程(https://dev.yunxin.16 ...

  4. 从技术输出到产业赋能,网易云信走过的四年

    四年,对于传统行业而言,仅仅是个短短的时间轴.但对于日新月异的互联网行业而言,则可能发生一场质的飞跃.正如云计算的爆发,过往四年见证了这个行业的巨大变化,也涌现了一批新生力量的崛起.近日,网易旗下通信 ...

  5. Android 网易云信获取图片,Android 网易云信集成(一)

    网易云信流程与账号管理 关于网易云信的注册还有应用管理就不说了,先说下网易云信的通信流程,只有清楚流程,你才能知道自己要做什么. 先是你的服务器端拿着accid还有其他参数发给网易云信,生成一个tok ...

  6. 网易云信入选《SegmentFault 思否 2019 中国技术品牌影响力企业榜单》!

    近日,SegmentFault 思否作为中国最大的新一代开发者社区,依托数百万开发者用户行为数据,及科技企业技术品牌在国内市场的大数据分析,评选出 30 家在开发者领域最具影响力的科技企业,权威发布& ...

  7. 云信小课堂|5分钟快速实现iOS端PK连麦场景

    Vol. 4 2021年开年,音频社交风靡互联网,语音社交再成风口,直播连麦开启社交新赛道.在实时通信技术不断革新的现状下,直播平台需要不断探索新的方式以满足用户日益增长的需求,直播连麦就是在此背景下 ...

  8. 7x24小时实时互动,网易云信金融行业虚拟客服解决方案来啦!

    近些年,随着金融数字化改革的不断深化,科技正在逐步成为金融行业数字化转型的驱动力,而大数据.人工智能.云计算.虚拟现实等底层技术的交叉融合与应用,更是为持续拉动金融行业数字化演进插上了腾飞的翅膀. 当 ...

  9. 网易云信10月大事记

    10月大事记 网易云信 MAJOR EVENTS 动态速览 网易云信迎来了成立4周年的里程碑,从技术输出到产业赋能,网易云信这4年稳扎稳打,不断前行: 1024程序员节系列活动顺利举办: " ...

最新文章

  1. 文件包含漏洞——DVWA练习
  2. 打开应用蜂窝移动数据就关闭_基于移动应用行为数据的客户流失预测
  3. Java中的函数传递
  4. 2017.10.17 蜘蛛难题 思考记录
  5. SAP License:SAP不便解决的问题之六——采购组在审批策略中的作用
  6. 现在装修还有必要铺设网线吗?
  7. centos linux服务器优化之系统服务优化
  8. pytorch笔记-实现一个图像分类模型
  9. abb变频器580系列改中文_ABBACS580一01变频器选择使用语言错误后怎么办?
  10. 用 windows 资源监视器 查看 被占用的文件
  11. SketchUp插件|自然散射 (Skatter 2)插件最新版免费下载及介绍(草图大师模型散布)
  12. [爬虫笔记02] Scrapy爬取阳光问政平台
  13. 微信公众账号开发教程(三) 实例入门:机器人(附源码) ——转自http://www.cnblogs.com/yank/p/3409308.html...
  14. 腾讯优图招聘计算机视觉日常实习生
  15. 小时候读不懂鲁迅笔下的闰土,人到中年才知道,自己其实就是闰土
  16. 图像滤镜艺术---乐高像素拼图特效滤镜的代码实现
  17. Serialization
  18. (数据库-MySQL) Date 函数
  19. 计算机改显存会有啥影响,显卡内存越大越好吗?显存对计算机速度(全文)的影响...
  20. html5 css3 内边距,css什么是内边距?css内边距的设置方法(实例)

热门文章

  1. ExtJS中给Tree节点加click事件
  2. Realtek 8192cu 支持 Android Hotspot
  3. [导入]《交互设计之路——让高科技产品回归人性》读书笔记(一)
  4. prim算法求最小生成树_克鲁斯卡尔算法(Kruskal算法)求最小生成树
  5. extern 定义_Essential Cython - 2.7 - 定义并使用模板函数
  6. aws终止实例后还收费吗_因 AWS 数据中心断电,1TB 数据丢失了
  7. Visual Studio 2019 安装教程 附免费安装包资源
  8. java 输出脉冲信号_一种使用SOC精确控制脉冲的方法
  9. java小程序源码_【小程序源码分享】基于Java开发的物业管理系统!
  10. 音频处理九:(参数估计)