1

我正在创建一个应用程序,我需要能够获得电池电流 (mA/mAh)。我有电压/温度/电平等,这是我需要得到的最后一件事,巧合的是,也是最难的。

我查看了 CurrentWidget 源代码(https://play.google.com/store/apps/details?id=com.manor.currentwidget&hl=en)并在 Google 上下搜索,我拥有所有的类/方法要提取数据,它只是包含当前阻止我获取它的文件的路径

“CurrentWidget”包含许多不同的文件路径(适用于各种设备),但它们都不能在我的 4.0.3 上的ASUS EEPad Transformer上工作,我需要它来工作,因为它是我的测试设备,我能得到的都是我的手。我已经进入 adb shell 并在平板电脑的根部挖了几个小时,但除了我已经拥有的名称、温度、电压_now 和其他东西之外,我似乎找不到任何东西。它们都存储在 /sys/class/power_supply/battery 中,但没有我预期的“电流”,而且似乎在其他设备上。

感谢您的帮助,我知道这很长!

4

2 回答 2

3

current capacity of battery can be achieved by using android developer,s function via reflection

private Object mPowerProfile_;

private static final String POWER_PROFILE_CLASS ="com.android.internal.os.PowerProfile";

mPowerProfile_ = Class.forName(POWER_PROFILE_CLASS).getConstructor(Context.class).newInstance(this);

double batteryCapacity=(Double)Class.forName(POWER_PROFILE_CLASS).getMethod("getAveragePower", java.lang.String.class).invoke(mPowerProfile_, "battery.capacity");

i think this will help

于 2013-10-03T06:29:52.753 回答
1

这似乎是重复获取 Android 手机的电池电流值

但是,如果您愿意的话,似乎如果当前小部件找不到您的平板电脑的安培数,那么平板电脑可能不支持写入该文件。要么是因为它没有内核支持的特定功能,要么是因为特定的硬件平台没有必要的硬件来从本质上测量电池终端本身的电流。

如另一篇文章所述,大多数其他小部件根据电流以外的其他因素计算电池百分比。

于 2012-11-20T23:15:58.497 回答