如何以编程方式获取推送通知的打开/关闭状态,将其发送到我的Web服务器



我已经使用GCM成功地在我的应用程序中实现了推送通知。我正在使用我的网络服务器向我的应用程序vai GCM服务器发送推送消息。我已将GCM注册Id存储在服务器上的数据库中。现在我想检查用户是否手动禁用/关闭了我的应用程序的通知(通过设置),这样我就可以通过从数据库中删除GCM ID(注销)向我的Web服务器发送不向该设备发送推送消息的请求。

我知道推送消息会被发送到我的应用程序,如果通知关闭,推送消息就会被忽略,但我的问题是,我的应用将被超过100000个用户/设备使用,如果他们中只有少数人在使用通知,那么发送推送消息超过100000个设备/用户就会产生不必要的流量。

那么,有没有任何方法可以通过编程方式了解通知的打开/关闭状态,以便我可以发送请求,在我的web服务器上注销该应用程序?

我在谷歌上搜索了一下,发现没有办法找到它,所以任何人都有其他解决方案来解决我的问题。

请帮我一下,因为我最近几天一直在这个问题上。

提前感谢

Ketan Bhangale

将用户状态存储在SharedPreference中,并在显示通知时检查状态。

您可以将相同的状态存储在服务器上,并根据状态对发件人列表进行排序。

禁用应用程序通知的功能仅适用于当前运行Android 4.1+果冻豆的设备。此外,在默认应用程序设置中,似乎没有文档化的方法来了解通知标志(复选框)的值。

只需手动维护即可。说首先创建一个网络服务更新"通知设置"。该应用程序将根据用户在应用程序设置菜单中的选择发送通知值,如"true"或"false"。

CCD_ 1。

在您想要的偶数上向用户发送通知之前(根据应用程序要求何时发送通知),在该用户的设备id上触发发送通知消息之前,首先检查标志的值。

最后也是为了在应用端更加可靠,check the value for that flag before showing the notification in the app when the message arrived

最新更新