如何在 IOS 模拟器 Xcode 中测试推送通知

How to test PushNotification in IOS simulator Xcode

如何在不使用 ios 设备的情况下使用 Xcode 11.4 及更高版本在 IOS 模拟器中测试推送通知。

Xcode 11.4 及更高版本支持使用模拟器测试推送通知。

要测试,

选项 1 - 使用 Paul Hudson(https://www.hackingwithswift.com/ 的作者)创建的“ControlRoom”Mac 应用程序

Controlroom 是我最近遇到的一个很棒的应用程序,它可以控制模拟器。它提供了一个很好的 UI 来自定义通知。 特别感谢 Paul Hudson 在 git 中分享源代码。 Git URL - https://github.com/twostraws/ControlRoom

选项 2 - 使用终端

运行终端中输入以下命令

xcrun simctl push <simulator identifier> <bundle identifier of the app> <pushcontentfile>.apns"

如何使用 Xcode

获取模拟器标识符
Xcode Menu => Window => Devices and Simulators

.apns 文件的格式

  • 将推送通知负载(json 格式)保存到扩展名为“.apns”的文件中
{
    "aps": {
        "alert": "Push Notifications Test",
        "sound": "default",
        "badge": 1
    }
}

选项 3 - 将 .apns 文件拖放到模拟器中

.apns 文件应包含应用程序的包标识符作为有效负载的一部分

{
    "Simulator Target Bundle": "<bundle identifier of the app>",
    "aps": {
        "alert": "Push Notifications Test",
        "sound": "default",
        "badge": 1
    }
}