使用定位服务时 iPhone 耗电

Posted

技术标签:

【中文标题】使用定位服务时 iPhone 耗电【英文标题】:Battery drain of iPhone while using location services 【发布时间】:2011-05-25 01:11:31 【问题描述】:

很高兴知道 ios 标准位置服务在不断更新位置时的不同精度设置的电池消耗率是多少(我不是在谈论重大更改服务)。我尝试使用 Instruments 的能源使用工具,但似乎无法捕获任何信息。同时,坐在那里给我的 iPhone 计时要花多长时间才能死掉。

我知道精度越低,电池消耗越少。但是,这方面的可靠数字是多少?有人知道吗?

谢谢!

【问题讨论】:

大约几年前有一些数字浮动,我认为在斯坦福 iPhone 上编程 iTunes U 视频,但在不同的手机型号、网络信号和你和接收器之间的墙之间有一个很大的波动,所以不太可能有具体的数字。此外,如果我没记错的话,它不会以一致的时间间隔进行轮询。通常精度越高,消耗越高,因为它使用不同的无线电(即 wifi,然后是 agps,然后在更高的精度水平上,它会进一步归零) 还有多种位置获取模式:GPS、WiFi 和基于蜂窝塔的定位。这些中的每一个都将具有不同的功率配置文件。 【参考方案1】:

    我不知道任何官方数字 - 没有任何数字是有道理的,因为这实际上取决于您对设备的使用 (WiFi/3g) 和位置使用参数(距离过滤器、可接受的位置时间戳、轮询间隔等)

    但是,UIDevice 正是您进行自己测量所需要的: [[UIDevice currentDevice] setBatteryMonitoringEnabled:YES];

[[UIDevice currentDevice] batteryLevel]; [[UIDevice currentDevice] batteryState];

计算您自己的统计数据,请记住,使用该位置的其他应用程序也可能会影响设备的电池寿命(例如:如果您的应用程序接收到缓存的位置并接受它,它会阻止设备使用它的天线获取更新的位置...)

很棒的帖子here

【讨论】:

我已经很久没有在有问题的应用程序上工作了,我认为我没有时间通过​​代码验证您的答案的有效性,因为我没有SDK 已安装 :( 但如果它真的有效,那么我将把它作为答案。【参考方案2】:

就像 MCannon 所说,这与定位服务的准确性有关。一般来说,您越准确,使用的电池就越多。不过,我没有任何关于差异的具体数字。

我认为这与手机找到卫星和无线电桅杆的速度有关。更准确的定位需要更长的时间通过收听更多卫星来确定位置。

【讨论】:

【参考方案3】:

您可以编写一个持续运行直到电池耗尽的测试应用。每分钟写一个日志语句,或者以任何频率满足你的需要。当电话死机时,请查看日志。你会看到手机何时死机。

【讨论】:

以上是关于使用定位服务时 iPhone 耗电的主要内容,如果未能解决你的问题,请参考以下文章

苹果技术专家:清后台反而会增加 iPhone 耗电

iOS新bug,导致iPhone耗电严重

Android应用耗电定位方案

定位项目中,如何选取定位方案,如何平衡耗电与实时位置的精度?

实用iPhone耗电速度又变快了!这3个功能关掉超省电?!

报告称:苹果iPhone/iPad升级到iOS11后,耗电比iOS10快两倍