apns关于APP数字角标的理解

  前两天群里有兄弟在吐槽,做远程推送的时候:老板要求APP桌面图标的右上角显示红色未读数字(数字角标)要精准,有多少未读通知就显示数字几;但是后台的弟兄在发送推送通知的时候,每次的角标是1,然后要移动端这边自己去把这个未读数字去累加,然后显示在APP上;并且后台非常固执的认为这个累加未读消息数量是在移动端处理的..... 

  这就尴尬了,碰到固执的队友,沟通不成的时候确实是很痛苦的!

  这里我说说自己在做推送功能时候的这个角标的验证过程和理解,给后面的为碰到类似情况的同学一些参考。

  随便截个图举个例子看看

当APP是处于后台的时候,实现这个还是好说的,因为当推送通知到达的时候是可以监听到的,可以获取到推送信息里面的角标数字然后进行累加。

但是当APP完成退出后台的时候,想要app监听到通知并且读取通知信息设置角标,这个好像是办不到的!

后台推送消息的格式按照苹果官方提供的格式,大致是这样:

{
    "aps" : {
        "alert" : {
            "title" : "Game Request",
            "body" : "Bob wants to play poker",
            "action-loc-key" : "PLAY"
        },
        "badge" : 5
    },
    "acme1" : "bar",
    "acme2" : [ "bang",  "whiz" ]
}

“aps”格式是固定的,后面的"acme1", "acme2”是自定义的数据。其中“badge"就是app的角标数字

所以要证实APP的桌面红色角标(未读消息数字)到底是由后台控制的还是移动端自己控制的,这个很容易。

让app内部不要自己操作角标变化,或者把该app完全退出,然后后台开始推送,假设推送的消息badge是数字几,而且app的角标也是显示数字几,

这个就足以证明app的红色角标是由后台推送时候控制的了!

当然话说回来,想要实现对app这个角标的精准显示,需要一个强大的后台:对每个会员在app的读取未读消息进行追踪记录上报,

然后下次推送的时候,对每个会员要进行未读消息的统计,然后在推送消息里面设置精准的badge数字。就能做到app精准的显示未读消息数字了。

我们看比如QQ,微信等app,它们的角标数字是做的非常精准的,人家的后台之强大,那是没得比的。

但是我们一般的APP, 你也想做到角标精准?有必要吗?你连做推送都是用了第三方的推送sdk如极光、个推,你还想做到精准显示角标,你去看看极光和个推对于群推的方法,

压根都没提供精准设置badge的位置,说明想实现精准实现角标,专门研究推送的这些第三方公司也觉得难度很大,或者说要付出很大的代价!

一般来说,大多数app的角标数字做的是意思意思,没那个精准,我测试过的有百度地图、简书、新浪财经等等,app的角标显示也没有做什么精准显示。所以对于咱们做的如果是一个普通的app, 角标数字的显示也就意思意思就行了,主要是为了提醒用户你有未读消息嘛!真的想做到精准显示角标,那就要和后台的兄弟谈好,让他们做好准备加油开干把!

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏张戈的专栏

呐尼!居然有黑客攻击我这个小博客?

睡前感觉博客开启速度有点慢,就把百度加速乐给关了,然后看到旁边有个加速乐的报表,好奇点了下,结果尼玛居然有黑客瞄上我这个小博客,攻击了几千次?看了下尝试的链接全...

38440
来自专栏AI研习社

如何在 Kaggle 中高效搜索数据集?快吃下这枚安利

对于关注数据科学的同学来说,Kaggle 上庞大的数据集是一个极好的资源池,但是这么多的数据,如何进行更精准的搜索?近日,Kaggle 官方博客就刊登了 Rac...

29640
来自专栏钱塘大数据

钱塘干货 | 数据收集和处理工具一览

进入大数据时代,调查报道愈加成为信息战。从哪里收集有效数据?如何抽取、筛选、整合、分类大量琐碎的信息?如何分享、存储数据,并实现随取随用?钱塘君整理了一张数据收...

47470
来自专栏老九学堂

谷歌最新开源酷炫项目集,前端、算法、机器学习都有了

2017年,Google 在 GitHub 上大约有 900 名活跃用户,共推送约 1100 个顶级库。 ? Google 开源了许多非常有价值的项目比如十分流...

60450
来自专栏祝威廉

让流动的数据结构化

结构化数据加上一个支持schema变更的存储,加上一个高效易用的支持SQL的数据处理和查询的引擎,简直无所不能和极度高效。

7710
来自专栏互联网杂技

2017 年,谷歌开源了这些超酷炫的项目

在开源和贡献开源方面,Google 一直是行业的典范。2017年,Google 在 GitHub 上大约有 900 名活跃用户,共推送约 1100 个顶级库。

14120
来自专栏python小白到大牛

python老司机带你玩玩炫酷的3D渲染,酷毙了!

自从学会了turtle模块后,画了不少简笔画。像小猪佩奇、哆啦A梦等等,但是这些依然不能让身边人感受到python的强大,依然是每次装逼必被打脸。就像你用tur...

46720
来自专栏AI科技评论

开发 | 如何在Kaggle中高效搜索数据集?快吃下这枚安利

AI科技评论按:对于关注数据科学的同学来说,Kaggle上庞大的数据集是一个极好的资源池,但是这么多的数据,如何进行更精准的搜索?近日,Kaggle官方博客就刊...

40090
来自专栏Albert陈凯

使用Storm处理事务型实时计算需求时的几处难点

比流量或者订单淘宝可以把我们甩出几条大街。淘宝的兄弟可以自豪地说他们的实时应用已经承受住了双十一全世界范围内最大的单日数据流的冲击。而阿里巴巴中文站的流量和订单...

42870
来自专栏瓜大三哥

FPGA内部资源介绍

39520

扫码关注云+社区

领取腾讯云代金券