Sto cercando di vedere se c'è una notifica di sistema che posso ascoltare per vedere quando lo schermo si spegne/accende. qualche idea? Qualcosa di simile a quando la rete si connette/disconnette.Notifica Android dello schermo spento/acceso
risposta
Il sistema trasmetterà quando lo schermo si accende e si spegne -
Per ascoltare per questi, è possibile creare un BroadcastReceiver che ascolta per gli eventi:
Intent.ACTION_SCREEN_OFF Intent.ACTION_SCREEN_ON
sono elencati nella documentazione here:
Inoltre, c'è un tutorial su come rispondere a questi eventi che si potrebbe trovare impiego Ful.
Il modo più semplice è quello di mettere questo nel metodo MyApplication.onCreate()
:
IntentFilter intentFilter = new IntentFilter(Intent.ACTION_SCREEN_ON);
intentFilter.addAction(Intent.ACTION_SCREEN_OFF);
registerReceiver(new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
if (intent.getAction().equals(Intent.ACTION_SCREEN_OFF)) {
Log.d(TAG, Intent.ACTION_SCREEN_OFF);
} else if (intent.getAction().equals(Intent.ACTION_SCREEN_ON)) {
Log.d(TAG, Intent.ACTION_SCREEN_ON);
}
}
}, intentFilter);
Grazie a questo funziona benissimo e dovrebbe essere contrassegnato come risposta. – pmont
Come e quando annullare la registrazione del ricevitore in questo caso? –
È possibile chiamare [unregisterReceiver()] (http://developer.android.com/reference/android/content/Context.html#unregisterReceiver (android.content.BroadcastReceiver)) in qualsiasi momento. Ma supponendo che tu inserisca il codice sopra in 'MyApplication.onCreate()', non devi farlo _ perché non c'è alcuna funzione Application.onDestroy() (la classe 'Application' è unica in quel modo - vedi i documenti ufficiali o [ qui] (http://stackoverflow.com/questions/17278201/android-ondestroy-or-similar-method-in-application-class) per maggiori informazioni). –
- 1. Android ottenere le dimensioni dello schermo dell'orientamento dello schermo
- 2. blocco orientamento dello schermo (Android)
- 3. Android come mostrare la notifica sullo schermo
- 4. Prevenzione dell'applicazione/timeout dello schermo Android
- 5. Valore di luminosità dello schermo in Android
- 6. Modifica della luminosità dello schermo nell'emulatore Android
- 7. Ottenere l'altezza attuale dello schermo (Android)
- 8. SurfaceView Android provocando uno sfarfallio dello schermo
- 9. Come ottengo l'altezza dello schermo in Android?
- 10. Android Canvas.drawCircle al centro dello schermo
- 11. Come funzionano le coordinate dello schermo Android?
- 12. Android - Schede nella parte inferiore dello schermo
- 13. Android ImageView riempire la larghezza dello schermo
- 14. orientamento dello schermo Android al sensore
- 15. Disattivare la rotazione automatica dello schermo - Android
- 16. Dimensioni e densità dello schermo Android
- 17. Problema di gestione dell'orientamento dello schermo Android
- 18. orientamento dello schermo Android differisce tra dispositivi
- 19. CheckBox Android - Ripristino dello stato dopo la rotazione dello schermo
- 20. Dimensioni dello sprite su diverse dimensioni dello schermo Andengine Android
- 21. dimensione dello schermo utilizzabile
- 22. Orientamento dello schermo ios
- 23. Frammenti Android sovrapposti dopo la rotazione dello schermo
- 24. ResultReceiver non sopravvive alla rotazione dello schermo
- 25. Cattura dello schermo
- 26. HTML5 cattura dello schermo
- 27. Effetto dell'aggiornamento dello schermo
- 28. Notifica notifica Android non funzionante
- 29. fallback manifesto per l'orientamento dello schermo
- 30. gestione layout android-land e rotazione dello schermo
C'è una differenza tra l'avere la stessa risposta e la copia di uno. Abbiamo fatto la stessa ricerca di Google: P –
Leggi attentamente il documento! Questa risposta in realtà ti dice se il dispositivo è "interattivo". Se lo schermo è bloccato, il dispositivo non è interattivo. Solo 'android.hardware.display.DisplayManager' può dirti se l'hardware del display è attualmente attivo. Tuttavia, questo probabilmente richiede Android 5. – OneWorld