美文网首页环信
iOS客户端集成环信3.0详解

iOS客户端集成环信3.0详解

作者: XRD_太原 | 来源:发表于2016-11-22 09:26 被阅读344次

<h3>说明:</h3>
集成的SDK版本 V3.2.1
版本时间2016-11-12
集成时间2016-11-21

<h3>前提:</h3>
观看视频,视频地址如下:
环信SDK集成:http://www.imgeek.org/video/40
环信EaseUI集成:http://www.imgeek.org/video/39
<h3>具体集成过程:</h3>
<h4>一: 添加依赖库</h4>

  1. CoreMedia.framework
  2. AudioToolbox.framework
  3. AVFoundation.framework
    4.MobileCoreServices.framework
  4. ImageIO.framework
  5. libc++.tbd
  6. libz.tbd
  7. libsqlite3.tbd
  8. libstdc++.6.0.9.tbd
  9. Foundation.framework
  10. libiconv.tbd (Xcode7以上)
    最终效果如图:


    这里写图片描述

<h4>二:一些设置 </h4>
1.修改info.plist文件,适配iOS9以上系统,在info.plist中添加

    <key>NSAppTransportSecurity</key>
    <dict>
        <key>NSAllowsArbitraryLoads</key>
        <true/>
    </dict>

2.修改info.plist文件,适配iOS10.0,在info.plist中添加

为了调用相册,地理位置,话筒,照相机,通讯录

    <key>NSPhotoLibraryUsageDescription</key>
    <string>中华人需要使用相册服务获取照片</string>
    <key>NSCameraUsageDescription</key>
    <string>中华人需要使用照相机服务进行拍照获取照片</string>
    <key>NSContactsUsageDescription</key>
    <string>中华人需要使用通讯录服务进行好友邀请</string>
    <key>NSMicrophoneUsageDescription</key>
    <string>中华人需要使用话筒进行吐槽反馈信息</string>
    <key>NSLocationUsageDescription</key>
    <string>中华人需要使用定位服务来发送位置信息</string>
    <key>NSLocationWhenInUseUsageDescription</key>
    <string>中华人需要使用定位服务来发送位置信息</string>

3.Bulid Setting 设置bitcode 为NO,如图:


这里写图片描述

4.新建pch文件,如图:


这里写图片描述
进行设置,如图:
这里写图片描述

<h4>三:Appdelegate</h4>

#import "AppDelegate.h"
#import "ChatViewController.h"

@interface AppDelegate ()

@end

@implementation AppDelegate


- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    // Override point for customization after application launch.
    
    // SDK的初始化
    /**
     * EMOptions类是SDK的配置信息
     * 可以加入推送证书的名称
     */
    EMOptions *options = [EMOptions optionsWithAppkey:@"luoxiaoyong#mingxin"];
    options.apnsCertName = @"Push_dev";
    
    // 初始化SDK
    EMError *error = [[EMClient sharedClient] initializeSDKWithOptions:options];
    if (!error) {
        NSLog(@"初始化成功");
    }
    
    // 登录
    error = [[EMClient sharedClient] loginWithUsername:@"xrdaly001" password:@"123456"];
    
    if (!error) {
    
        NSLog(@"登录成功");
    }
    else {
    
        NSLog(@"登录失败");
    }
    
    self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];
    ChatViewController *vc = [[ChatViewController alloc] initWithConversationChatter:@"xrdaly002" conversationType:EMConversationTypeChat];
    UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:vc];
    self.window.rootViewController = nav;
    
    [self.window makeKeyAndVisible];
    
    return YES;
}

<h4>四:添加键盘表情(说明)</h4>

在EaseMessageViewController.m的viewDidLoad方法结尾处加上

EaseEmotionManager * manager = [[EaseEmotionManager alloc] initWithType:EMEmotionDefault emotionRow:3 emotionCol:7 emotions:[EaseEmoji allEmoji]];
[self.faceView setEmotionManagers:@[manager]];

<h4>五:国际化文件乱码问题</h4>
下载demo,直接把demo中的国际化文件拷贝到现在项目中,ok

以上就是实现环信单聊的全部过程,,如有任何疑问欢迎加Q:714700382,我们共同讨论,共同进步

相关文章

网友评论

  • 好棒大大:demo 来一发亲爱的 526121793@qq.com
  • imGeek:很棒,赞一个!
    XRD_太原:@喵喵i 额,发表文章简书和csdn用的同样的编辑器markdown,在imGeek上还需要重新排版,不准备弄了,直接把地址一丢完事。
    imGeek:@IOS猿程序 可以再imgeek社区也发一份http://www.imgeek.org/
    会被收录到环信开发者周刊http://www.easemob.com/weekly
    XRD_太原:@喵喵i 嘿嘿,会再接再厉
  • 贺乾龙:这就没了?
    XRD_太原:@贺乾龙 该文实现了单聊功能,后续会更新文章,集成更多功能以及设计界面,而且会在gitHub上传demo,敬请期待
  • XRD_太原::kissing_heart:自己给自己打赏了2元

本文标题:iOS客户端集成环信3.0详解

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