当前位置: 首页 > 工具软件 > SDK-iOS > 使用案例 >

xcode引入sdk_iOS SDK 介绍及导入

袁增
2023-12-01

以上步骤进行完后,编译工程。如果没有报错,恭喜你,集成 SDK 成功,可以进行下一步了。

初始化 SDK

第 1 步:引入相关头文件 #import “EMSDK.h”。

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

1 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions2 {3 //AppKey:注册的AppKey,详细见下面注释。4 //apnsCertName:推送证书名(不需要加后缀),详细见下面注释。

5 EMOptions *options = [EMOptions optionsWithAppkey:@"douser#istore"];6 options.apnsCertName = @"istore_dev";7 [[EMClient sharedClient] initializeSDKWithOptions:options];8

9 returnYES;10 }11

12 //APP进入后台

13 - (void)applicationDidEnterBackground:(UIApplication *)application14 {15 [[EMClient sharedClient] applicationDidEnterBackground:application];16 }17

18 //APP将要从后台返回

19 - (void)applicationWillEnterForeground:(UIApplication *)application20 {21 [[EMClient sharedClient] applicationWillEnterForeground:application];22 }

调用的 SDK 接口参数解释如下:

AppKey: 区别 APP 的标识,参考开发者注册及管理后台。

apnsCertName: iOS 中推送证书名称,参考制作与上传推送证书。

环信为 IM 部分提供了 APNS 推送功能,如果您要使用,请跳转到APNS离线推送。

注册

注册模式分两种,开放注册和授权注册。

只有开放注册时,才可以客户端注册。开放注册是为了测试使用,正式环境中不推荐使用该方式注册环信账号。

授权注册的流程应该是您服务器通过环信提供的 REST API 注册,之后保存到您的服务器或返回给客户端。

1 #import "RegistViewController.h"

2 #import "EMSDK.h" //环信的框架

3 @interfaceRegistViewController ()4 //用户名

5 @property (weak, nonatomic) IBOutlet UITextField *userNameTextFiled;6

7 //密码

8 @property (weak, nonatomic) IBOutlet UITextField *passwordTextField;9

10

11 @end

12

13 @implementationRegistViewController14

15 - (void)viewDidLoad {16 [super viewDidLoad];17 //Do any additional setup after loading the view.

18 }19

20 //点击注册按钮

21 - (IBAction)didClickRegistButton:(id)sender {22

23 if (self.userNameTextFiled.text.length == 0 || self.passwordTextField.text.length == 0) {24 NSLog(@"用户名密码不能为空");25 return;26 }27

28 //环信的注册方法

29

30 EMError *error =[[EMClient sharedClient] registerWithUsername:self.userNameTextFiled.text password:self.passwordTextField.text];31 NSLog(@"error = %@", error);32 if (!error) {33 NSLog(@"注册成功");34 }35

36 }

登录

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

1 #import "ViewController.h"

2 #import "EMSDK.h"

3 @interfaceViewController ()4 //用户名

5 @property (weak, nonatomic) IBOutlet UITextField *UserNameFiledText;6

7 //密码

8 @property (weak, nonatomic) IBOutlet UITextField *passwordFieldText;9

10

11 @end

12

13 @implementationViewController14

15 - (void)viewDidLoad {16 [super viewDidLoad];17 //Do any additional setup after loading the view, typically from a nib.

18 }19

20

21 //登录按钮

22 - (IBAction)loginClickButton:(id)sender {23

24 if (self.UserNameFiledText.text.length == 0 || self.passwordFieldText.text.length == 0) {25 NSLog(@"用户名密码不能为空");26 }27

28 //环信登录的方法

29 EMError *error =[[EMClient sharedClient] loginWithUsername:self.UserNameFiledText.text password:self.passwordFieldText.text];30 NSLog(@"%@", error);31 if (!error) {32 NSLog(@"登录成功");33 //返回会话列表

34

35 [self dismissViewControllerAnimated:YES completion:nil];36 }37

38 }

自动登录

自动登录:即首次登录成功后,不需要再次调用登录方法,在下次 APP 启动时,SDK 会自动为您登录。并且如果您自动登录失败,也可以读取到之前的会话信息。

SDK 中自动登录属性默认是关闭的,需要您在登录成功后设置,以便您在下次 APP 启动时不需要再次调用环信登录,并且能在没有网的情况下得到会话列表。

1 EMError *error = [[EMClient sharedClient] loginWithUsername:@"8001" password:@"111111"];2 if (!error)3 {4 [[EMClient sharedClient].options setIsAutoLogin:YES];5 }

 类似资料: