SDK 如何初始化 在您需要使用融云 SDK 功能的类中,import 相关头文件。
#import <RongIMKit/RongIMKit.h> 如果是 Swift 的话,需要在您工程的 Bridging-Header.h 文件中加入 SDK 的引用
#import <RongIMKit/RongIMKit.h> 请使用您之前从融云开发者控制台注册得到的 App Key,通过 RCIM 的单例,传入 initWithAppKey:方法,初始化 SDK。
您在使用融云 SDK 所有功能(包括显示 SDK 中的 View 或者显示继承于 SDK 的 View )之前,您必须先调用此方法初始化 SDK。 在 App 的整个生命周期中,您只需要将 SDK 初始化一次。
Objective-C 代码
[[RCIM sharedRCIM] initWithAppKey:@"YourTestAppKey"]; 连接服务器 将您在上一步获取到的 Token,通过 RCIM 的单例,传入 -connectWithToken:success:error:tokenIncorrect: 方法,即可建立与服务器的连接。
关于融云 SDK 连接的详细处理逻辑问题,请查看连接融云。
Objective-C 代码
[[RCIM sharedRCIM] connectWithToken:@"YourTestUserToken" success:^(NSString *userId) { NSLog(@"登陆成功。当前登录的用户ID:%@", userId); } error:^(RCConnectErrorCode status) { NSLog(@"登陆的错误码为:%d", status); } tokenIncorrect:^{ //token过期或者不正确。 //如果设置了token有效期并且token过期,请重新请求您的服务器获取新的token //如果没有设置token有效期却提示token错误,请检查您客户端和服务器的appkey是否匹配,还有检查您获取token的流程。 NSLog(@"token错误"); }]; 返回错误码请参看下面链接
http://doc.rongcloud.cn/im/IOS/5.X/code/code 1
如何动态获取 token 动态获取 token 需要在 APP server 端获取
参考文档:http://doc.rongcloud.cn/imserver/server/v1/user/register
token 失效问题 token错误,请您检查客户端初始化使用的AppKey和您服务器获取token使用的AppKey是否一致
token过期,是因为您在开发者后台设置了token过期时间,您需要请求您的服务器重新获取token并再次用新的token建立连接。
请确认一下 AppKey 和 token 是否匹配。
请在开发者后台确认 token 是否在有效期。
请使用工具:https://rongcloud.github.io/websdk-demo/api-test.html 1 来测试一下能否链接成功
如何自定义消息请参照下面文档 http://support.rongcloud.cn/kb/NTMw
会话列表和会话页面如何显示用户心头像和名称 实现用户信息提供者,可在 AppDelegate.m 中遵循协议 RCIMUserInfoDataSource,RCIMGroupInfoDataSource,
设置代理
[[RCIM sharedRCIM] setUserInfoDataSource:self];
[[RCIM sharedRCIM] setGroupInfoDataSource:self];
实现方法
-(void)getUserInfoWithUserId:(NSString *)userId completion:(void (^)(RCUserInfo *))completion;
群组信息提供者:
-(void)getGroupInfoWithGroupId:(NSString *)groupId completion:(void (^)(RCGroup *))completion;
具体可参照下面文档http://support.rongcloud.cn/kb/MjYx 2
标签:总结,常见问题,RCIM,iOS,获取,token,服务器,rongcloud,SDK From: https://blog.51cto.com/u_16340920/9028186