谁知道苹果 APNS 推送协议的第一个字节 command 除了推送用 2,还能等于多少,功能是什么?

2015-05-12 16:55:49 +08:00
 hellomsg

谁知道苹果APNS推送协议的第一个字节command除了推送用2,还能等于多少,功能是什么?
Command 1 byte Populate with the number 2.
Frame length 4 bytes The size of the frame data.

2787 次点击
所在节点    iOS
6 条回复
delphiqin
2015-05-12 18:11:34 +08:00
micyng
2015-05-12 21:10:49 +08:00
apns协议共3个版本,第1个字节分别是\x00,\x01,\x02
到第3版终于像那么回事了
不过时序协议上没有确认应答始终是个奇葩
hellomsg
2015-05-12 23:19:56 +08:00
@micyng
@delphiqin
多谢二位,没有确认应答估计是考虑他们自己服务器的处理速度,并且通知仅仅是通知,不是可靠的消息,没有保证。我这么认为的,安他们的说法是我不保证一定每条都处理成功,但我很努力的保证成功,没必要告诉你我有没有成功,信任不信任随你。哈哈,我说话语无伦次
hellomsg
2015-05-12 23:28:38 +08:00
@delphiqin
@micyng
你只管一个劲的往socket里写,等有条我发现错误了再告诉你,反正我发现错误你后边发的我就不管了,我把错误的那条告诉你,你自己再建个链接重发吧,爱发不发。这做法真够贱的。不过做服务的就应该这样,自己保证不了的不瞎保证,随便你怎么说。国内就缺乏这种态度,这也是一种负责任的态度吧,不忽悠人
delphiqin
2015-05-13 01:15:54 +08:00
@hellomsg
按苹果的文档说的是从出错的那条开始苹果就不处理了,所以可以自己做个记录,苹果返回错误条目后从错误那条重发。
最让我头疼的是苹果那边发现出错后,他返回错误条目后马上就关闭了连接,我经常读不到返回的信息连接就被关闭了。不知道你是怎么处理的,能100%读到苹果返回的错误信息吗?
hellomsg
2015-05-13 07:25:06 +08:00
@delphiqin 开两个线程,同一个socket,一个线程往里写,另一个线程读。苹果那边肯定是写完错误后才关闭的。应该都可以读到

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/190495

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX