美文网首页
iOS 环信SDK使用日志

iOS 环信SDK使用日志

作者: 山杨 | 来源:发表于2021-02-25 16:02 被阅读0次
    1. 环信IM部分
    IEMChatManager
    // 给chatManager添加代理self
    [EMClient.sharedClient.chatManager addDelegate:self delegateQueue:nil];
    // 实现两个代理方法
    - (void)cmdMessagesDidReceive:(NSArray *)aCmdMessages {
    // aCmdMessages中的对象类型是EMMessage
    }
    - (void)messagesDidReceive:(NSArray *)aMessages {
    // aMessages中的对象类型是EMMessage
    }
    
    IEMChatroomManager
    // 给roomManager添加代理self
    [EMClient.sharedClient.roomManager addDelegate:self delegateQueue:nil];
    // 有人加入的聊天室的时候会触发这个代理
    - (void)userDidJoinChatroom:(EMChatroom *)aChatroom user:(NSString *)aUsername {
      // 只能获取到在环信注册的用户名
    }
    
    1. 环信的音视频部分(业务只用到音频)
    EMConferenceManagerDelegate
    // 给conferenceManager添加代理self
    [EMClient.sharedClient.conferenceManager addDelegate:self delegateQueue:nil];
    // 加入语音房间
    // 这里可以设置roomConfig的时候带入用户的昵称头像等信息
    // role为加入房间时候的角色Admin>Speaker>Audience,当role = Audience时,其他人无法通过memberDidJoin:member:代理方法获取你的头像昵称等信息
    [EMClient.sharedClient.conferenceManager joinRoom: password: role: roomConfig: completion:];
    // 有人加入房间会触发代理方法
    - (void)memberDidJoin:(EMCallConference *)aConference member:(EMCallMember *)aMember {
      // 这里的aMember中就包含了用户设置roomConfig时的头像昵称等信息
    }
    // 在这个代理方法中订阅其他用户发出的数据流
    - (void)streamDidUpdate:(EMCallConference *)aConference addStream:(EMCallStream *)aStream {
        // 订阅流
        [EMClient.sharedClient.conferenceManager subscribeConference:aConference
                                                            streamId:aStream.streamId
                                                     remoteVideoView:nil completion:^(EMError *aError) {
    
        }];
    }
    

    相关文章

      网友评论

          本文标题:iOS 环信SDK使用日志

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