¿Cómo puedo obtener el nivel y el estado de la batería (enchufado, descargándose, cargando, etc.)? Investigué los documentos del desarrollador y encontré una clase BatteryManager. Pero no contiene ningún método, solo constantes. ¿Cómo lo uso?
109

Respuestas:
Aquí hay un ejemplo de código que explica cómo obtener información sobre la batería.
En resumen, un receptor de difusión para la
ACTION_BATTERY_CHANGEDintención se configura dinámicamente, porque no se puede recibir a través de componentes declarados en los manifiestos, solo registrándose explícitamente conContext.registerReceiver().fuente
Desde API 21, ha sido posible utilizar lo siguiente para obtener el nivel actual de la batería como porcentaje:
fuente
Según los documentos oficiales de Android , puede usar este método en una clase Helper o Util para obtener el porcentaje de batería actual:
fuente
No es necesario que registre un BroadcastReceiver real, ya que BatteryManager de Android utiliza un Intent pegajoso:
Esto es de los documentos oficiales en https://developer.android.com/training/monitoring-device-state/battery-monitoring.html .
fuente
Puede usar esto para cobrar el resto en porcentaje.
fuente
prueba esta función sin necesidad de permiso ni ningún receptor
fuente
Para verificar el porcentaje de batería usamos BatteryManager , el siguiente método devolverá el porcentaje de batería.
Enlace de origen
fuente
fuente
un error en los documentos oficiales, debe usar doble en lugar de flotar. Porque 0.53F * 100F = 52F
fuente
Otras respuestas no mencionaron cómo acceder al estado de la batería (cargando o no).
fuente