手机浏览 RSS 2.0 订阅 膘叔的简单人生 , 腾讯云RDS购买 | 超便宜的Vultr , 注册 | 登陆
浏览模式: 标准 | 列表2013年02月16日的文章

关于APNS的一些小问题

此段内容其实有很多都知道,只是这里把问题相对集中的显示出来,也容易找到问题.所以我就转载了一下...

内容来自

http://blog.latermoon.com/?p=878
  1. 以下是大杂烩:  
  2.   
  3.     1.不要用一个开源的叫javapns的lib来推送,这个项目代码臃肿混乱,过度设计,还内存溢出;可以使用notnoop.apns  
  4.     2.Push会延时,也会被丢弃,似乎网络情况,Push本身带有Expiry,超过该值APNS会丢掉Push  
  5.     3.Push有三个基本属性,alert、badge、sound,通过将一些置空,可以实现只修改App上的气泡不出现文本、出现文本但不提示声音,发出声音而不出现任何提示等等效果  
  6.     4.Push除了三个基本属性,还可以附带任意json数据,但总大小不能超过256字节  
  7.     5.要异步发送Push,可以将应用内的Push序列化到Redis队列再消费,并且增加队列监控  
  8.     6.和国外服务的连接速度比较慢,要建立多个连接,使用多线程发送  
  9.     7.APNS有提供feedback服务,用于查询一个Token是否有效  
  10.     8.一台iPhone上的一个App会有两种Token,一种是Developer的,一种是正式Product的,不能混用,在一个与APNS的SSL连接里,使用Developer Token向Product发送Push是无法送达的,同时在十几秒内即使用正确的Product Token发送也无法送达,效果就像直接丢弃  
  11.     9.iPhone上的App处于前台运行时,即使受到Push也不会在界面出现提示,此时App内的回调函数会收到  
  12.     10.高速地向一台设备发送大量Push,Apple会自动丢掉部分Push  

Tags: apns