美文网首页
环信集成纯视频聊天功能

环信集成纯视频聊天功能

作者: 的的可可 | 来源:发表于2020-06-12 21:53 被阅读0次

条件
1:iOS_IM_SDK_V3.6.8
2:Xcode(11.5)
首先去环境注册app获取到appkey,然后集成SDkK:环信DSK集成.

然后去下载环信的demo:环信Demo下载.
下载下来大概是这个鬼样子

demo
点进去。如果刚是pod集成(推荐),除了箭头所指的文件夹,其他都用不上;
打开箭头所指文件里面的工程
然后把下图中红框的部分拖入自己工程。
拖入自己工程
在然后将下图内容copy到自己的pch文件中
截屏2020-06-12下午9.29.37.png
注意:如果你的pch中还有其他头文件,copy的这个最好写在最前面。
然后点开你的AppDelegate.m在
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

方法中这样写

//AppKey替换成你的在环信上注册的appKey
EMOptions *options = [EMOptions optionsWithAppkey:@"AppKey"];
    // apnsCertName是证书名称,可以先传nil,等后期配置apns推送时在传入证书名称,后面介绍推送,这里可以不写
    options.apnsCertName = @"nil";
    EMError *error = [[EMClient sharedClient] initializeSDKWithOptions:options];
    if (!error) {
        PHlog(@"环信初始化成功");
    }
//环信注册和登录,这里就写在了AppDelegate.m中,实际根据个人项目情况写在合适的地方
            [[EMClient sharedClient] registerWithUsername:self.userModel.mobile password:@"sslz120" completion:^(NSString *aUsername, EMError *aError) {
                if (!aError) {
                    NSLog(@"注册成功");
                    // 传入在应用(appkey)下注册的IM用户user1,密码123,用于登录环信服务器
                    [[EMClient sharedClient] loginWithUsername:"user1" password:@"123" completion:^(NSString *aUsername, EMError *aError) {
                            if (!aError) {
                                NSLog(@"登录成功");
                                [DemoCallManager sharedManager];//DemoCallManager类能收到,发起视频通知的关键
                            } else {
                                NSLog(@"登录失败的原因---%@", aError.errorDescription);
                            }
                        }];

最后在你需要发起视频的地方发起通知

//对方的环信账号user2
[[NSNotificationCenter defaultCenter] postNotificationName:CALL_MAKE1V1 object:@{CALL_CHATTER:"user2", CALL_TYPE:@(EMCallTypeVideo)}];

这样就能发起视频了。当然,这里由于还没有集成推送,所以只有对方在线的时候才能接收到你发起的视频。
然后如果不想使用环信原生的视频界面,就可以修改EM1v1CallViewController里面的内容,自定义你的视频界面。
我集成后,发现一个小问题,就是当我发起视频后,然后挂断,对面能正常挂断,但是我一直处于拨打界面。
所以我在DemoCallManager里面的方法

- (void)callDidEnd:(EMCallSession *)aSession
            reason:(EMCallEndReason)aReason
             error:(EMError *)aError

中返回挂断原因的位置家了dismiss的语句

UIWindow *window = [[UIApplication sharedApplication] keyWindow];
            UIViewController *rootViewController = window.rootViewController;
            [rootViewController dismissViewControllerAnimated:YES completion:nil];

不知道这样有什么弊端,希望有大佬指正。

相关文章

  • 环信集成纯视频聊天功能

    条件1:iOS_IM_SDK_V3.6.82:Xcode(11.5)首先去环境注册app获取到appkey,然后集...

  • ios环信3.0版本集成(包含音频通话)

    由于最近需求需要给app添加聊天功能,所以想到了环信,上一次集成环信是去年了,当时也只是简单的集成简单聊天功能,也...

  • iOS开发-在现有项目中集成环信SDK及EaseUI

    公司项目中需要集成即时聊天的功能,在现有项目的基础上集成环信最新的SDK遇到了很多坑 注册和创建应用 环信开发文档...

  • 基于环信3.0仿WeChat

    没有集成环信UI,纯新手做的demo,页面都是自己写的,毕竟环信3.0有好多坑,喜欢的可以看看头像昵称功能没有实现...

  • 环信

    环信EaseUI 导入环信SDK和EaseUI使用cocoapods集成 集成视频:http://www.imge...

  • 环信聊天集成

    前言 在这个信息爆炸的时代,好像应用内聊天(即时通信)也称为了每款app的必备,如何实现聊天功呢? 这里分为两种情...

  • iOS 环信集成

    1、流程类: 最新环信V3.3.7单聊集成与使用 iOS环信3.0集成 (三)单聊集成有视频 iOS 环信3.0D...

  • 环信demo3的集成问题

    由于项目中需要聊天功能,所以最近几天研究了环信demo的集成,在集成过程中遇到了N多个BUG,集成过程及其的艰辛,...

  • 基于环信实现实时视频语音通话功能

    该文章是建立在已经用环信SDK实现了聊天功能的基础之上,再去添加新的视频语音通话功能。基于环信实现在线聊天功能 实...

  • IPV6适配之环信SDK

    项目中集成了环信,在IPV6 下无法登录环信的聊天服务器,无法聊天,因此需要适配环信 ,去年7月集成的版本应该是...

网友评论

      本文标题:环信集成纯视频聊天功能

      本文链接:https://www.haomeiwen.com/subject/emontktx.html