2014-07-01 195 views
1

我使用的代碼下面的行:的Android電池電壓單元不符,

BatteryManager.EXTRA_VOLTAGE 

得到從2臺Android設備的電池電壓。

其中一個給我的值爲4347,我可以肯定地將其轉換爲4347 mV4.347 V

但在我的其他設備上,返回的值是7。這不可能意味着電池正在輸出.007 V,那麼第二個值可能代表什麼?

返回值爲7的平板電腦是TF101,我相信在2節電池之間總電壓輸出爲7.4 V。在這種情況下7可以代表伏特(而不是milliVolts)?

回答

1

您可能是正確的,某些設備返回電壓而不是mV。例如你的華碩平板電腦有7.4 [伏特]電池,你可以在這裏看到:http://www.ebay.com/itm/Original-Genuine-Battery-for-ASUS-Eee-Pad-TF101-TR101-3300mAh-24Wh-C21-EP101-/191392703477

在我的星系年輕我得到同樣的東西。所以我加了這個功能:

public static float getBatteryVoltage(Intent batteryStatus){ 
    int voltage = batteryStatus.getIntExtra(BatteryManager.EXTRA_VOLTAGE, -1); 
    if (voltage > 1000) 
     return voltage/1000f; 
    else 
     return voltage; 
}