Come mantenere dispositivo Android di dormire mentre collegato
-
08-10-2019 - |
Domanda
Mi piacerebbe mantenere lo schermo ogni volta che una delle mie attività sono in esecuzione e il telefono è collegato a una fonte di alimentazione. So che sono Wakelocks difficile, quindi sto cercando un esempio o un po 'di documentazione su come raggiungere questo obiettivo specifico.
Soluzione
Non utilizzare blocchi di scia per questo -.. Basta impostare e cancellare il WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON
finestra bandiera a seconda che il dispositivo è attualmente collegato È possibile impostare il flag con Activity.getWindow().addFlags()
Quindi, il codice sarebbe
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
Altri suggerimenti
Un WakeLock
isn't che difficile, basta assicurarsi di controllare che non sia già in possesso quando si chiama acquire()
e assicurarsi che è ha tenuto quando si chiama release()
. Anche voi volete fare in modo che avete il permesso android.permission.WAKE_LOCK
definito nel file manifest.
Se si desidera solo per acquisire il Wakelock quando il telefono è collegato, è possibile registrare un BroadcastReceiver
che gli orologi per le android.intent.action.ACTION_POWER_CONNECTED
e android.intent.action.ACTION_POWER_DISCONNECTED
intenti. Non ho usato questi me stesso, quindi non ci può essere qualche permesso applicazione è necessario ottenere prima che questi intenti potrà mai funzionare.