苹果的APN服务编程指南中在供应和开发部分声称,“沙盒环境也充当虚拟设备,可以进行模拟端到端测试。” 然而,我找不到任何信息表明如何访问这个虚拟设备(例如如何获取设备令牌,如何检查发送的通知状态等)。 有人知道这些信息是否有效,如果有效,如何使用沙盒作为虚拟设备进行端到端测试吗?
在沙盒服务器和生产服务器中,获取设备令牌的方式是相同的 - 你只需要获得一个开发设备令牌,该令牌只能在与其沙盒服务器通信时使用。然而,就像生产服务器一样,你不能检查已发送的通知的状态或其他任何内容。“虚拟设备”这个词很容易让人感到困惑,因为它实际上只是一个单独的基础设施集,只与开发应用程序/设备令牌通信。因此,在开发应用程序时(也就是当你的应用程序使用开发配置文件构建时),请与开发服务器通信;当应用程序以 ad-hoc 或生产模式构建时,请与生产服务器通信。整个过程是相同的。但是,请确保不要混淆开发设备令牌和生产设备令牌。另外,推送通知在模拟器中无法工作,所以你需要一个实际的设备进行测试。如果你正在 iPod Touch 上进行测试,请记住,如果背光关闭,它每十五分钟才会检查消息。希望这可以帮助你!