手把手教你集成环信3.0及时通讯

  • 吐槽一下

    一开始要集成环信客服这个功能,去环信官网找所谓的开发文档,翻了半天没找到一个完整的流程,就比如看到下一步让你跳转到他们技术人员自己写的demo上,没看到步骤流程还安慰自己有demo看也行。
    下载完demo想看看效果,谁知道你官网上面贴的demo是满满的crash啊!!!找你们技术人员重新要了一份demo,又来跟我说按照官网流程去配置工程,然后又crash了。。。。。参照了demo是了2.0的SDK也crash 了,又换成3.0 SDK,总之折腾了很久啊,完全就是吐槽环信没有一个完整的开发文档,过程详细一点啊!!让你看我写的demo就可以做出完整的即时通讯??仅此记录一下自己集成的demo过程出现的crash和解决办法

  • demo过程
    1.首先去下载一个最新版的环信SDK3.0(补充一下,想做移动客服的不要被他忽悠了,一样要下载IM 3.x的SDK,我就是在这里被坑了好多时间啊!!)
    下好的SDK里面包含一个chatDemo,一个…贴图算了
    标记的就是可以使用的,EaseUI和SDK要拖入自己的工程

    2.准备好先把SDK拖入自己的工程路径下,然后开始去build phases 里面配置依赖库,挖个坑让你去参照官网开发文档的依赖库一次添加,添加完编译一下,可能会出问题,可能会通过,不通过肯定是这样的哈哈哈哈
    

    按照官网添加的依赖库

我管你通不通过,按照这张图添加保证你接下来不会报依赖库的错,
这是我自己添加的依赖库

3.这个过了后开始参照官网在APPDelegate.m;里面初始化一下

    //AppKey:注册的AppKey,详细见下面注释。
    //apnsCertName:推送证书名(不需要加后缀),详细见下面注释。

    EMOptions *options = [EMOptions optionsWithAppkey:@"easemob-demo#chatdemoui"];
    options.apnsCertName = @"istore_dev";
    [[EMClient sharedClient] initializeSDKWithOptions:options];

    EMError *error = [[EMClient sharedClient] registerWithUsername:@"easeuidemo" password:@"1"];
    if (error==nil) {
        NSLog(@"注册成功");
    }
    EMError *error1 = [[EMClient sharedClient] loginWithUsername:@"easeuidemo" password:@"1"];
    if (!error1) {
        NSLog(@"登录成功");
    }

4.代码添加完编译一下,发现没有提示登录成功???
这是网络请求被中断了

然后去info.plist文件厘面修改
添加App Transport Security Settings
添加App Transport Security Settings下得allow arbitrary…设置为YES,编译通过后台打印登录成功。
好的先恭喜你走了一半

这里好像漏了一步,创建一个PCH文件(这个不会自己百度去了),然后在pch文件里面导入#import “EMSDK.h”这个头文件!!!!这样上面初始化什么的才可以通过,哈哈哈哈 这是我挖的坑。

5.添加聊天页面了,通过某一个按钮点击跳转到聊天页面,方法自己定义,我来讲步骤::::
把前面下载的EaseUI拖到自己的工程,凡是拖入的 记得勾选上第一个选项,然后在pch文件导入#import “EaseUI.h”的头文件,在按钮跳转的方法的控制器里面添加#import “EaseMessageViewController.h”这个头文件(这个是生成聊天页面的),然后在跳转方法里创建跳转

    //填对方的ID
    EaseMessageViewController *chatVC = [[EaseMessageViewController alloc]initWithConversationChatter:@"easeuidemo2" conversationType:EMConversationTypeChat];
    chatVC.title = @"easeuidemo2";
    [self.navigationController pushViewController:chatVC animated:YES];

补充一下:要是做移动客服的,这里的ID填写的就是客服号,一开始注册的是绑定的IM号,这样就可以实现对接客服了。
编译一下crash了,应该是这样的
好可怕。。。。

这原因什么的我也没百度解释出来,我知道这么做:去pch文件里 在最上面和最底部添加上 #ifdef OBJC 和 #endif
如图

在编译,通过了哈哈哈
点击跳转可以了,页面有了,好兴奋啊,这上面是一点一点总结出来的啊!!!!
但是!!!点击表情图标又crash了,好从新来了,回到上面下载的SDK,找到chatDemo里面的chatView,把chatView这个文件夹拖到自己的工程,回到跳转的那个页面,导入chatViewController.h,把EaseMessageViewController 换成chatViewController,再运行,页面出来了,表情也有了,还有一个兔斯基表情也送你了,回到下载的压缩包,找到Resources文件下的emotion文件,别问那么多,拖到你的工程,再运行。

ok,一个完整的单聊页面出来了。整篇文章就是吐槽环信官网没有一个这么简单粗暴易懂的的流程文档啊,希望下次别入坑了,以上内容不敢保证不出其他问题,如果有,那一定是忘记了哪个细节。
最后补充一下参考视频:
2.x和3.x对比导入的视频: http://community.easemob.com/video/23

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值