Java实现iOS推送握手失败的解决办法

论坛 期权论坛 编程之家     
选择匿名的用户   2021-6-2 17:46   1090   0

使用Java语言实现iOS推送时常常出现以下错误信息:

javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure

出现这种错误的原因很多,主要有以下几个方面:

1. 网络连接错误

在命令行中输入以下命令,验证与APNs的通信是否成功
telnet gateway.sandbox.push.apple.com 2195
openssl s_client -connect gateway.sandbox.push.apple.com:2195 
    -cert PushServiceCert.pem -key PushServiceKey.pem
.pem文件的生成详见:iOS Push Notification配置

2. 引用.p12文件错误

在Java实现中,需要使用一个.p12的验证文件,但容易引起混谣的是,该.p12文件并不是直接从keychain中导出的.p12文件,还需要预先处理。
处理方式详见上一步中引用的文章。

3. 授权文件不对应

如果上述两种办法还没能解决,有可能是.p12和.cer文件不对应,可以考虑删掉现有的key和cert,重新申请。


参考资料:
http://stackoverflow.com/a/12659502/2177332
http://blog.csdn.net/bryster/article/details/42560087
分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP