Obtener información de cargos inalámbricos

Escribo una aplicación que registra el estado de la batería, pero hay un problema con BatteryManager.BATTERY_PLUGGED_WIRELESS . Si carga mi Galaxy S3 con Android 4.0.4 o incluso S4 con 4.2.2 en una estación de carga inalámbrica, la aplicación muestra 1 ( BATTERY_PLUGGED_AC ) en lugar de 4 ( BATTERY_PLUGGED_WIRELESS ). El teléfono muestra una ventana emergente, que se nota la carga inalámbrica. Entonces, ¿es un error api?

¿Alguien puede confirmar esto? ¿Hay otra solución para obtener el modo de carga?

 public class BatteryReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { int plugged = intent.getIntExtra(BatteryManager.EXTRA_PLUGGED, 0); Toast.makeText(context, errorMsg, Toast.LENGTH_SHORT).show(); } } 

Si lo hago bien, usted quiere saber si el dispositivo está cargando o no. Creo que la solución del problema debería escribirse así:

 public class DataReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { if(intent.getAction().equalsIgnoreCase(Intent.ACTION_POWER_CONNECTED)) { //do something when device is charging } else if(intent.getAction().equalsIgnoreCase(Intent.ACTION_POWER_DISCONNECTED)) { //do something when device is not charging } } } 

En el xml, el receptor se verá así.

  <receiver android:name=".DataReceiver" android:enabled="true"> <intent-filter> <action android:name="android.intent.action.ACTION_POWER_CONNECTED"/> <action android:name="android.intent.action.ACTION_POWER_DISCONNECTED"/> </intent-filter> </receiver> 

Espero que te haya ayudado. Todos los derechos reservados

FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.