在我的一个应用程序中,它在用户移动时连续跟踪用户位置,我正在使用" Activity Recognition Api"和#34; FusedLocation Api"用于检测用户移动,然后根据捕获位置点的那些移动。
一切正常,位置正在录制和显示,但问题在于电池消耗。我的应用程序消耗高电量(如果我使用该应用程序30分钟,它消耗大约5%的电池)。
这些是我为位置更新设置的属性:
mLocationRequest.setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY);
mLocationRequest.setInterval(0);
如果我setInterval
作为某个值(例如:2000),那么轨道路径看起来并不好,即有很多重叠和锯齿形,所以我采取了" 0"。
所以我的问题是电池消耗,如果有人有最好的方法来实现更高电池效率的要求,请你帮我。
答案 0 :(得分:0)
Here is a,可能相对于你的问题。
我有点困惑,因为在Android官方网站上有很多适当的信息如何在guide和documentation中优化电池消耗。如果你已经做好了一切没有错误 - 你已经做到了最好。
如果你的应用程序是运动追踪器,那么0.5小时内的5%也不是那么糟糕。但请注意,更新频率不仅取决于setInterval()方法中的值,还取决于硬件上的值。手机的0值是正常的,对于频率较高的其他型号来说非常糟糕。(参见文档截图)
此外,您的电池电量分析仪可能存在一些小问题,或者您的电池不是很好。例如,我的手机快速下降10-1%的电池电量。但是使用最后一个百分比,我可以使用大约20-30分钟。