2014-04-22 51 views
6

我们正在编写一个聊天应用程序,并且已经让Pubnub服务在后台运行,在收到消息时收听消息并触发通知方式。问题在于,当手机处于睡眠状态时,我们正在使用部分唤醒锁,并且只会杀死电池(应用占用电池的20%以上)。Pubnub推送通知和Android上的电池使用时间

是否有一种CPU消耗较少的方式来监听消息?我也试过在Android上寻找Pubnub推送通知的代码示例,但还没有找到任何。

谢谢, Saswat

回答

1

According to this website

即将推出:GCM推送通知是处于测试阶段,将被释放 周围六月初。

但是,该网站的最新状态:

PubNub支持登载于2012年7月19日19:59

因此,要回答你的问题:目前,没有侦听消息的CPU占用率低于使用唤醒锁定的方式。实际上,PubNub特别声明,您应该在上面链接的网站上使用部分唤醒锁。

Android PubNub github也没有文件。他们在那里指出PubNub比Google C2DM更好。 Google C2DM现在已被弃用。

+0

原来的帖子是7月19日,而不是更新。他们上周刚刚开始测试。 –

5

PubNub’s Android SDK后台进程已经通过多次迭代优化。我们的基准测试显示几乎没有任何区别在部分唤醒锁定无操作和PWL + PubNub插槽之间的电池消耗。我们已经在Nexus 4上测试了4小时的时间段,即无等待锁和PWL + PubNub之间的差异为4%的电池差异,即使是测量功耗最高的用例(这是4G连接)超过4小时,设备每5分钟收到一条1k消息。在Wi-Fi上,差距要小得多。

虽然GCM有很多分钟的套接字超时(per this thread)PubNub始终可靠。但是,可以将PubNub禁用PWL配置为不总是需要实时的应用程序,但可靠性是。在我们看来,这种可定制性使得PubNub成为节能套接字通信最适合开发人员的选项。

如果你看到的仍然是显着的电池耗尽,请联系[email protected]与相关的代码的副本,以便我们可以帮助调试和建议的最佳做法。

干杯!

+1

该问题要求采用较少CPU密集的方式来侦听消息。您可以在PWL和PWL + PubNub之间进行比较。 > 20%的电池电量来自PWl。你根本没有回答这个问题。 – navkast