Swift集成融云即时聊天SDK

首先感谢@Chaman_Elephant 参考他的做的
这里是oc的融云集成 有兴趣的同学可以去看看他的文章 https://www.jianshu.com/p/eabfb0a93cf9
一:准备工作
1.首先打开融云官网http://www.rongcloud.cn/,注册自己的账户,并登陆。
2.点击左边创建应用,在打开的小窗口填写你的项目的一些信息(如果正在开发阶段可以选择未运营商务用户,如果项目上线后是需要提交申请审核,后面再讲)。

5809271-eea2bdd57d3e225c.png

3.创建好项目过后点击刚刚创建好的项目,并点击左边的"App Key",里面包含开发环境和生产环境,不同环境下的App Key是不一样的,融云基本是免费的,但是他会提供给你一些付费的服务(视自己项目而定)。记录好App Key,因为在后面工程中需要。融云开发环境允许100个测试用户,如果超过了100个测试用户,需要在后台手动添加用户,一次只能添加20个。
4.用cocoapods集成
pod 'RongCloudIM/IMLib'
pod 'RongCloudIM/IMKit'
5.桥文件
//融云

import

6.Appdelegate集成
RCIM.shared().initWithAppKey(RongCloudAppkey)
RCIM.shared().connect(withToken: RongCloundToken, success: { (userId: String?) in
// let username = "TT"
// let iconurl = ""
// let currentUserInfo = RCUserInfo.init(userId: userId!, name: username, portrait: iconurl)
// RCIMClient.shared().currentUserInfo = currentUserInfo
}, error: { (status: RCConnectErrorCode) in
print("登录错误码为:%ld",status)
}) {
//token过期或者不正确。
//如果设置了token有效期并且token过期,请重新请求您的服务器获取新的token
//如果没有设置token有效期却提示token错误,请检查您客户端和服务器的appkey是否匹配,还有检查您获取token的流程。
UserDefaults.setValue("", forKey: "预留K")
//HUDBonlytext(text: "Token过期或错误", view: UIApplication.shared.keyWindow!)
ToolManger.defaultShow(Str: "token过期或错误", T: self)
}
这里的APPkey,在这里获取的


屏幕快照 2018-09-13 上午10.44.54.png

这里的token,这里获取的


屏幕快照 2018-09-13 上午10.45.51.png

==================
ok,这里的集成就搞定了下面就是聊天界面了(2个界面一个聊天列表,一个是聊天室)
1这里是聊天列表
import UIKit

class RongCloudViewController: RCConversationListViewController {

override func viewDidLoad() {
    super.viewDidLoad()

   
    self.title = "聊天界面"
    self.setDisplayConversationTypes([RCConversationType.ConversationType_PRIVATE.rawValue, RCConversationType.ConversationType_GROUP.rawValue,RCConversationType.ConversationType_DISCUSSION.rawValue])
    self.conversationListTableView.separatorStyle = UITableViewCellSeparatorStyle.none
    
    
    
}

//点击cell  进行跳转到聊天室
override func onSelectedTableRow(_ conversationModelType: RCConversationModelType, conversationModel model: RCConversationModel!, at indexPath: IndexPath!) {
    let rongVC = RongCloudDetailViewController()
    
    rongVC.conversationType = model.conversationType
    rongVC.targetId = model.targetId
    
    rongVC.hidesBottomBarWhenPushed = true
    
    self.navigationController?.pushViewController(rongVC, animated: true)
}

//点击头像的跳转
override func didTapCellPortrait(_ model: RCConversationModel!) {
    print("%@",model)
}

}
2这里是聊天室
import UIKit

class RongCloudDetailViewController: RCConversationViewController {

override func viewDidLoad() {
    super.viewDidLoad()

    self.title = "具体聊天界面"
    
    
}

}
注意这里两个控制器分别继承的融云给你写好的两个界面
最后测试一波
这里是模拟一个陌生人给你发送消息


5809271-27100a9e3ac4de8f.png
屏幕快照 2018-09-13 上午10.52.15.png
屏幕快照 2018-09-13 上午10.52.44.png

你可能感兴趣的:(Swift集成融云即时聊天SDK)