【发布时间】:2018-12-18 15:03:51
【问题描述】:
我已经实现了一个服务器,它将向安卓设备发送一些警报。对于大多数设备,都会收到通知。但是,很少有设备无法向其发送通知?
我想知道是否有办法获取通知传递失败的此类设备的列表?
GCM 是否提供此数据(通知传递失败的设备列表)?
【问题讨论】:
标签: android notifications google-cloud-messaging
我已经实现了一个服务器,它将向安卓设备发送一些警报。对于大多数设备,都会收到通知。但是,很少有设备无法向其发送通知?
我想知道是否有办法获取通知传递失败的此类设备的列表?
GCM 是否提供此数据(通知传递失败的设备列表)?
【问题讨论】:
标签: android notifications google-cloud-messaging
但是,很少有设备无法向其发送通知。
如果您的设备没有收到通知,请尝试以下workarounds:
delay_while_idle = 1,如果设备处于空闲状态(关闭、离线、锁定屏幕等...),消息将不会到达设备。如果您希望 wakelock permission 有所作为,请将其更改为 delay_while_idle = 0。time_to_live 是什么。我想知道是否有办法获取通知传递失败的此类设备的列表?
同样基于此thread,Google 仅提供一些可在 android 开发者控制台上获得的统计数据。这仅显示消息和注册的数量。
您必须实现自己的数据收集,这可以很容易地完成。您可以记录发送的每条消息的时间和 ID,并让您的 android 客户端向您的服务器报告收到消息的时间。然后,您可以将数据存储在您的服务器上并根据需要进行查询。
您可以查看此View & diagnose Google Cloud Messaging (GCM) statistics 链接以了解您的 GCM 消息状态。
【讨论】: