Devo rilevare quando l'utente interagisce con il telefono e riavviare la mia app dopo 60 secondi dal touch screen dell'ultimo utente. È possibile fare qualcosa del genere? Deve funzionare come screen server per PC.Rileva se l'utente interagisce con il telefono?
risposta
È possibile fare qualcosa del genere?
Solo se l'attività è in primo piano, nel qual caso è possibile tenere traccia degli eventi tattili. Non è possibile scoprire eventi di tocco che si verificano altrove nel sistema.
ACTION_USER_PRESENT
è un'azione di trasmissione, quindi dovresti essere in grado di scrivere un ricevitore di trasmissione per rispondere ad esso e avviare la tua applicazione. Tenete a mente che è ACTION_USER_PRESENT
inviato quando l'utente è presente dopo che il dispositivo si sveglia (per esempio quando il blocco della tastiera è andato).
Ho anche appena imbattuto in un example dove l'azione BOOT_COMPLETED
trasmissione è utilizzato da un ricevitore broadcast per avviare un'applicazione al boot.
In base al ciclo di vita di Android se l'utente preme il tasto home o la tastiera bloccata suPausa verrà chiamato. Così fai qualcosa di simile.
@Override
public void onPause()
{
super.onPause();
Timer timer = new Timer();
TimerTask task = new TimerTask() {
@Override
public void run() {
// TODO Auto-generated method stub
finish();
}
};
timer.schedule(task, 60000);
}
e se l'utente viene prima di 60 secondi, quindi in onRestart()
.
@Override
public void onRestart()
{
super.onRestart();
timer.cancel();
timer.purge();
}
- 1. interagisce con l'applicazione shell
- 2. Rileva se il contenuto dell'iframe è stato caricato con successo
- 3. Rileva se Mod_Security è installato con PHP?
- 4. Rileva se il file è MP3
- 5. jQuery - rileva se il mouse è fermo?
- 6. Rileva se il genitore html è nascosto
- 7. Rileva se il wifi è attivato
- 8. Rileva se viene utilizzato un browser in un dispositivo mobile (telefono/tablet iOS/Android)
- 9. Come interagisce un programma compilato con il sistema operativo?
- 10. Utilizzo ZeroMQ nell'applicazione Web: come interagisce frontend con il backend
- 11. Plugin TinyMCE che interagisce male con .htaccess
- 12. L'app Apple Watch rileva se un orologio Apple è associato al telefono
- 13. Rileva il parcheggio con opencv
- 14. Rileva se struct ha padding
- 15. Android - rileva un tablet piccolo o un telefono grande?
- 16. Rileva se l'utente è admin
- 17. Aspettarsi - Aspettare mentre si interagisce
- 18. Il gestore di AVD non rileva il mio telefono HTC Hero come dispositivo virtuale
- 19. Rileva PHP se non inglese
- 20. Rileva se UIScrollView sta scorrendo
- 21. "Se ogni telefono risponde a OK Google [...]",
- 22. Come posso verificare se il telefono Android è in carica
- 23. Come verificare se il telefono Android è rootato?
- 24. Android: metodo vibratore (se il telefono non ha vibratore?)
- 25. Verifica se un telefono può inviare SMS
- 26. In che modo Perl interagisce con gli script in esecuzione?
- 27. Rileva se tipo di input = "data" supporta il segnaposto
- 28. iOS rileva il movimento dell'utente
- 29. Android: Rileva input tastiera utente inattività/Rileva (softkeyboard)
- 30. Flex 4 rileva se l'utente preme il tasto di immissione
ho trovato questa soluzione: http://stackoverflow.com/questions/4481226/creating-a-system-overlay-always-on-top-button-in-android e sembra funzionare. Penso che non sia una buona cosa, cosa ne pensi? – Gabrielle
@Gabrielle: non funzionerà su dispositivi più recenti. Per prevenire attacchi di tipo "tapjacking", * tu * puoi ottenere gli eventi touch (e le app sottostanti no), oppure * loro * possono ottenere gli eventi touch (e non puoi). – CommonsWare
Hai ragione, ho provato su un dispositivo più recente e non funziona. Grazie! – Gabrielle