====== 环信 EMPush iOS 集成 ======
本文介绍如何集成环信推送 EMPush iOS SDK。
===== 前提条件 =====
系统版本要求:
EMPush 支持 iOS 10.0 及以上系统版本。
===== 集成 EMPush iOS SDK =====
EMPush iOS SDK 支持使用 pod 集成或本地集成。
==== 一、导入 iOS EMPush SDK ====
=== 安装 Cocoapods 工具 ===
- 开始前确保你已安装 Cocoapods。参考 [[https://guides.cocoapods.org/using/getting-started.html#getting-started|Getting Started with CocoaPods]] 安装说明。
- 在终端里进入项目根目录,并运行 ''%%pod init%%'' 命令。项目文件夹下会生成 ''%%Podfile%%'' 文件。
=== pod 方式集成 EMPush ===
- 打开 ''%%Podfile%%'' 文件,添加 EPush 依赖。
注意将 ''%%ProjectName%%'' 替换为你的 target 名称。
platform :ios, '11.0'
# Import CocoaPods sources
source 'https://github.com/CocoaPods/Specs.git'
target 'ProjectName' do
pod 'EPush'
end
pod install
成功安装后,Terminal 中会显示 ''%%Pod installation complete!%%''。此时项目文件夹下会生成一个 ''%%xcworkspace%%'' 文件。
打开新生成的 ''%%xcworkspace%%'' 文件运行项目。
#import
=== 2. 初始化 EMPush ===
EMPushClientOptions *option = [EMPushClientOptions optionsWithAppkey:@"appkey"];
option.enableConsoleLog = YES;
option.isAutoLogin = YES;
option.apnsCertName = @"apnsname";
[EMPushClient initializeSDKWithOptions:option launchDelegate:self completion:^(EMError *aError) {
}];
=== 3. 注册 ===
注册模式分两种,开放注册和授权注册。只有开放注册时,才可以客户端注册。
强烈建议开发者通过后台调用 REST 接口去注册环信 ID,不建议使用客户端注册。
[EMPushClient registerWithUsername:@"name" password:@"pswd" completion:^(NSString *aUsername, EMError *aError) {
if (!aError) {
// 注册完成。
} else {
// 注册失败,aError 包含错误原因。
}
}];
=== 4. 连接服务器 ===
[EMPushClient connectWithUsername:name password:pswd completion:^(NSString *aUsername, EMError *aError) {
if (!aError) {
// 连接到服务器。
} else {
// 连接服务器失败,aError 包含错误原因。
}
}];
=== 5. 断开服务器连接 ===
[EMPushClient disConnect:YES completion:^(EMError *aError) {
if (!aError) {
// 断开服务器连接。
} else {
// 断开连接有错误,aError 包含错误原因。
}
}];
=== 6. 添加登录状态代理 ===
添加代理的类必须实现 ''%%EMClientDelegate%%'',进行代理实现。
[EMPushClient addConnectDelegate:self delegateQueue:nil];