美文网首页iOS_Skill_Collect环信
环信3.0ios客户端的集成(四)

环信3.0ios客户端的集成(四)

作者: 刀客传奇 | 来源:发表于2017-06-09 01:41 被阅读121次

版本记录

版本号 时间
V1.0 2017.06.08

前言

很多app种都集成环信做第三方信息通讯工具,这里我们就看一下环信的主要功能和集成方法。先给出环信3.0的地址。
感兴趣的可以参考:
1. 环信ios客户端的集成(一)
2. 环信ios客户端的集成(二)
3. 环信ios客户端的集成(三)

这一篇主要说一下iOS SDK 快速集成。

一、快速集成单聊功能

第 1 步:集成环信SDK

第 1 步:集成环信SDK

方式一:推荐使用Cocoapods集成环信SDK。Cocoapods提供了一个简单的依赖管理系统,避免手动导入产生的错误(首先需要确认已经安装了Cocoapods)。

sudo gem install cocoapods
pod setup

在Xcode项目的根目录下,新建一个空文件,命名为Podfile,向此文件添加以下行:

#Lite版本
pod 'HyphenateLite'
#Full版本
pod 'Hyphenate'

在Podfile目录下,执行以下指令:

pod install

方式二:手动集成

  • 在环信官网下载SDK。

  • 手动将SDK导入到自己的工程中(集成介绍)

第 2 步:初始化环信SDK

以Cocoapods方式集成SDK,需要引入相关头文件

//Lite版本
#import <HyphenateLite/HyphenateLite.h>
//Full版本
#import <Hyphenate/Hyphenate.h>

在工程的 AppDelegate 中的以下方法中,调用 SDK 对应方法。

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    //AppKey:注册的AppKey,详细见下面注释。
    //apnsCertName:推送证书名(不需要加后缀),详细见下面注释。
    EMOptions *options = [EMOptions optionsWithAppkey:@"douser#istore"];
    options.apnsCertName = @"istore_dev";
    [[EMClient sharedClient] initializeSDKWithOptions:options];

    return YES;
}

// APP进入后台
- (void)applicationDidEnterBackground:(UIApplication *)application
{
    [[EMClient sharedClient] applicationDidEnterBackground:application];
}

// APP将要从后台返回
- (void)applicationWillEnterForeground:(UIApplication *)application
{
    [[EMClient sharedClient] applicationWillEnterForeground:application];
}

第 3 步:登录环信

登录:调用 SDK 的登录接口进行的操作。

[[EMClient sharedClient] loginWithUsername:@"8001"
                                  password:@"111111"
                                completion:^(NSString *aUsername, EMError *aError) {
                                    if (!aError) {
                                        NSLog(@"登录成功");
                                    } else {
                                        NSLog(@"登录失败");
                                    }
                                }];

第 4 步:导入EaseUI

方式一:下载Release版本SDK,在自己的项目中导入EaseUI整个目录。

导入EaseUI

方式二: 通过cocoapods集成EaseUI。

pod 'EaseUI', :git => 'https://github.com/easemob/easeui-ios-hyphenate-cocoapods.git'

第 5 步:初始化单聊页面

//环信ID:@"8001"
//聊天类型:EMConversationTypeChat
EaseMessageViewController *chatController = [[EaseMessageViewController alloc] initWithConversationChatter:@"8001" conversationType:EMConversationTypeChat];

消息功能集成详细介绍


二、快速集成群聊功能

首先需要完成快速集成单聊上述步骤。

1. 创建群组

EMError *error = nil;
EMGroupOptions *setting = [[EMGroupOptions alloc] init];
setting.maxUsersCount = 500;
setting.style = EMGroupStylePublicOpenJoin;// 创建不同类型的群组,这里需要才传入不同的类型
EMGroup *group = [[EMClient sharedClient].groupManager createGroupWithSubject:@"群组名称" description:@"群组描述" invitees:@[@"6001",@"6002"] message:@"邀请您加入群组" setting:setting error:&error];
if(!error){
    NSLog(@"创建成功 -- %@",group);
}

2.初始化群聊页面

//群ID:@"groupId"
//聊天类型:EMConversationTypeGroupChat
EaseMessageViewController *chatController = [[EaseMessageViewController alloc] initWithConversationChatter:@"groupId" conversationType:EMConversationTypeGroupChat];

群组功能集成详细介绍


三、快速集成好友功能

首先需要完成快速集成单聊上述步骤。

1.添加好友

[[EMClient sharedClient].contactManager addContact:@"8001"
                                           message:@"我想加您为好友"
                                        completion:^(NSString *aUsername, EMError *aError) {
                                            if (!aError) {
                                                NSLog(@"邀请发送成功");
                                            }
                                        }];

//同意好友申请
[[EMClient sharedClient].contactManager approveFriendRequestFromUser:@"8001"
                                                          completion:^(NSString *aUsername, EMError *aError) {
                                                              if (!aError) {
                                                                  NSLog(@"同意好友成功");
                                                              }
                                                          }];

//拒绝好友申请
[[EMClient sharedClient].contactManager declineFriendRequestFromUser:@"8001"
                                                          completion:^(NSString *aUsername, EMError *aError) {
                                                              if (!aError) {
                                                                  NSLog(@"拒绝好友成功");
                                                              }
                                                          }];

2.删除好友

// 删除好友
[[EMClient sharedClient].contactManager deleteContact:@"8001"
                                           isDeleteConversation: YES
                                           completion:^(NSString *aUsername, EMError *aError) {
                                               if (!aError) {
                                                   NSLog(@"删除成功");
                                               }
                                           }];

3.获取好友

//从服务器获取所有的好友
[[EMClient sharedClient].contactManager getContactsFromServerWithCompletion:^(NSArray *aList, EMError *aError) {
    if (!aError) {
        NSLog(@"获取成功");
    }
}];
//从数据库获取所有的好友
NSArray *userlist = [[EMClient sharedClient].contactManager getContacts];

好友功能集成详细介绍


四、快速集成演示视频

后记

未完,待续~~~~~

风树雪湖

相关文章

  • 环信3.0ios客户端的集成(四)

    版本记录 前言 很多app种都集成环信做第三方信息通讯工具,这里我们就看一下环信的主要功能和集成方法。先给出环信3...

  • 环信3.0ios客户端的集成(十三)

    版本记录 前言 很多app种都集成环信做第三方信息通讯工具,这里我们就看一下环信的主要功能和集成方法。先给出环信3...

  • 环信3.0ios客户端的集成(一)

    版本记录 前言 很多app种都集成环信做第三方信息通讯工具,这里我们就看一下环信的主要功能和集成方法。先给出环信3...

  • 环信3.0ios客户端的集成(十四)

    版本记录 前言 很多app种都集成环信做第三方信息通讯工具,这里我们就看一下环信的主要功能和集成方法。先给出环信3...

  • 环信

    iOS 集成环信(四) 群聊iOS 环信集成(五) 加载会话列表

  • 环信UI3.0的集成方法

    介绍一下把环信EaseUI集成到项目中的具体实现步骤。 1.集成UI之前要把环信的SDK集成到项目中,环信SDK有...

  • iOS开发-集成环信即时通讯会话列表和聊天头像的设置

    环信SDK集成 请参考iOS开发-在现有项目中集成环信SDK及EaseUI或者参考官方文档 此操作只针对已集成环信...

  • iOS 之环信的使用

    一.环信简介 二.集成环信iOS SDK 三.初始化环信SDK 四.注册 五.登录 六.好友 七.消息 八.聊天 ...

  • 环信

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

  • iOS 环信集成

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

网友评论

本文标题:环信3.0ios客户端的集成(四)

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