如何测量我的应用程序的电池使用情况?

How to measure battery usage of my application?

好吧,我已经阅读了很多类似问题的答案(即使它们是 2013-2014 年的旧答案)并且我知道不可能确切地知道它,因为 android 不计算硬件usage作为应用程序的使用,以及一些其他可能的问题,如服务等

目前,我正在尝试使用一种协议来测试应用程序的性能以达到目标,以及使用另一种协议(并非所有人都知道)来达到相同目标的同一应用程序的性能,默认 android 电池分析仪对我来说很好,因为这两种情况有 90% 相同,而且我知道协议是如何工作的

我的问题是我不确定哪个最适合测量我的应用程序消耗的 mAph,我知道有一些外部应用程序可以显示它,但我更喜欢使用默认值之一,我相信这不仅对我很重要,对其他可能需要比较不同协议的人也很重要。 我知道我可以通过编程方式测量它并且我也做过,我保存了应用程序打开时的百分比以及在关闭之前消耗了多少,但这不是一个精确的测量,因为当应用程序打开时其他应用程序可以完成繁重的工作并添加一些我正在测量的噪音,所以我更愿意使用 android 的电池分析器。

获取备用设备。完全加载它,然后 运行 协议直到在没有其他交互(没有 youtube 或任何东西)的情况下关闭,记下它持续的时间。重复其他协议。恕我直言,这是一种公平的比较方式。请注意,每个设备的行为都不同,并且可能会也可能不会将此结果传输到其他设备,例如具有不同的网络芯片、处理器甚至固件版本。

为了更公平的比较,我认为您应该比较协议的工作方式。 IE。交互次数、有效载荷大小等,因为功耗只能是一个估计值。