Der Inaktivmodus ist ein Bildschirmschoner, der in Google TV und Android TV integriert ist. Er soll verhindern, dass statische Bilder über einen längeren Zeitraum angezeigt werden. Das ist wichtig für Displaytechnologien wie OLED, die anfällig für das Einbrennen von Bildern sein können.
Das Betriebssystem versetzt das Gerät nach 10 Minuten Inaktivität des Nutzers in den Inaktivmodus. Nach einer weiteren Phase der Inaktivität des Nutzers (definiert durch die Einstellung „Energiesparmodus“ des Geräts) wechselt das Betriebssystem in den Energiesparmodus und schaltet das Display aus. Apps zur Medienwiedergabe können verhindern, dass das Gerät in den Inaktivmodus wechselt, obwohl der Nutzer nicht mit ihm interagiert, z. B. während er sich einen Film ansieht.
Wenn der Nutzer innerhalb von 30 Minuten nach dem Wechsel in den Inaktivmodus mit dem Gerät interagiert, wird die App wiederhergestellt, die aktiv war, als der Inaktivmodus aktiviert wurde. Wenn der Nutzer mehr als 30 Minuten nach dem Wechsel in den Inaktivmodus mit dem Gerät interagiert, wird er zum Startbildschirm zurückgebracht. Wenn der Nutzer das Gerät im Energiesparmodus über die Ein/Aus-Taste startet, wird er zum Startbildschirm weitergeleitet. Alternativ kann der Nutzer das Gerät im Energiesparmodus auch über bestimmte App-Schaltflächen (z. B. YouTube) starten und wird dann direkt zu dieser App weitergeleitet.
Videowiedergabe
Bei der Videowiedergabe ist es wichtig, zu verhindern, dass das Gerät während der vom Nutzer initiierten Wiedergabe in den Inaktivmodus wechselt, um eine ununterbrochene Wiedergabe zu ermöglichen. Apps sollten jedoch nicht verhindern, dass Geräte in den Inaktivmodus wechseln, wenn die Wiedergabe beendet oder pausiert wird.
Audiowiedergabe
Bei der Audiowiedergabe sollten Apps den Inaktivmodus während der Wiedergabe nicht verhindern es sei denn, sie implementieren einen eigenen Bildschirmschoner mit nicht statischen Bildern. Die Audiowiedergabe wird fortgesetzt, während der Inaktivmodus aktiv ist.
Bei der Audiowiedergabe auf Android wird implizit ein partial Wakelock verwendet. Dadurch wird nicht verhindert, dass das Gerät in den Inaktivmodus wechselt, aber der anschließende Übergang in den Energiesparmodus wird verhindert. Die Wiedergabe wird daher auch dann fortgesetzt, wenn das Gerät in den Inaktivmodus wechselt. Das Gerät wird jedoch nicht in den Ruhemodus versetzt, um eine ununterbrochene Wiedergabe zu ermöglichen.
Inaktivmodus verhindern
Es ist möglich, zu verhindern, dass das Betriebssystem das Gerät in den Inaktivmodus versetzt. Dies muss jedoch in Übereinstimmung mit den Anforderungen für den Inaktivmodus erfolgen. App-Entwickler können nicht verhindern, dass das Gerät in den Energiesparmodus wechselt.
Apps können verhindern, dass sich das Display ausschaltet, indem sie ein Flag für das
Window festlegen:
Kotlin
activity?.window?.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON)
Java
requireActivity().getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
Der Inaktivmodus wird deaktiviert, solange dieses Flag festgelegt ist. Wenn Sie ihn wieder aktivieren möchten, müssen Sie das Flag entfernen:
Kotlin
activity?.window?.clearFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON)
Java
requireActivity().getWindow().clearFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);