在应用程序中禁用推送通知
Posted
技术标签:
【中文标题】在应用程序中禁用推送通知【英文标题】:disable push notification in app 【发布时间】:2010-12-08 09:00:27 【问题描述】:我想知道是否有办法在不使用注销的情况下禁用推送通知。
请帮忙
【问题讨论】:
【参考方案1】:它非常简单,因为 iPhone 本身具有启用或禁用推送通知功能的功能。 在 iPhone 中按照以下步骤操作:
Disabling Push Notifications (Applications)
1) Tap Settings
2) Tap Notifications
【讨论】:
我猜他说的是在他开发的特定应用程序中以编程方式执行此操作。 @middaparka:我认为他不想在 App Store 上取消注册推送通知功能。他只是想在不更改代码的情况下禁用它,正如他所说的“无需取消注册”。让我们等待他的答复。【参考方案2】:不,没有,但你为什么需要。至少默认情况下不是。像城市飞艇这样的供应商会给你一些相当时期的想法,让你在给定的时间段内不会收到消息。但毕竟,您的服务器通常是发送推送通知的服务器,因此应该可以实现停止时间。
【讨论】:
【参考方案3】:你可以用 php 和数据库做一些事情。这有点复杂,但它可能对你有用。让我们假设运行该应用程序的所有设备都将其设备令牌推送到数据库。在该数据库中,您有 2 列。一个用于设备令牌,另一个将被称为跳过或禁用。在应用程序中有一个按钮,会说禁用推送或类似的东西。当用户按下该按钮时,使用 nsurl 使用 post 将设备令牌与 php 一起发送到脚本。该脚本将在该数据库中找到发送设备令牌的行,并将 yes 或 1 放入该设备令牌的跳过或禁用列中。当您发送推送通知时,首先让脚本检查是否跳过/禁用列等于yes/1。如果它确实跳过该设备令牌并转到下一个。 如果您在编码方面需要帮助,我愿意提供帮助。
【讨论】:
以上是关于在应用程序中禁用推送通知的主要内容,如果未能解决你的问题,请参考以下文章
如果用户在 IOS 中禁用了后台应用刷新,为啥不发送推送通知?