iOS推送SDK集成对比

iOS推送SDK集成对比

大家好,又见面了,我是全栈君。

由于自己的app想要一个推送功能,又由于调用系统的方法集成太麻烦,所以想找一个推送的SDK来做。市面上可以实现该功能的SDK有多种,比如极光,信鸽,个推,MobPush(ShareSDK他们家的)。于是下面来对比一下:
_1
经过对比得知,

   在集成上,MobPush更加简单,也是他们对一贯传统,像在ShareSDK上也是比其他SDK要简洁很多。看他们对文档上这样的。

首先在info.plist里添加2个字段:MOBAppKey和MOBAppSecret,对应在mob申请的key。(不用写初始化方法了)
_2
然后直接复制下面的这句代码就完成了!!
在- (BOOL)application:(UIApplication )application didFinishLaunchingWithOptions:(NSDictionary )launchOptions中进行推送配置

引入头文件:

 #import <MobPush/MobPush.h>       

调用方法:

      MPushNotificationConfiguration *configuration = [[MPushNotificationConfiguration alloc] init];

configuration.types = MPushAuthorizationOptionsBadge | MPushAuthorizationOptionsSound | MPushAuthorizationOptionsAlert;

[MobPush setupNotification:configuration];

appdelegate里的到这里已经结束了。

如果需要获取到消息的内容,监听@“MobPushDidReceiveMessageNotification”通知既可。

调用

      [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(didReceiveMessage:) name:MobPushDidReceiveMessageNotification object:nil];

接收监听

      - (void)didReceiveMessage:(NSNotification* )notification
{
    MPushMessage *message = notification.object;
    
    switch (message.messageType)
    {
        case MPushMessageTypeNotification:
        {
            [MobPush addLocalNotification:message];
        }
            break;
        case MPushMessageTypeCustom:
        {
            NSLog(@"Message:%@",message.content);
        }
            break;
        default:
            break;
    }
}

在sdk大小上,MobPush也是占有比较小的,因为也用了它们的ShareSDK,所以它们的公共库也可以公用了。

在价格上,极光和个推,都是有免费版,有VIP服务,我不是VIP也就享受不到了。mobpush是完全免费,信鸽没找到收费点,应该也是免费的,而且mob和信鸽都有技术支持,mob更是号称有24小时1对1技术支持。(当然我才不信谁24小时了,不过说明他们对服务挺看重的)对于我这种不是太厉害的开发者来说简直就是福音啊。

在支持的平台上,无疑极光是支持的最多的,有需要的当然选这个比较好。
综上,对于我这个只需要iOS的app来说,当然是选一个轻量级的,集成简单的,服务好的。最终我选择了MobPush。给大家留一个地址 文档地址

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/107730.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 蓝桥杯单片机DS18B02温度测量(小数点显示)

    蓝桥杯单片机DS18B02温度测量(小数点显示)

    2021年11月12日
  • Mac安装yarn

    Mac安装yarn1.全局安装yarnnpmi-gyran#查看安装是否成功yarn–version2.设置淘宝镜像,下载速度更快yarnconfigsetregistryhttps://registry.npm.taobao.com3.配置环境变量echo”PATH=$PATH:~/.yarn/bin”>>~/.bash_profile&&source.bash_profile…

  • WKT解读

    WKT-概念WKT(Well-knowntext)是一种文本标记语言,用于表示矢量几何对象、空间参照系统及空间参照系统之间的转换。它的二进制表示方式,亦即WKB(well-knownbinary)则胜于在传输和在数据库中存储相同的信息。该格式由开放地理空间联盟(OGC)制定。WKT-几何对象WKT可以表示的几何对象包括:点,线,多边形,TIN(不规则三角网)及多…

  • pidstat_pidstat「建议收藏」

    pidstat_pidstat「建议收藏」性能监控,pidstat就够了!安装:yuminstall-ysysstat常用参数:-u:默认的参数,显示各个进程的cpu使用统计-r:显示各个进程的内存使用统计-d:显示各个进程的IO使用情况-p:指定进程号-w:显示每个进程的上下文切换情况-t:显示选择任务的线程的统计信息外的额外信息-T{TASK|CHILD|ALL}这个选项指定了pidstat监控的。TASK表示报告…

    2022年10月22日
  • js匿名函数和命名函数_javascript中的函数

    js匿名函数和命名函数_javascript中的函数匿名函数里的对象,跟定义匿名函数页面的上下文有关,而与调用匿名函数的页面无关。很拗口。举例说明://在某个“容器”页面functionshowWorkSpace(callback,h){varheight=500;callback(“map_workspace”,height);}//在该“容器”页面中的某个iframe页面parent.showWorkSpa

  • 分布式事务saga_分布式事务代码例子

    分布式事务saga_分布式事务代码例子1.分布式事务  在前面文章《分布式事务》中介绍了几种分布式事务,其中Saga介绍了相关的概念,接下来介绍Saga使用案例,案例来源《微服务架构设计模式》。2.案例需求分析2.1一个成功的订单创建流程  实现餐馆系统中的创建订单createOrder()操作。这个操作必须验证消费者是否满足下订单的相关条件、验证订单内容、完成消费者的信用卡授权,以及在数据库中创建Order。一个成功的订单创建流程:创建一个待处理订单;验证订单消费者可以下单;创建后厨工单;对消费者提供的信用卡进行授权操

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号