Sto sviluppando un'applicazione di allarme. Dall'attività principale ho impostato l'allarme usando la trasmissione. Poi in ricezione nel ricevitore di trasmissione chiamo attività che consente all'utente di spegnere o posticipare l'allarme ... In tale attività, all'inizio di onCreate utilizzo queste linee per attivare lo schermo e sbloccare il dispositivo:Attiva automaticamente lo schermo in Android
final Window win = getWindow();
win.addFlags(WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED
| WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD);
win.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON
| WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON);
Questo funziona perfettamente su Samsung Galaxy S2 con Android 2.3.4 ma non funziona su HTC con Android 2.3.5. Su htc non fa nulla, e quando premo lo schermo del pulsante di blocco si sblocca automaticamente senza farmi il giro del cerchio. È come flag_dissmiss_keygard funziona ma flag_turn_screen_on isnt. C'è un altro modo o un'altra soluzione per fare questo?
ho provato su Nexus One (2.3.6) e Nexus S (4.1.1) e funziona piuttosto bene. – nifo
Sviluppatori, ti prego: per favore non farlo !!! Voglio solo avvertire che disabilitare il blocco della tastiera fa quello che dice: ignora qualsiasi PIN o sblocco del Pattern. Prova a premere a lungo il tasto home (gingerbread) o dell'app (ICS) e vedrai cosa intendo. Non ho riscontrato problemi con i parametri di layout sui telefoni più diffusi e il numero di telefoni Gingerbread sta diminuendo ogni giorno. Si prega di riconsiderare le bandierine delle finestre! –
Ehi @PatrickHorn puoi specificare un esempio di un dispositivo in cui questo ignora la schermata di blocco del PIN. Nei miei test posso visualizzare una schermata per l'utente con il messaggio che desidero, e il secondo che l'utente prova a colpire a casa o a cambiare app, ottiene la schermata di inserimento PIN. Quindi mi sembrava abbastanza sicuro. – marmor