本文介绍如何集成环信推送 EMPush iOS SDK。
系统版本要求:
EMPush 支持 iOS 10.0 及以上系统版本。
EMPush iOS SDK 支持使用 pod 集成或本地集成。
pod init
命令。项目文件夹下会生成 Podfile
文件。Podfile
文件,添加 EPush 依赖。
注意将 ProjectName
替换为你的 target 名称。
platform :ios, '11.0'
# Import CocoaPods sources
source 'https://github.com/CocoaPods/Specs.git'
target 'ProjectName' do
pod 'EPush'
end
在终端 Terminal cd 到 podfile
文件所在目录,执行如下命令集成 SDK。
pod install
成功安装后,Terminal 中会显示 Pod installation complete!
。此时项目文件夹下会生成一个 xcworkspace
文件。
打开新生成的 xcworkspace
文件运行项目。
EMPush.framework
至项目路径。添加完成后,项目会自动链接所需系统库。
#import <EMPush/EMPush.h>
EMPushClientOptions *option = [EMPushClientOptions optionsWithAppkey:@"appkey"];
option.enableConsoleLog = YES;
option.isAutoLogin = YES;
option.apnsCertName = @"apnsname";
[EMPushClient initializeSDKWithOptions:option launchDelegate:self completion:^(EMError *aError) {
}];
注册模式分两种,开放注册和授权注册。只有开放注册时,才可以客户端注册。
强烈建议开发者通过后台调用 REST 接口去注册环信 ID,不建议使用客户端注册。
[EMPushClient registerWithUsername:@"name" password:@"pswd" completion:^(NSString *aUsername, EMError *aError) {
if (!aError) {
// 注册完成。
} else {
// 注册失败,aError 包含错误原因。
}
}];
[EMPushClient connectWithUsername:name password:pswd completion:^(NSString *aUsername, EMError *aError) {
if (!aError) {
// 连接到服务器。
} else {
// 连接服务器失败,aError 包含错误原因。
}
}];
[EMPushClient disConnect:YES completion:^(EMError *aError) {
if (!aError) {
// 断开服务器连接。
} else {
// 断开连接有错误,aError 包含错误原因。
}
}];
添加代理的类必须实现 EMClientDelegate
,进行代理实现。
[EMPushClient addConnectDelegate:self delegateQueue:nil];