gpt4 book ai didi

java - http请求对电池生命周期的影响

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:48:22 24 4
gpt4 key购买 nike

我有一个项目,客户端应用程序(可能在 Android 设备上)将从服务器请求一些文件。一种实现是从服务器到设备进行突发传输,其中 X 文件与指向下一个 block 的链接/指针一起发送。另一种实现是发送文件 ID 列表,然后为每个 ID 发出一个 http 请求并单独获取文件。我听说这真的会损害电池生命周期。是真的吗?

另一个问题是带宽,客户端可能不希望/不需要一次性发送所有文件,因此服务器有点强制客户端一起接受它们。在个人提交中,客户可以在他想要的时候拿到文件。

对电池生命周期的影响是否如此之大以至于超越带宽是一个有效的选择?或者有其他选择吗?

最佳答案

I've heard this really hurts the battery life. Is that true?

不一定。在大多数 Android 设备上,HttpClientHttpUrlConnection 都可以支持 Keep-Alive,因此如果您的 HTTP 服务器设置正确,并且您使相当快速连续的请求,我预计不会有重大差异。

In the individual submission, the client can get the files when he wants if he wants them.

如果您的意思是他们可能会在相当长的一段时间内请求它们,这将无法利用 Keep-Alive。但是,您可能会整体请求更少的文件并消耗更少的带宽。不可能抽象地告诉你哪个对电池消耗更好。

Is the effect on battery life so great that it would be a valid option to overstep on bandwidth?

这取决于您的下载量、下载频率等。

但是,恕我直言,您关注的是错误的问题。

如果您消耗的带宽太多以至于担心电池生命周期,您的用户就会用干草叉和镐攻击您,因为他们在计量数据计划上花费了太多钱。

因此,我会使用 TrafficStats 并尝试各种场景,看看您实际使用了多少带宽,因此您是否需要找到总体上消耗更少带宽的方法(例如,降低轮询频率) ),因此用户不会因您的应用而破产。我怀疑您对电池的担忧会作为副作用自行解决。

但是,如果在您的测试中,您发现您的应用出现在“设置”中的“电池故障屏幕”上,然后开始担心电池消耗,无论是来自带宽还是其他来源(例如,过度使用 WakeLocks)。

关于java - http请求对电池生命周期的影响,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8772478/

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