如何解决Chromecast Android TV 开启外屏
我正在为 Google Chromecast 开发一个屏幕保护应用程序,它应该连接到外部屏幕。我正在使用代码在用户定义的特定时间唤醒屏幕。它在安卓电视模拟器上运行良好。
val power = applicationContext?.getSystemService(POWER_SERVICE) as PowerManager
val lock = power.newWakeLock(
PowerManager.FULL_WAKE_LOCK or PowerManager.ACQUIRE_CAUSES_WAKEUP
or PowerManager.ON_AFTER_RELEASE,applicationContext?.packageName + ":wakeup!"
)
lock.acquire(0)
lock.release()
但是我在将真实设备连接到外部电视显示器时遇到问题。闲置 15 分钟后,电视显示屏进入睡眠状态,Google Chromecast 无法唤醒电视显示屏。
有没有办法唤醒显示器?
Google Home 应用通过语音命令唤醒显示屏。
也许可以访问 google home API?
解决方法
我已经对此进行了研究,这是我的答案:
- 这样做是为了了解设备是否支持唤醒锁级别
power.isWakeLockLevelSupported(PowerManager.FULL_WAKE_LOCK)
, - 我看到您的目标是保持屏幕开启,强烈考虑改用
WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON
;这是您在 Activity 的onCreate()
方法中设置它的方式:getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
- 这里是官方文档:PowerManager
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。