如果我在BroadcastReceiver中收到GCM消息,然后执行一些非常基本的逻辑,那么将使用多少电池?我正在考虑每天约30条消息。那么数据呢?
编辑:据我所知,不同的设备有不同的电池尺寸和CPU效率等。我不是要求使用精确的百分比,更多只是"你应该担心" vs"你不必担心"。
逻辑涉及从db读取一个long(上次同步时间)并将其与当前时间进行比较。
这些信息大部分都会在约4分钟内收到。
EDIT2:我想我要问的是限制/批量我的服务器发送的推送通知量是否值得?理想情况下,忽略电池寿命,我希望我的服务器每次新数据更新时都应发送推送通知。然后,电话可以决定是否实际从服务器提取更新。如果它没有决定拉,那么至少电话明知决定不更新数据。相反,如果我限制服务器向手机发送推送通知以告诉它有新数据的次数,那么手机认为它已更新数据但实际上并没有。
答案 0 :(得分:2)
"你不必担心"是答案。 GCM服务是一个管理所有Android应用程序的推送通知的过程。它肯定比许多不同的应用程序更好地连续向远程服务器请求新消息。它将使用一些电池百分比,但少于任何其他方式
答案 1 :(得分:1)
这取决于。 GCM可以通过Wifi或蜂窝连接接收。蜂窝无线电比Wifi消耗更多功率。每次使用收音机后都会有“热身”和“保持活力”,因此在一次大爆发中发送/接收物品比分开几分钟发送它们更节能。此Youtube video from GoogleDevelopers提供了有关如何优化网络访问以最大限度地减少电池消耗的更多信息。
也就是说,使用的确切电量可能取决于手机,塔/ Wifi接入点的距离,使用的网络协议(802.11g,CDMA,GSM等)以及其他因素。