正如上一个问题的答案中所述,即使CPU在Android设备上进入睡眠状态,CDMA和GSM无线电也会保持开启状态。 我的问题是......
答案 0 :(得分:1)
您可能希望研究向您的设备发送推送通知(如果您不特别需要TCP)。
从Google(http://code.google.com/android/c2dm/)查看(免费)Android Cloud to Device Messaging(C2DM)服务。
设置需要一些工作,并且仅支持2.2+,但确实简化了客户端/服务器架构。
答案 1 :(得分:1)
CPU处于睡眠状态时无法接收数据。
需要偶尔唤醒CPU以查看是否有新数据。在您的代码中检查新数据,如果有新数据,您可以保持清醒并继续进行处理。
您肯定想了解BroadcastReceiver和Android警报。基本上,你可以告诉Android每5分钟发送一次警报或其他什么,即使它正在睡觉。您的BroadcastReceiver在从Android获取警报时唤醒CPU,并保持清醒足够长的时间以检查您是否有新数据,或者您正在尝试做什么。如果您有新数据,则可以告诉CPU保持清醒,然后您可以关闭并处理新数据。
这是reasonable tutorial。当然,Android Developer文档也很有帮助。