gpt4 book ai didi

push-notification - 持久的 tcp/ip 连接如何节省电池电量并降低带宽使用率?

转载 作者:行者123 更新时间:2023-12-04 07:48:48 26 4
gpt4 key购买 nike

在推送通知机制中,例如 Apple 的推送通知服务,它们使用持久的 IP 连接。

我的问题是,使用持久连接如何节省设备的电池和带宽?
我的印象是,由于连接是持久的,因此设备始终使用 WiFi 或 3G/LTE radio 。

我知道通过持久连接,您不会在没有更改时不向服务器询问更改而浪费带宽,相反,服务器会将这些更改“推送”给您。但是,我看不出这如何节省电池和带宽(因为您与服务器始终保持连接)。

可以在这里找到类似的问题:
How does Android C2DM improve bandwidth useage?
但我认为答案还不够。

最佳答案

首先,您必须考虑设备实现的状态机,以控制网络通信引起的功耗。你可以看到here
读完之后你会发现,正如亚当所说,创建连接对你的电池生命周期非常不利,而轮询是关于创建/破坏连接。

因此,C2DM 避免创建连接以提高功耗。最后,节省是由于:

  • 持久连接并不意味着设备始终处于全功率状态。这只意味着连接没有关闭,然后服务器可以向客户端发送消息。
  • 正如您在 GCM Advanced Topics 中所读到的,C2DM 使用不同的机制传递消息.因此,它可以配置为仅当设备已经处于全功率状态时才传递消息
  • 最后一个因素是 GCM 如何向空闲设备传递消息。官方文档中说的很不清楚,我认为Google Play Service的源代码不可用。尽管如此,您可以通过以下答案获得一些线索 here .第一条评论似乎很有用。

  • 有一点我不确定:我不知道他们如何在低级别保持连接事件。这就是我缺少的那一 block 。您可以阅读 Android C2DM幻灯片 15 的一些解释。似乎它们提供了某种对状态机的巧妙处理。

    关于push-notification - 持久的 tcp/ip 连接如何节省电池电量并降低带宽使用率?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19111901/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com