文档章节

APNs

人生天地间
 人生天地间
发布于 2014/10/12 19:10
字数 520
阅读 57
收藏 0

  今天主要讲讲我自己的使用经历,仅供大家参考。

       首先,APNs是啥,apple push notification server,说白了就是消息推送,当然这里讲的是远程推送通知,以后会讲讲iOS 的本地通知。

    接下来,我们开看看它的实现原理

      首先,APNS会对用户进行物理连接认证,和设备令牌认证(简言之就是苹果的服务器检查设备里的证书以确定其为苹果设备), 然后,将服务器的信息接收并且保存在APNS当中,APNS从其中注册的列表中查找该IOS设备(设备可以为iPhone、iPad、iPod Touch,版本是iOS3.0及以上)并将信息发送到该设备;

最后,设备接收到数据信息给相应的APP,并按照设定弹出Push信息。

      具体怎样一步步实现的,大家可以参考下面的文章,讲的比较详细xia m

    http://mmz06.blog.163.com/blog/static/121416962011111710934946/    

     http://wenku.baidu.com/view/c6b9ceef998fcc22bcd10da5.html

我就没有必要赘述了,在这里我想讲的是在这些实现过程中要注意的细节:

   1,首先你要确定在Apple dev protal中a相应的App id的命名要规范,不要包含通配符。

   2.在下载之前,要把push功能在configure里配置好,然后再下载这个文件。要记住把最后生成的.cer文件放到项目中进行替换

  3.如果在,wifi环境下无法进行push,有可能是iPhone与某些无线路由器不兼容,还有可能是无线路由器开启了DNS开启了转发功能,这就需要你关闭无线路由的DNS转发功能,然后手动调节iPhone的Wi-Fi设置为8.8.8.8。

  还有要注意的是,如果TLS链接正常,那么服务器就会始终保持链接,并且是实时的,不管是wifi或者是蜂窝数据的情况下。


© 著作权归作者所有

共有 人打赏支持
人生天地间
粉丝 12
博文 46
码字总数 42083
作品 0
常州
程序员
私信 提问
ios推送证书

1.使用钥匙串访问(KeychainAccess)应用程序创建上面需要的CSR文件(.certSigningRequest文件) 2.打开Apple开发网站,设置好推送,下载Cer文件 3.双击Cer文件,导入到钥匙串 4.在Mac上启动...

石头Robert
2016/03/01
57
0
iOS推送证书

1.使用钥匙串访问(KeychainAccess)应用程序创建上面需要的CSR文件(.certSigningRequest文件) 2.打开Apple开发网站,设置好推送,下载Cer文件 3.双击Cer文件,导入到钥匙串 4.在Mac上启动...

LouDev
2014/05/07
1K
0
iphone 推送服务--Apple Push Notification Service

iphone 推送服务--Apple Push Notification Service 分类: 推送服务2011-04-14 14:24 8398人阅读 评论(4) 收藏 举报

冯京宝
2012/07/17
0
0
IOS学习笔记—苹果推送机制APNs

推送是解决轮询所造成的流量消耗和 电量消耗的一个比较好的解决方案,在Android上,虽然Google提供了GCM(之前为C2DM),但在国内基本等于没用,各大Android应用 基本都自己架设推送Server或...

北方人在上海
2016/03/22
41
0
HTTP/2 协议用于 iOS 推送提醒服务 (APNS)

苹果最近更新了他们的推送提醒服务协议,APNS。这个新版本的协议基于HTTP/2和JSON,相比于旧的二进制协议,新的协议有了巨大改进。 新的APNS协议基于HTTP/2: 新的特性和功能: 基于JSON的请...

oschina
2016/02/26
10.5K
11

没有更多内容

加载失败,请刷新页面

加载更多

我的Linux系统九阴真经

我的Linux系统九阴真经 在今天,互联网的迅猛发展,科技技术也日新月异,各种编程技术也如雨后春笋一样,冒出尖来了。各种创业公司也百花齐放百家争鸣,特别是针对服务行业,新型互联网服务行...

linuxCool
34分钟前
5
0
Python程序员需要知道的30个技巧

1 直接交换两个数字位置 1x, y = 10, 202print(x, y)3x, y = y, x4print(x, y)5#1 (10, 20)6#2 (20, 10) 2 比较运算符的链接 1n = 102result = 1 < n < 203print(result)4# True5result = 1 ......

糖宝lsh
34分钟前
2
0
[LintCode] Linked List Cycle(带环链表)

描述 给定一个链表,判断它是否有环。 样例 给出 -21->10->4->5, tail connects to node index 1,返回 true。 这里解释下,题目的意思,在英文原题中,tail connects to node index 1 表示的...

honeymose
45分钟前
6
0
Android :报错Your project path contains non-ASCII characters.

报错内容如下 Your project path contains non-ASCII characters. This will most likely cause the build to fail on Windows. Please move your project to a different directory. See ht......

lanyu96
56分钟前
6
0
Nginx平滑添加模块

Nginx已经编译安装并运行了一段时间, 然后某一天, 发现需要用到某个模块但当初没有编译, 这个时候怎么办呢? 卸载重新安装肯定可以的, 如果Nginx版本没有变更的话, 则有一个相对平滑的方法来添...

老菜鸟0217
今天
8
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部