氛围模式是 Google TV 和 Android TV 内置的屏保。用途 避免长时间显示静态图片这很重要 OLED 等显示技术可能容易受到屏幕烧屏的影响。
当用户使用设备 10 分钟后,操作系统会将设备置于氛围模式 无活动。如果用户处于非活动状态的时间(由设备定义)的时间过长, 节能模式设置),操作系统将进入节能模式; 关闭显示屏的电源媒体播放应用可能会阻止设备运行 即使用户没有与氛围模式互动,用户也不会进入氛围模式 比如在看电影时
如果用户在进入氛围模式后 30 分钟内与设备互动 模式,则进入氛围模式时正在使用的应用将会恢复。 如果用户在进入设备后超过 30 分钟与设备互动 在氛围模式下,系统会将这些通知返回到主屏幕。 当用户在处于能耗模式时使用电源按钮启动设备时 系统会将他们转到主屏幕。或者,如果用户 当设备处于节能模式时,使用特定的应用按钮启动 (例如 YouTube)中,则会直接跳转到相应应用。
如果您使用的是
MediaSession
它就会存储隐式
部分唤醒锁定
。暂停播放不会解除此唤醒锁定。
也就是说,设备可能会自动进入氛围模式,但不会
随后会进入节能模式。如果用户与设备互动
在进入氛围模式后的 30 分钟内,系统将恢复您的应用。
视频播放
如要播放视频,请务必防止设备进入氛围模式 在由用户启动的播放期间 以提供不间断的观看体验。但是,应用不得 防止设备在停止或暂停播放时进入氛围模式。
音频播放
对于音频播放,应用 不应在播放期间阻止氛围模式 除非用户自行实施了包含非静态图像的屏保。 当氛围模式处于启用状态时,音频播放将继续。
Android 上的音频播放将隐式保持 部分唤醒锁定。 这不会阻止设备进入氛围模式,但会 防止后续转换到节能模式。因此,系统会 在设备进入氛围模式后继续,但设备将 不会进入休眠状态,以实现不间断播放。
停用氛围模式
您可以阻止操作系统将设备置于氛围模式,但 使用时必须遵守 氛围模式要求。 应用开发者无法阻止设备进入 节能模式。
应用可以阻止屏幕关闭,方法是在
Window
:
Kotlin
requireActivity().window.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON)
Java
requireActivity().getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
设置此标志后,氛围模式将被停用。要重新启用,您必须 清除标志:
Kotlin
requireActivity().window.clearFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON)
Java
requireActivity().getWindow().clearFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);