Mi aplicación se inicia en el evento de acoplamiento de automóviles, quiero despertar el teléfono (hecho por el sistema) y desbloquear la pantalla cuando enchufo mi dispositivo. ¿Es posible?Cómo mostrar la actividad cuando la pantalla está bloqueada?
Respuesta
Use Activity.getWindow() para obtener la ventana de su actividad; utilizar Window.addFlags() para añadir cualquiera de los siguientes indicadores en WindowManager.LayoutParams que usted desea: FLAG_DISMISS_KEYGUARD, FLAG_SHOW_WHEN_LOCKED, FLAG_TURN_SCREEN_ON
Así es como el muelle de coche estándar (y del muelle del escritorio) aplicación implementa este comportamiento.
genial funciona, pero estos indicadores solo están disponibles en la versión 5 de SDK y versiones posteriores :( – mishkin
encontró un enfoque universal, consulte mi respuesta aquí http://stackoverflow.com/questions/3621599/wake-android-device-up/4541982#4541982 – mishkin
parece que esto no funciona en ICS –
estoy subiendo el uso de la actividad a nivel superior
private Window wind;
@Override
protected void onResume() {
// TODO Auto-generated method stub
super.onResume();
/******block is needed to raise the application if the lock is*********/
wind = this.getWindow();
wind.addFlags(LayoutParams.FLAG_DISMISS_KEYGUARD);
wind.addFlags(LayoutParams.FLAG_SHOW_WHEN_LOCKED);
wind.addFlags(LayoutParams.FLAG_TURN_SCREEN_ON);
/* ^^^^^^^block is needed to raise the application if the lock is*/
}
Gracias. Funciona perfectamente, incluso si lo coloco en OnCreate. – Cerin
¿Funcionaría esto en un AlertDialog? – user1762507
No lo sé. Por favor, prueba este método y cuéntanos! –
Usted será capaz de utilizar FLAG_DISMISS_KEYGUARD
sólo para teléfonos que no tienen cerraduras de seguridad habilitados como patrón de bloqueo.
FLAG_SHOW_WHEN_LOCKED
solo traerá su actividad actual en la parte superior, si el usuario intenta moverse a otra parte, tendrá que desbloquear la pantalla.
Como alternativa, puede agregar el permiso en su manifiesto:
<uses-permission android:name="android.permission.DISABLE_KEYGUARD"/>
Y, en su actividad en crear:
KeyguardManager manager = (KeyguardManager) this.getSystemService(Context.KEYGUARD_SERVICE);
KeyguardLock lock = manager.newKeyguardLock("abc");
lock.disableKeyguard();
método obsoleto – user1940676
Cuando se utiliza un patrón de bloqueo o una entrada de pasador que tenía que añadir el lo siguiente también porque la pantalla se apagó en menos de 5 segundos:
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
- 1. OSX: compruebe si la pantalla está bloqueada
- 2. Cómo encontrar que la pantalla está bloqueada en android
- 3. Identificador de actividad cuando la pantalla está desbloqueada
- 4. ¿Cómo mantener una actividad ejecutándose mientras la pantalla está apagada?
- 5. ¿Cómo detectar cuando la pantalla está encendida?
- 6. Android Timer marca tarde cuando la pantalla del teléfono está bloqueada
- 7. La pantalla GNU no responde, parece bloqueada
- 8. El audio de fondo de iOS se detiene cuando la pantalla está bloqueada
- 9. cómo desbloquear la pantalla cuando se llama a BroadcastReceiver?
- 10. ¿Cómo obtener actividad actual en la pantalla?
- 11. onResume se repite una y otra vez mientras la pantalla del teléfono está bloqueada
- 12. ¿Cómo mostrar la brújula en la pantalla?
- 13. Mostrar el teclado virtual cuando la actividad comienza
- 14. Fallo del dispositivo D3D durante la pantalla bloqueada
- 15. Documents.Add resultados en la plantilla está bloqueada
- 16. iPhone aplicación en ejecución, mientras que la pantalla bloqueada
- 17. android: apague la pantalla cuando está cerca de la cara
- 18. Cómo mostrar la actividad transparente en otra actividad sin eliminar la actividad anterior
- 19. Recordatorios de Mango en pantalla bloqueada
- 20. Cómo creo una actividad que esté visible en la parte superior de la pantalla de bloqueo
- 21. ¿Hay alguna manera de que una aplicación Java detecte si la pantalla está bloqueada?
- 22. ¿Cómo mostrar searchResultsTableView cuando la barra de búsqueda está activada?
- 23. Cómo realizar la actividad, sin cubrir la pantalla completa
- 24. Mostrar actividades múltiples en la misma pantalla
- 25. Cómo deshabilitar el botón de retroceso cuando el cuadro de alerta está en la pantalla
- 26. ¿Cómo verifica si una fila está bloqueada para la actualización?
- 27. "código de error 5: la base de datos está bloqueada" cuando se utiliza un ContentProvider
- 28. diseño Recomponer Actividad para reproducir vídeo en pantalla completa cuando la pantalla se gira
- 29. El servicio de Windows creado para apagar la computadora no funciona cuando la computadora está bloqueada
- 30. Cómo regresar a la pantalla de inicio desde la actividad
Espero que no sea así, no me gustaría que mi teléfono desbloqueara un ytime! (Podría marcar por error ...) –
Tengo la tentación de editar esto en "Cómo mostrar mi actividad cuando la pantalla está bloqueada", ya que no se puede "desbloquear" el dispositivo programáticamente en Android ... – StrikeForceZero
Indeed , como explica SrikeForceZero, no puede "desbloquear" el dispositivo programáticamente. Lo que las respuestas a continuación parecen sugerir que puedes hacer es mostrar cómo puedes hacer una Actividad * interactiva * ** específica mientras que el dispositivo, en general, permanece bloqueado **. –