Android API如何获得电池百分比?

时间:2015-12-13 16:17:42

标签: android battery energy

我正在研究Android中的能量。当我需要知道Android系统的当前充电状态时,我运行以下功能:

<s:VideoDisplay id="videoHolder" width="{this.availableWidth}" height="{this.availableHeight}"/>

但我不知道Android API如何知道电池的当前充电状态并产生结果?我研究过并了解一些电池测量方法,例如:

Android API是否使用上述任何方法?还是另一种方法?

1 个答案:

答案 0 :(得分:0)

我知道操作系统获取电池(和其他电源)信息的三种主要方式。

  • /proc - 这些文件直接绑定到各种操作系统和硬件表。当您访问这些文件时,您实际上是在查询操作系统以获取这些表的值。不幸的是,它依赖于系统,因为它依赖于内核实现。
  • PAPI (Performance APIs) - 这些旨在解决缺乏获取性能信息标准化的问题。虽然有一个Java实现,但我没有发现任何告诉我有一个Android实现。
  • ACPI Tables - 用于保存信息的标准化OS表。我发现它们比我想要的更依赖平台。

访问此信息的另一种方法是直接来自硬件本身。你可以猜到,这是非常依赖于平台的。它因架构而异,甚至包括同一架构的不同版本。

关于高级API的另一个注意事项,例如PAPI,ACPI表和/ proc。即使信息存在,它们也可能查询或不查询硬件。这完全取决于内核和API开发人员如何实现。