Quiero detectar el cambio de batería en cada porcentaje. Puedo detectar el nivel de batería una vez con el receptor de difusión. Pero no está actualizando el valor automáticamente cuando% cambia de 66 a 67.Detectar cambiar el estado de la batería en cada porcentaje en android
Aquí está mi código.
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);
}
Agregado permiso
<uses-permission android:name="android.permission.BATTERY_STATS"></uses-permission>
Se detectan 66 pero cuando se cambia 65 o 67 no actualizará el valor. o no mostrar el registro también
Quiero que sea como puedo conseguir cada cambio.
Gracias de antemano.