Obtener el nivel de batería de Android con Java


El SDK de Android permite interactuar con el dispositivo, ahora vamos a obtener el nivel de batería de Android con Java.

Para obtener el nivel de batería vamos a usar las clases IntentFilter, Intent y BateryManager.

El nivel de batería lo calcularemos dividiendo (level / scale) y después lo multiplicaremos por 100 para obtener el porcentaje.

TextView tv ;
tv = (TextView)findViewById(R.id.hola);

IntentFilter ifilter = new IntentFilter(Intent.ACTION_BATTERY_CHANGED);
Intent batteryStatus = registerReceiver(null, ifilter);

int level = batteryStatus.getIntExtra(BatteryManager.EXTRA_LEVEL, -1);
int scale = batteryStatus.getIntExtra(BatteryManager.EXTRA_SCALE, -1);

float battery = (level / (float)scale)*100;

tv.setText("Nivel de bateria: " + battery + "%");

En el código también usamos un TextView para mostrar el texto “Nivel de bateria: XX%”

Debemos notar que para obtener el nivel de batería no es necesario ningún permiso adicional.

Resultado

Este es el resultado al ejecutar la aplicación.

Si requieren el APK me lo solicitan para enviárselos.

Saludos

Leave a comment