iOS APNS远程推送 测试全方案汇总

iOS APNS远程推送 测试全方案汇总,第1张

最近弄了下推送,在测试时遇到了些问题,在此整理汇总了些推送测试相关的方案,并添加了一些补充信息。下方链接是相关文章,感谢各位作者的分享。

debug包和build切换为release直接在手机上跑生成的device token都是开发token。release打包后注册生成的token是生产的。

证书制作者要推送证书的 p12文件。 双击输入密码。在钥匙串中找到如下。

证书有下方密钥,没有的话证书不可用。

将p12上传的三方平台并填写密码即可。测试推送在这些推送平台填写 设备token等信息即可。

给中台p12文件和密码,协商好消息格式、提供对应环境的token,由中台触发即可。

注意证书分为三种。测试(sanbox)、生产、 测试和生产合并。

如果发送成功,核对 token、证书、中台链接苹果服务器息的地址。是否为统一环境。(苹果的推送服务器也是区分测试和生产的,域名不同,下方脚本中可以看到)

在Xcode11.4之后,模拟器也支持推送测试

具体格式根据你们的产品要求,接入极光或者个推的可以在控制台发一条推送打印出具体格式内容查看,将文件保存后缀为apns,待会要用到

a、查看已启动模拟器

会看到类似下面信息,如果没有请先启动模拟器

b、运行项目在模拟器上后执行相应命令simctl push <device>[<bundle identifier>] (<json file>| -)

示例如下

将第一步创建的json文件内容稍加修改,具体就是添加了"Simulator Target Bundle": "com.app.test"你项目的包名

然后直接拖动文件到模拟器上,出现绿色➕后松手,这样也可以进行推送测试

参考苹果官方文档

Sending Push Notifications Using Command-Line Tools

<u>https://links.jianshu.com/go?to=https%3A%2F%2Fdeveloper.apple.com%2Fdocumentation%2Fusernotifications%2Fsending_push_notifications_using_command-line_tools</u>

1、在终端新建 shell 文件,这里命名为 push-remote-notification

2、编辑 shell 脚本,这里需要 der 和 pem 证书,如果已经有了 p12 证书,可以通过 openssl 进行转换

运行 shell 脚本

真实脚本事例:

a、p12转der需要先转为pem格式,再从pem转到der格式

openssl pkcs12 -in disPush.p12 -out disPush.pem -nodes

b、pem转der

openssl x509 -outform der -in certificate.pem -out certificate.der

Smart push

git地址: https://github.com/shaojiankui/SmartPush

如果报错

SSL端点域名不能被设置 -25300

Keychain中不能找到证书 -25300

说明钥匙串中没有密钥,要新的p12文件并双击

不推荐,所以不例举,网站风险无法判断。

<u>https://www.jianshu.com/p/15d58b1ada5b</u> 证书转换

<u>https://blog.csdn.net/u013250412/article/details/78729828</u> 证书转换

<u>https://www.jianshu.com/p/9d7aece4a88d</u> 证书转换

<u>https://developer.apple.com/documentation/usernotifications/sending_push_notifications_using_command-line_tools</u>

<u>https://blog.csdn.net/berryreload/article/details/52205397</u>

<u>https://www.jianshu.com/p/87168eecc395</u> 脚本

<u>https://developer.aliyun.com/article/116088?spm=a2c6h.13813017.content3.2.6bc0590ePir0NF</u>

<u>https://www.jianshu.com/p/87168eecc395</u> 脚本

<u>https://www.jianshu.com/p/e8e4f4984fee</u> 模拟器

打开终端。我们此处使用输入命令查询IP的方法实现IP地址的查询。

在终端中输入“ifconfig”,然后回车,来查看IP地址。

其中“eth0”表示以太网网卡,“lo0”表示环回地址。

apple push就是苹果手机的一种推送功能。iPhone Push(推送功能)的工作机制可以简单的概括,Provider是指某个iPhone软件的Push服务器。

APNS 是Apple Push Notification Service(苹果推送服务)的缩写,下文统一使用该缩写。iPhone在开启Push的时候,会连接 APNS建立一条TLS加密链接即:SSL/TLS链接。每一台正常的iPhone都有一个独有的设备证书,而APNS也有一个服务器证书。两者建立的时候,会验证彼此的证书有 效性。

推送服务建议可以体验一下第三方极光。极光的行业应用已经拓展至市场洞察、金融风控与商业地理服务,助力各行各业优化决策、提升效率。


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/416998.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-24
下一篇2023-05-24

发表评论

登录后才能评论

评论列表(0条)

    保存