我认为,最重要的第一件事是您的应用程序不能依赖它们。最好将它们视为对您的用户来说是一件好事,而不是您应用程序基础架构的一部分。尤其是:
- Apple 不保证通知的送达。是的,他们的基础设施非常好,但没有承诺。
- 一次只能在设备上启动一个警报,并且没有日志。因此,如果用户有一堆支持推送的应用程序,您就不能依赖他们看到您的警报。
- 您的应用程序知道通知的唯一方法是用户是否选择运行它以响应警报。
- 用户可以随时为您的应用程序或整个设备关闭推送通知。
所有这一切也意味着:您不能使用推送通知服务来欺骗“无后台进程”限制。:-)