美文网首页iOS开发记录
iOS极光推送 送达数量统计

iOS极光推送 送达数量统计

作者: 夜凉听风雨 | 来源:发表于2019-11-04 15:57 被阅读0次

我用个推向自己的手机发送了一个通知,在极光控制台看到推送历史记录里这条消息的详情如下:

图片.png

因为发送的是普通通知所以只需要看 ”目标“, ”成功“, ”送达“, ”点击“ 这四个选项。
目标数量就是你要推送的设备数量,成功数量表示成功收到推送的设备数量,送达数量是我们自己写代码来统计的。点击数量表示用户点击通知打开app。

如何统计送达?

环境集成

第一步:集成好极光推送,并能收到通知。

这里不赘述这一步的具体实现,大家可以查找资料自行完成。

第二步 集成JPushNotificationExtensionService

下载SDK 将下载的SDK里面的两个文件导入工程中

图片.png

添加 Framework:libz.tbd 和 libresolv.tbd (集成了极光推送应该不需要再添加)

代码部分:

一、引入头文件

#import "JPushNotificationExtensionService.h"

二、注册appkey

[JPushNotificationExtensionService jpushSetAppkey:JPUSH_APPKEY];

三、统计送达代码:

+ (void)jpushReceiveNotificationRequest:(UNNotificationRequest *)request with:(void (^)(void))completion;

有两处可以统计送达,看业务需求选择统计哪里。一个是在app在前台收到通知回调代理方法里统计。另一个是在后台或者前台收到通知通过点击通知进入app的代理回调里统计。点击数量会自动被统计到,送达数量需要我们自己代码实现。

/**
 * 前台收到通知回调
 */
// iOS 10 Support
- (void)jpushNotificationCenter:(UNUserNotificationCenter *)center willPresentNotification:(UNNotification *)notification withCompletionHandler:(void (^)(NSInteger))completionHandler {
    // 展示消息
    NSDictionary * userInfo = notification.request.content.userInfo;
    if([notification.request.trigger isKindOfClass:[UNPushNotificationTrigger class]]) {
        [JPUSHService handleRemoteNotification:userInfo];
    }
    completionHandler(UNNotificationPresentationOptionAlert); // 需要执行这个方法,选择是否提醒用户,有 Badge、Sound、Alert 三种类型可以选择设置
    [UIApplication sharedApplication].applicationIconBadgeNumber = 0;
    [JPUSHService setBadge:0];
    // 上报送达
    [JPushNotificationExtensionService jpushReceiveNotificationRequest:notification.request with:^{}];
    
}
/**
 * 点击通知进来回调
 */
// iOS 10 Support
- (void)jpushNotificationCenter:(UNUserNotificationCenter *)center didReceiveNotificationResponse:(UNNotificationResponse *)response withCompletionHandler:(void (^)())completionHandler {
    // Required
    NSDictionary * userInfo = response.notification.request.content.userInfo;
    if([response.notification.request.trigger isKindOfClass:[UNPushNotificationTrigger class]]) {
        [JPUSHService handleRemoteNotification:userInfo];
    }
    completionHandler();  // 系统要求执行这个方法
    [UIApplication sharedApplication].applicationIconBadgeNumber = 0;
    [JPUSHService setBadge:0];
    
    // 上报送达
    [JPushNotificationExtensionService jpushReceiveNotificationRequest:response.notification.request with:^{}];
}

相关文章

  • iOS极光推送 送达数量统计

    我用个推向自己的手机发送了一个通知,在极光控制台看到推送历史记录里这条消息的详情如下: 因为发送的是普通通知所以只...

  • 极光推送数据之【送达数】

    极光推送数据介绍 iOS ItemValue备注iOS目标数匹配推送条件的 iOS 用户的数量。下载并激活过的iO...

  • 【知识总结】(2)远程推送

    推送SDK:极光推送 后台点击推送: iOS 10 以下收到推送点击触发 iOS 10 以上触发: 极光推送中使用...

  • 极光统计

    前言 极光统计可以独立使用,其配置和极光推送相似 极光统计配置 极光统计代码编写 极光统计方法调用 具体配置请参考...

  • iOS-iOS10极光推送的使用

    1、首先先配置好推送证书,传到极光。极光推送->iOS证书设置指南极光推送->iOS SDK集成指南(XCode8...

  • iOS-极光推送的使用

    1、首先先配置好推送证书,传到极光。极光推送->iOS证书设置指南极光推送->iOS SDK集成指南(XCode8...

  • 极光推送集成开发

    1.极光推送集成与设置 极光推送地址①注册极光推送账号。②在应用管理内按照步骤创建APP。③找到“文档——iOS—...

  • iOS —— 极光推送和极光IM

    前言 (环境:iOS12.0、极光推送SDK3.1.0、极光IM3.7.0) 写iOS 推送(苹果原生态)时,笔者...

  • 极光推送:高速增长下的VIPKID的新选择

    ​近日,全球领先的少儿英语在线教育品牌VIPKID与极光推送达成合作,极光推送将利用自身先进的第三方开发者服务技术...

  • Cordova iOS app 使用极光推送相关(一些不重要的东

    极光推送送达率蛮高的,有推送需求的可以用下。 此文档只是讲解一些细节,没有配图(本人比较懒,有需要我再补充) 极光...

网友评论

    本文标题:iOS极光推送 送达数量统计

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