La captura de la pantalla antes de que sea demasiado tarde

Tengo una actividad que, en su onPause tiene que hacer algún trabajo, pero no cuando la pantalla está apagada. Ya he registrado el receptor para la intención ACTION_SCREEN_OFF y, teóricamente, esto y un indicador estático en el nivel de la aplicación debe hacer el truco, pero … No funciona porque la devolución de llamada onPause en la actividad se invoca ANTES que el receptor puede obtener Su intención. Es decir: logcat * ting * mientras empuja hacia abajo el botón inactivo, puedo ver el rastro onPause primero y el onReceive después. En este punto, la configuración de la bandera estática no es muy importante …

¿Alguna posibilidad de saber en el tiempo de onPause la actividad que la pantalla ha apagado?

Gracias por adelantado
L.

Tuve el mismo problema y un receptor no es el camino a seguir

desarrollador de Android

http://developer.android.com/reference/android/content/BroadcastReceiver.html

"Nota: Si está registrando un receptor en su implementación de Activity.onResume (), debe anular su registro en Activity.onPause () (no recibirá intenciones cuando se detiene, lo que reducirá la sobrecarga innecesaria del sistema). Unregister en Activity.onSaveInstanceState (), porque no se llamará si el usuario se mueve de nuevo en la pila de historial. "

En su lugar, cree un administrador de energía en su método onPause [lo tengo de este enlace]

Cómo averiguar el estado de la pantalla en un dispositivo Android?

 public void onPause(){ PowerManager powermanager =(PowerManager)global.getSystemService(Context.POWER_SERVICE); if (powermanager.isScreenOn()){ screen_off_beforePause = false; //your code here }else{ screen_off_beforePause = true; } } public void onResume() { if (screen_off_beforePause){ Log.e(TAG + ".onResume()", "screen was off before onPause"); }else{ Log.d(TAG + ".onResume()", "secreen was not off befgore onPause"); //your code here } //resetting screen_off_beforePause = false; } 
  • ¿Cómo comprobar un dispositivo Android es HDPI pantalla o pantalla MDPI?
  • Problemas de diseño relacionados con el soporte de varias pantallas
  • Finalizar todas las actividades anteriores
  • ¿Cuándo se desactiva exactamente el servicio NFC?
  • Android: ¿Cómo obtener información si la pantalla pasa al modo de atenuación?
  • Android Java: Desactivar la pantalla
  • Intercambio de pantalla de Android mediante programación (Root)
  • Bloqueo de orientación de la pantalla
  • Android tomar la captura de pantalla y compartirla
  • Servicio de accesibilidad de Android en pantalla
  • Detectar sólo captura de pantalla con FileObserver Android
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.