我在消息上设置了以下参数:
time_to_live = 0;
delay_while_idle = false;
现在我将消息发送到2个设备:device_1保持空闲模式(锁定屏幕) device_2处于活动状态。
我立即收到设备_2上的消息(好,按预期)
过了一会儿(约5秒)我解锁了Device_1的屏幕并激活它,令我惊讶的是我也收到了device_1上的消息(奇怪, UnExpected )< / p>
为什么会出现这样的行为,或者我误解了GCM文档中的
>**
**(http://developer.android.com/google/gcm/adv.html) time_to_live值为0秒。换句话说,GCM将保证必须“现在或从不”传递的消息的最大努力。 请记住,time_to_live值为0表示无法立即传递的邮件将被丢弃。但是,由于此类消息从未存储过,因此这为发送通知提供了最佳延迟。
答案 0 :(得分:2)
如果您使用delay_while_idle = false
发送邮件,则表示它会立即传送到空闲设备。您应该使用delay_while_idle = true
发送。