iOS推送功能实现步骤

2025-09-28 01:34:33

1、在developer.apple.com的member center设置AppId属性,

enable push.

iOS推送功能实现步骤

iOS推送功能实现步骤

2、在developer.apple.com的member center创建APN证书,

Development -> Apple Push Notification service SSL (Sandbox) 用于沙盒app

Production -> Apple Push Notification service SSL 用于AppStore app

创建完毕后,可以第一步AppId的属性列表中查看到证书名称

iOS推送功能实现步骤

iOS推送功能实现步骤

iOS推送功能实现步骤

iOS推送功能实现步骤

iOS推送功能实现步骤

3、基于第1步修改的AppID重新生成provision file,

在iOS Project中加载此provision file,

这样编译出的app才可以获取到device token(推送唯一标识符)

iOS推送功能实现步骤

iOS推送功能实现步骤

iOS推送功能实现步骤

iOS推送功能实现步骤

4、以下为针对服务端的推送设置步骤--------

在keychain中找到第1步创建的APN证书,

展开此证书,分别导出证书和密钥,

名称设为cer.p12和key.p12

iOS推送功能实现步骤

5、打开控制台程序,

使用openssl 将cer.p12及key.p12转成cer.pem和key.pem

命令如下:

$ openssl pkcs12 -clcerts -nokeys -out cer.pem -in cer.p12

$ openssl pkcs12 -nocerts -out key.pem -in key.p12

6、测试生成的cer.pem及key.pem是否可用

$ openssl s_client -connect gateway.push.apple.com:2195  -cert cer.pem -key key.pem 

注:gateway.push.apple.com:2195用于appStore app;

       gateway.sandbox.push.apple.com:2195用于沙盒app;

       以上命令执行后会打印一大罗信息,最后处于可输入状态,打几个字符回车后自动断开连接即为正常。

7、合并cer.pem及key.pem

$ cat cer.pem key.pem > ck.pem

8、上传ck.pem到推送服务器的推送程序的目录。

Tip:-----------------------

find / -name "*.php"        

查询推送服务器php文件目录用。

scp ~/Desktop/ck.pem root@xx.xx.xx.xx:/var/www/html    

用于上传本地文件到Linux服务器用。

9、服务器php代码加载ck.pem向苹果服务器推送消息:略

客户端oc代码获取token,接收推送消息:略

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢