如何使用 Settings.app 禁用特定类型/营销活动的推送通知
在 Facebook 应用程序中,如果您仅更改来自 Settings.App(而不是来自 Facebook 应用程序)的消息的推送通知设置,即使您不打开 Facebook 应用程序,它们也会停止发送。
即使用户从未打开 Facebook 应用程序,Facebook 如何将用户默认同步到后端?有没有办法从后端读取 NSUserDefaults 或者 Facebook 是否使用 Apple 支持的已知过滤约定来推送通知。
测试:
- 确保 iPhone 中的 FB 应用程序已关闭
- 打开设置应用程序,转到 Facebook 设置,禁用“仅针对”消息的通知。
- 让您的朋友在 Facebook 上向您发送消息,您不会收到推送。
- 返回设置应用程序并重新启用消息通知
- 要求您的朋友在 Facebook 上向您发送消息,您将收到推送。
问题:
- 为什么 Facebook 可以在用户打开 Facebook 应用程序之前更新其通知设置?
In Facebook App, if you change push notification settings just for messages from the Settings.App (not from Facebook App) they stop coming even if you dont open Facebook App.
How does Facebook sync user defaults to backend even if the user does not open the Facebook App ever? Is there a way to read NSUserDefaults from backend or is Facebook using a known filtering convention for push notifications that Apple supports.
To Test:
- Make sure FB App is closed in iphone
- Open settings app, go to Facebook settings, disable notifications "only for" messages.
- Ask your friend to send you a message on Facebook, you will NOT receive a push.
- Go back to settings app and re-enable notifications for messages
- Ask your friend to send you a message on Facebook, you will receive a push.
Question:
- How come Facebook can update their notification settings before user opens the Facebook App?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
Facebook 仅知道用户希望在应用程序首次启动时接收推送通知。系统会询问用户是否允许通知。 (所有应用程序都使用相同的标准警报)
在此之后,苹果控制了其他一切。如果用户关闭任何应用程序的推送通知,Apple 就会停止提醒用户。 Facebook 负责检查设备是否仍处于活动状态,但即使发送了通知,用户也不会收到它们。
Facebook only knows that the user wants receive Push Notifications the first time the app is launched. The user is asked if they'd like to allow notifications. (The same standard alert all apps use)
After this Apple controls everything else. If the user turns off push notifications for any app, Apple stops alerting the user. It's Facebook's responsibility to check if the device is still active, but even if notifications are sent the user won't receive them.