大量的 iOS 应用使用 JPush iOS 来推送通知,并且经常有群发的动作,即广播或者Tag推送。
在不支持 badge +1 时,群发的 APNs 通知其 badge 值只能大家都一样,默认是 1。
这不符合实际情况。
实际的情况是,App 在每个用户手机上,其 badge 值的定义不一样,但都有其业务含义。根据用户使用情况,badge 值每个客户端不同。
为了解决此问题,JPush 为每个客户端保存其特定的 badge 值。客户端有变更时,把 badge 值更新到 JPush 服务器。有新的推送时,把这个值 +1 推送下来(默认是 +1)。这样就符合实际的使用场景了。如下图所示:
为实现此功能,JPush 服务器端需要承受比较大的性能压力、并发压力。但我们认为,这个功能对 iOS 通知推送是非常有意义的,所以我们做了。
JPush iOS SDK v1.7.4 版本开始支持 setBadge 方法以更新 badge 值,请访问这里下载:JPush iOS SDK。
JPush Push API v3 支持 badge +1 的语义。服务器端 SDK 部分,从 Java SDK v3.1.3 开始提供了此功能。
0条评论