ios集成云通信登录遇到的坑,调用登录方法返回6013错误

我用的ImSDK3.x,集成还是很简单的cocoapod或者直接将相应framework拖到工程里边,然后就是初始化相关->登录->监听消息等等
遇到的坑呢就是sdk初始化成功,用户初始化成功,登录莫名返回6013
官方文档给出的解释就是

6013 SDK 未初始化或者用户未登录成功,请先登录,成功回调之后重试

看到这句话是不是很*疼!
下面就是我的具体代码
初始化

TIMSdkConfig * config = [[TIMSdkConfig alloc] init];
config.sdkAppId =9998889;
config.accountType = @"00000";
config.disableCrashReport=YES;
//config.connListener=self;
int initResult= [[TIMManager sharedInstance] initSdk:config];

初始化返回0意味着初始化成功
然后初始化TIMUserConfig

TIMUserConfig * userConfig = [[TIMUserConfig alloc] init];
[[TIMManager sharedInstance] setUserConfig:userConfig];

返回0,也初始化成功
然后调用登录接口

TIMLoginParam *loginParam=[[TIMLoginParam alloc]init];
    loginParam.identifier=@"xcxxczc8zxc9zxc";
    loginParam.userSig=@"masdncbjzxn*aszxmnxmcz-_asdcscmzx ";
    loginParam.appidAt3rd=@"9998889";
    NSLog(@"aa");
    [[TIMManager sharedInstance] login: loginParam succ:^(){
        NSLog(@"Login Succ");
    } fail:^(int code, NSString * err) {
        NSLog(@"Login Failed: %d->%@", code, err);
    }];

却返回错误代码
Login Failed: 6013->SDK not init(sdk 初始化失败或用户未登录)
一脸懵逼,腾讯文档完全没有提到这种情况,而且还收到文档的误导


ios集成云通信登录遇到的坑,调用登录方法返回6013错误_第1张图片
image.png

就看了上图的文档所有没有实现网络监听回调,然而问题就出在这里。
查文档没有任何过多的解释,搜索关于云通信得问题少的可怜,不知道是用的少还是怎么!经过半天的摸索,都要放弃了,期间还联系腾讯技术部门,然而并没有得到回音!最后再将要放弃的时候,灵光一闪是不是在登录的时候初始化还未完成回着网络有问题。然后就把上边截图的网络回调添加上,

/**
 *  网络连接成功
 */
- (void)onConnSucc{
     NSLog(@"Connect Succ");
    if ([[TIMManager sharedInstance] getLoginStatus]==1) {
        NSLog(@"已登录");
    }else if([[TIMManager sharedInstance] getLoginStatus]==2){
        NSLog(@"登录中");
    }else{
        NSLog(@"未登录");
        [self login];
    }
    
//    [self login];
}

断点,果然在调用登录时候,网络还没有连接成功。
然后就根据这个方法搜索云通信demo,看看(前边难道没有看demo?看了,demo实在不敢恭维,太乱了),demo上得登录是在初始化sdk后延迟了几毫米秒登录的吧!不知道demo其他地方还有什么处理,这样我感觉是有问题的,我舅按demo的方法实验了一下,发现再高延时网络下一样登录失败!
所以延迟登录也放弃了;


至此此坑已脱!
记录希望遇到此问题的小伙伴不再走弯路!

你可能感兴趣的:(ios集成云通信登录遇到的坑,调用登录方法返回6013错误)