问题详述
从设备上卸载 App 后,该设备是否还会收到推送消息?
问题解答
当用户从设备上卸载 App 后,设备将不再收到任何推送消息,但这一过程并非立即生效,具体机制如下:
卸载 App 时,操作系统不会主动通知移动推送服务。因此,推送服务端仍会保留该设备的注册信息(如
deviceId和deviceToken),并认为该设备处于“有效”状态。如果此时向该
deviceId发送推送,推送服务会尝试通过 Apple Push Notification service(APNs)下发消息。在 iOS 上:APNs 会尝试投递,但由于 App 已被卸载,系统无法将通知展示给用户。APNs 会通过错误响应机制告知推送服务:该
deviceToken已失效。推送服务收到 APNs 返回的“无效 token”错误后,会自动将该
deviceToken从设备库中移除或标记为无效。
此后,即使继续向同一个
deviceId发送推送,推送服务也不会再向该已卸载 App 的设备发送消息,从而避免无效投递。
总结:卸载 App 后,设备不会实际收到推送;虽然首次推送可能仍会尝试发送,但 APNs 会反馈 token 失效,推送服务据此清理无效设备记录,后续推送将被自动跳过。
适用于
移动推送
该文章对您有帮助吗?