我想检测每个百分比的电池变化。我可以用广播接收器检测一次电池电量。但是当 % 从 66 变为 67 时,它不会自动更新值。
这是我的代码。
private void batteryLevel() {
BroadcastReceiver batteryLevelReceiver = new BroadcastReceiver() {
public void onReceive(Context context, Intent intent) {
context.unregisterReceiver(this);
Log.i("Battery CHANGED******",":: IN RECEIVER");
int rawlevel = intent.getIntExtra("level", -1);
int scale = intent.getIntExtra("scale", -1);
int level = -1;
if (rawlevel >= 0 && scale > 0) {
level = (rawlevel * 100) / scale;
}
btnConsumer.setText("Battery Level Remaining: " + level + "%");
}
};
IntentFilter batteryLevelFilter = new IntentFilter(Intent.ACTION_BATTERY_CHANGED);
registerReceiver(batteryLevelReceiver, batteryLevelFilter);
}
添加权限
<uses-permission android:name="android.permission.BATTERY_STATS"></uses-permission>
它检测到 66,但是当它更改 65 或 67 时,它不会更新值。或者不显示日志
我想让它像我可以得到每一个改变。
提前致谢。