ios - iOS 推送通知未发送到设备
问题描述
在设置 Fastlane Match 时,我在我的 iOS 应用程序上破坏了推送通知(生产和登台)(nuke命令可能做到了)。生产正在正确记录错误。我使用 Fastlane pem命令为生产“com.app.prod”和暂存“com.app.qa”生成了新证书。它会在 Apple 开发站点上生成新的“生产”Apple Push Services 证书并创建所需的 pem 文件。
openssl pkcs12 -export -in "production_com.app.prod.pem" -out "com.app.prod.p12"
我使用命令和openssl pkcs12 -export -in "production_com.app.qa.pem" -out "com.app.qa.p12"
暂存将 prod pem 文件转换为正确的 p12 文件。将两者都上传到 AWS SNS 服务(无沙箱),没有任何问题。
这修复了生产服务器。它适用于我们的旧应用程序(证书更改之前)和新版本。
但是我们的 Testflight 暂存应用程序仍然损坏。它不适用于旧版或新版 iOS 应用程序。没有错误发生。应用程序正确注册 Apple 推送通知服务 (APN) 并将令牌发送到我们的服务器。使用 AWS 端点手动推送消息也不起作用,但它表示已成功发送。
尝试重新生成证书(确保我上传了正确的证书)。我使用相同的 iOS 设备进行所有测试。我们的 Android 通知在暂存时仍然可以正常工作。
试过http://pushtry.com,说成功了,但没有收到任何消息。还尝试了 command openssl s_client -connect gateway.push.apple.com:2195 -cert "production_com.app.qa.pem" -key "production_com.app.qa.pem"
,没有返回错误。
我不知道问题可能出在哪里,也不知道如何进一步调试。因此,任何建议都会有所帮助。
解决方案
推荐阅读
- javascript - 是否可以使用虚拟消息 React 测试 socket.Io
- javascript - 如何使用 Axios 将大对象作为字符串发布?
- mysql - 在 mysql 工作台上计算模式的最佳方法是什么?
- sql - 如何对一组行进行分组,直到找到不同的值并保持顺序
- python - Python - Altair - 下载为 html 时未生成 geoshape 背景
- javascript - 如何获取设备的默认 devicePixelRatio?
- reactjs - 解决方案 - 关于 userRef
- javascript - 使用我的 Discord 机器人分配角色的一些问题
- python - 如何在没有 qrc 系统的 pyqt6 中设置背景图像
- java - Firestore 字符串未加载