我不是SOC专家,但通过阅读相关文档,我了解到以下内容。
It said "Every time you create a new network connection, the radio transitions to the full power state." What does connection mean here? Is that a TCP connection? Does that mean sending a UDP packet will not wake up the radio?
任何类型的网络数据传输都会唤醒无线电,无论是UDP还是TCP,无论是1字节还是1 MB。
In Standby it said: "Standby: The minimal energy state during which no network connection is active or required." Does that mean the network module is completely shut off? If so how can GCM even work even when the device is in sleep mode? If not, roughly how much battery does it use compared to full power mode?
在不唤醒整个无线电的情况下,仍然可以保持与无线塔的连接。我相信这种设计早就已经存在,是为了节省移动电池的电量,与Android无关。可能会使用一种专门用于此任务的不同芯片,但我将把这个答案留给SOC专家。
"Every time you create a new network connection, the radio transitions to the full power state." How does that gibe with long lived TCP connections? If I create a TCP connection and then just keep receiving packets, then I won't be creating new network connections or sending out any data. Does that allow the network module to go to Standby mode?
要打开TCP连接,您总是需要一定程度的握手协议来保持无线电发射器处于唤醒状态。TCP是一种可靠的协议,这意味着传输将在两端进行验证以避免传输错误。在我们的情况下,这意味着无论如何,系统都将通过网络发送和接收数据。 TCP keep alive还可以进行网络握手(keep_alive),这意味着即使没有数据被传输,它仍将保持发射器唤醒。