美文网首页
小溪云通信推送功能介绍

小溪云通信推送功能介绍

作者: lswhcmcc | 来源:发表于2016-08-01 16:36 被阅读0次

本文档里的接口,适用于LittlecIm.framework(v1.3.2)版本

1. 制作推送证书

第 1 步:打开🌍苹果开发者网站

第 2 步:从 Account 进入 Certificates, Identifiers & Profiles。

第 3 步:选择要制作的推送证书。

● 对于开发环境(sandbox)的推送证书,请选择 Apple Push Notification service SSL (Sandbox)

● 对于生产环境(production)的推送证书,请选择 Apple Push Notification service SSL (Production)

第 4 步:选择对应的 APP ID(小溪示例使用 ChatAppDemo,所以此处APP ID选择 com.cmcchy.xiaoxiApp)。

第 5 步:打开钥匙串访问 → 证书助理 → 从证书颁发机构请求证书,根据 Certificate Assistant 的提示,创建 Certificate Request。

第 6 步:上传上一步中创建的 Certificate Request 文件。

第 7 步:上传完毕后,推送证书就被正确生成了,之后我们下载下来这个证书,并双击导入系统。

2. 上传推送证书

第 1 步:打开钥匙串访问 → Certificates,我们会看到有刚刚我们制作好的推送证书。

导出并保存为 P12 格式并设置密码。

第 2 步:登录🌍小溪管理后台

第 3 步:输入了正确的账号后,选择对应的 APP(小溪示例使用 ChatAppDemo,选择相应环境(沙箱/线上)后点击“管理”)。

第 4 步:同时上传开发环境证书和生产环境证书。(上传之前导出的 P12 文件,密码则为此 P12 文件的密码)

● 注意:请正确上传相应环境对应的证书(创建的是 Apple Push Notification service SSL Sandbox 为开发环境;Apple Push Notification service SSL Production 为生产环境)。

3 调用小溪APNS推送接口

推送模块接口属于CMIMPushNotification类,共提供3个接口供开发者调用,分别为:传入deviceToken,订阅消息推送,取消消息推送。

3.1 传入deviceToken

调用此接口向服务器传入deviceToken。

/**
 *  @brief   配置推送需要的设备token
 *
 *  @param  deviceToken 在application的代理方法里获取到
 */
- (void)configWithDeviceToken:(NSData*)deviceToken;

◆ 首先需要注册离线推送:

//iOS8 注册APNS
if ([application respondsToSelector:@selector(registerForRemoteNotifications)]) 
{
    [application registerForRemoteNotifications];
    UIUserNotificationType notificationTypes = UIUserNotificationTypeBadge |
    UIUserNotificationTypeSound |
    UIUserNotificationTypeAlert;
    UIUserNotificationSettings *settings = [UIUserNotificationSettings 
    settingsForTypes:notificationTypes categories:nil];
    [application registerUserNotificationSettings:settings];
}
else
{
    UIRemoteNotificationType notificationTypes = UIRemoteNotificationTypeBadge |
    UIRemoteNotificationTypeSound |
    UIRemoteNotificationTypeAlert;
    [[UIApplication sharedApplication] registerForRemoteNotificationTypes:notificationTypes];
}

◆ 注册了推送功能,iOS 才会自动回调以下方法,得到 deviceToken,您需要将 deviceToken 传给 SDK。

// 将得到的deviceToken传给SDK
- (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:
(NSData *)deviceToken
{
     //获取终端设备标识,服务器端推送消息到APNS时需要知道终端的标识,APNS通过注册的终端标识找到终端设备
    [[CMIMPushNotification defaultManager]configWithDeviceToken:deviceToken];
}
 
// 注册deviceToken失败
- (void)application:(UIApplication *)application didFailToRegisterForRemoteNotificationsWithError:
(NSError *)error
{
    NSLog(@"error -- %@",error);
}
● APNS 注册失败,一般是由于使用了通用证书或者是模拟器调试导致,请检查证书并用真机调试。此处是 iOS 系统报的错,
  如仍不能确定,请从网上查找相关资料。

3.2 订阅消息推送

调用此接口向服务器订阅消息推送。

/**
 *  订阅推送
 *
 *  @param bProductCrtType    推送证书类型: YES为product证书类型(发布用), NO为develop证书类型(开发调试用)
 *  @param subscribeSucessful 订阅成功回调
 *  @param subscribeFail      订阅失败回调
 */
- (void)subscribePushNotification:(BOOL)bProductCrtType 
              subscribeSuccessful:(subscribeSucessful)subscribeSucessful 
                    subscribeFail:(subscribeFail)subscribeFail;

调用示例(一般在登录成功后调用):

//订阅推送通知
[[CMIMPushNotification defaultManager] subscribePushNotification:YES subscribeSuccessful:^{
            NSLog(@"subscribePushNotification successful!);
 } subscribeFail:^(NSString *error) {
            NSLog(@"subscribePushNotification error:%@",error);
 }];

3.3 取消消息推送

调用此接口向服务器取消消息推送。

/**
 *  取消消息推送
 */
- (void)cancelPushNotification;

调用示例(一般在账号退出后调用):

 [[CMIMPushNotification defaultManager] cancelPushNotification];

相关文章

  • 小溪云通信推送功能介绍

    本文档里的接口,适用于LittlecIm.framework(v1.3.2)版本 1. 制作推送证书 第 1 步:...

  • 用户昵称同步:RPC & IM Server

    即时通信功能是 v1.3 开始做的一个重要功能。初始选用腾讯,而后基于通信质量和即时速度,改用 网易云信。 网易云...

  • 友盟推送那些问题(iOS10)

    上周,公司要实现推送通知的功能,并决定在项目中集成友盟推送的 SDK来代替之前集成的云巴推送。 云巴推送是什么鬼?...

  • 后台推送通知(Background update notific

    一:后台推送通知功能介绍 后台推送是iOS7新增的功能,通过后台推送可以把客户端App唤醒,唤醒之后App将获得3...

  • IM小结

    作用: 腾讯云云通信 IM 提供功能丰富,易于接入的即时通信服务。云通信 IM 能提供单聊、群聊、资料托管、关系链...

  • 阿里云移动推送的接入和踩坑

    近期由于业务需求,要换掉以前的推送,首先选择了阿里云推送,官方介绍阿里移动推送(Alibaba Cloud Mob...

  • 融云的远程推送功能

    折腾了好久,记个备忘录 1、项目先自己设置好BundleID,此处注意Xcode有两处填写BundleID的地方,...

  • iOS如何通过推送打开指定页面

    众所周知推送功能已经是APP如今必不可少的一个APP功能,现在我就来介绍一下iOS如何通过推送打开指定页面。 先去...

  • vue-native-websocket

    前言 最近在做一个客户端通信功能,由于websocket可以进行双向通信(服务器可以主动向客户端推送信息,客户端也...

  • 服务端集成要点 @ 腾讯云通信

    腾讯具有高并发、高可靠的即时通信能力;利用 腾讯云通信 提供的 SDK 可以将即时通信功能快速集成到自己的 APP...

网友评论

      本文标题:小溪云通信推送功能介绍

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