首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >轮询位置更新次数减少对电池的影响?

轮询位置更新次数减少对电池的影响?
EN

Stack Overflow用户
提问于 2017-02-26 18:09:15
回答 1查看 1K关注 0票数 2

我在这方面读过很多相互矛盾的信息。

假设我在PRIORITY_HIGH_ACCURACY模式下使用了融合定位API,如果我将间隔设置为10分钟对1分钟,1小时比10秒,这会有多大的区别吗?如果是的话,有多大幅度?

我不知道它在内部是如何工作的,所以我只是在想,如果我需要高精度的定位,我可以做些什么来节省电池(而且轮询的相对频率也不是问题)。

https://developer.android.com/training/monitoring-device-state/index.html

开发者网站有关于如何节省电池的建议,但他们似乎没有给出任何具体的信息,究竟有多少轮询频率影响电池的寿命。

启用该服务是否使GPS始终保持在正常状态,因此总是使用电池(因此,间隔将是合成的,并且仅仅是出于编程原因)?

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-03-08 18:19:36

对于融合位置API,我不确定他们是否关闭GPS或调整报告间隔,而保持它,但我会假设他们关闭GPS之间的更新,否则许多其他人会抱怨电源流失。

至于安卓定位服务做什么,他们确实关闭全球定位系统,并允许手机之间的更新空闲,如果间隔大于0(请查看LocationManagerService的源)。我已经在不同的android手机上做了相当多的功率测试,并且发现保持CPU不空闲可以吸引大量的能量。再加上GPS的功率图(这可以防止CPU空转),你就会看到一个不错的耗电量(大约是某些设备屏幕所需功率的50% )。

最后,我不得不同意Gabe的观点,并建议你选择准确性是否值得电池耗尽。问问自己以下几个基本问题:

  • 我是否需要知道我的用户是在街道的一边还是另一边? 如果是,请使用GPS,否则使用网络或低精度定位。
  • 我需要多久检查一次用户的位置? 如果你每分钟需要它一次,就把你的间隔设置成这样。如果您只关心它们何时离开一般区域,设置地理位置,或使用网络位置。您还可以收听其他应用程序的位置更新,并使您的应用程序在何时进行更新时更智能。
  • 如果我不能在X时间内得到我的用户的位置,我可以跳过这个更新吗? 如果可以,那么在更新逻辑中添加一个超时功能。如果不是,我强烈建议您在这种情况下重新评估应用程序逻辑。
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42472219

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档