无法在 ios 设备上模拟推送通知

问题描述

我关注了 raywenderlich.com 一篇关于开始使用推送通知文章,因为我想在我的应用程序上试用它,并且能够轻松跟进直到您在终端并实际模拟通知

当我运行命令 xcrun simctl push 'device identifier here' site.bundleidentifier.example eventnotification.apn 时,我收到一条错误消息 Invalid device: 'device identifier here'。我似乎无法弄清楚问题所在,我直接从 Xcode 获得了标识符。我去了 Window -> Devices & Simulators -> Devices 并获取了我手机的标识符。我似乎不知道如何解决这个错误,如果有人知道我该如何解决这个问题,那就太好了,谢谢。

文章链接Push Notification Article Ray Wenderlich

解决方法

听起来您可能正在尝试使用您的实际手机执行此操作。此命令指的是推送到模拟器(simctl 是控制模拟器的命令行应用)。

您可以通过执行以下终端命令来列出可用设备:

xcrun simctl list 'devices' 'booted'

一个很好的技巧就是使用 booted 来使用开放的模拟器。因此,示例命令可能是:

xcrun simctl push booted com.myprogram.app payload.json

或者,如果您想使用完整的设备 ID:

xcrun simctl push 'xxxxxxx-7C2B-4B0D-A0E2-xxxxxxxxx' com.myprogram.app payload.json

用您的设备 ID 替换单引号中的信息。