iOS 常见问题总结及解决方法

SDK 如何初始化
在您需要使用融云 SDK 功能的类中,import 相关头文件。

#import
如果是 Swift 的话,需要在您工程的 Bridging-Header.h 文件中加入 SDK 的引用

#import
请使用您之前从融云开发者控制台注册得到的 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

详情查看:融云-为用户提供IM即时通讯和实时音视频通信云服务

你可能感兴趣的:(ios,ios,cocoa,macos)