【发布时间】:2012-07-17 16:23:40
【问题描述】:
我一直在读到,使用 Android C2DM 是跟踪更新的最有效的解决方案,就带宽而言。但是,我完全错过了 C2DM 是如何更高效的,即每 5 分钟轮询一次的解决方案。
我的理解是: C2DM 通过维护持久的 TCP/IP 连接来工作。 保持所述连接意味着保持收音机打开(我认为这是我错的地方?) http://developer.android.com/training/efficient-downloads/efficient-network-access.html
那么保持 TCP/IP 连接打开不会让无线电始终保持开启状态,即使它处于低功耗模式?
虽然每 5 分钟轮询一次,但延迟的宽度是收音机打开/关闭,下载 3 秒,让收音机在高功率模式下保持 5 秒,在低功率模式下保持 12 秒(延迟关闭) .
感谢您帮助解决这个问题。
【问题讨论】:
-
请记住,许多用户的设备已经连接到 C2DM 以提供 gmail 等服务,因此对于那些用户,您无需在应用程序中使用 C2DM 就可以使用更多电池。如果您创建自己的投票服务,许多用户将同时使用 C2DM 和您的投票服务。
-
保持 C2DM 开启不意味着无线电保持开启,因此我的轮询不会使用更多带宽吗?虽然我明白你关于启动新服务会消耗电池电量的观点,但再加上 Android 可以随时终止我的服务这一事实。
-
等等,当我指的是电池电量时,我一直在愚蠢地使用带宽。 1) 保持连接是否使用任何数据和 2) 在尚未运行 C2DM 同步的设备中是否更省电?
标签: android android-c2dm