注册

iOS客户端集成环信3.0详解

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

前提:
观看视频,视频地址如下:
环信SDK集成:http://www.imgeek.org/video/40
环信EaseUI集成:http://www.imgeek.org/video/39 

具体集成过程:
 一: 添加依赖库


 1. CoreMedia.framework
 2. AudioToolbox.framework
 3. AVFoundation.framework
 4. 4.MobileCoreServices.framework
 5. ImageIO.framework
 6. libc++.tbd
 7. libz,tbd
 8. libsqlite3.tbd
 9. libstdc++.6.0.9.tbd
 10. Foundation.framework
 11. libiconv.tbd    (Xcode7以上)


最终效果如图:

2910225-5b4ea705f8927b27.jpg



二:一些设置 

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>

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


2910225-be665cae8d135c76.jpg



4.新建pch文件,如图:


2910225-54390668176db8cd.jpg



进行设置,如图:


2910225-82defb53b6ca36f0.jpg



三:Appdelegate
#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;
}
四:添加键盘表情(说明)

在EaseMessageViewController.m的viewDidLoad方法结尾处加上
EaseEmotionManager * manager = [[EaseEmotionManager alloc] initWithType:EMEmotionDefault emotionRow:3 emotionCol:7 emotions:[EaseEmoji allEmoji]];
[self.faceView setEmotionManagers:@[manager]];

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


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

0 个评论

要回复文章请先登录注册