バッテリ レベルを % で計算する:
次に示すように、バッテリー ステータス インテントから現在のバッテリー レベルとスケールを抽出することで、現在のバッテリー充電量を確認できます。
int level = battery.getIntExtra(BatteryManager.EXTRA_LEVEL, -1);
int scale = battery.getIntExtra(BatteryManager.EXTRA_SCALE, -1);
float batteryPct = level / (float)scale;
次のように BroadcastReceiver を実装します。
BroadcastReceiver mybatteryReceiver= new BroadcastReceiver() {
public void onReceive(Context context, Intent intent) {
int rawlevel = intent.getIntExtra("level", -1);
int scale = intent.getIntExtra("scale", -1);
int level = -1;
if (rawlevel >= 0 && scale > 0) {
level = (rawlevel * 100) / scale;
}
Log.d("TEMP","Battery Level in % is:: " + level + "%");
}
};
ここからコードを入手してください。正常に動作します。
https://www.dropbox.com/s/1y6q5wu526ngz7t/BatteryStats.zip
コードの結果: