开发者社区 问答 正文

后端服务端 由java开发,现在要给每个用户个性化的推送一条通知(先向苹果服务器发送),数量峰值是三十万,请问用什么方法比较好?

后端服务端 由java开发,现在要给每个用户个性化的推送一条通知(先向苹果服务器发送),数量峰值是三十万,请问用什么方法比较好?

展开
收起
小旋风柴进 2016-02-29 14:35:03 3962 分享 版权
1 条回答
写回答
取消 提交回答
  • 简单说下实现苹果通知推送服务(APNs)客户端的一些要注意的地方:

    •使用长连接;
    •sanbox服务器是没用的,调试时直接用“gateway.push.apple.com”域名;
    •对于错误的Notification,苹果会回应一个Error response,里面有个identifier,在这个identifier之后的Notification全都失败;

    因此发送者要缓存已经发送的Notification,最好设置Notification identifier为增长的整数序列,当收到Error response里,从缓存里取出比Error response的identifier要大的Notification,再次重新发送;

    •对于一台设备,APNs服务器只存储一条Notification,所以如果设备不在线,连续发送多条消息的话,后面的会覆盖前面的;
    •Apple的文档里有提到可以设置Notification的Priority = 5,具体是什么意思不太明白。实际测试是当屏幕关闭,在省电时才会接收到的。如果是屏幕亮着,是不会接收到消息的。而且这种消息是没有声音提示的。貌似意义不大。

    2019-07-17 18:50:17
    赞同 展开评论