Android 9.0 10.0 TvSettings home键不响应问题修复

在Android 9.0和10.0的TvSettings中,遇到遥控器Home键无响应的问题。分析发现,尽管点击Home键有事件上报,但TvSettings无法正确监听并处理。通过注册Intent.ACTION_CLOSE_SYSTEM_DIALOGS广播,当接收到'homekey'时,主动finish掉TvSettings窗口,从而解决Home键无法返回桌面的故障。关键修复代码位于TvSettingsActivity.java。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.概述

在10.0的box版本的设备中,系统设置有Settings和TvSettings,这款产品用的是TvSettings 但是发现用遥控器的Home键 点击HOME键时 无反应退不到Launcher桌面或者 input keyevent 3命令模拟Home键时,还是无响应退不到桌面,TvSettings没有退出 回到Launcher 这就需要看keycode Home事件是否由底层驱动反馈到上层应用,然后查询问题所在

2.问题分析

1.adb shell getevent 发现点击home 键时 有事件上报可以查到相关的信息
2.想办法监听在TvSettings的onKeyDown事件 看能不能监听到Home事件、
但是发现始终监听不到Home键 对于Home按键消息的处理,既不能通过onKeyDown、onKeyUp接收到
在每次点击Home按键时都会发出一个action为Intent.ACTION_CLOSE_SYSTEM_DIALOGS的广播,它是关闭系统Dialog的广播,我们可以通过注册它来监听Home按键消息
3.在TvSettings中监听Intent.ACTION_CLOSE_SYSTEM_DIALOGS 广播 当intent.getStringExtra(“reason”)
的值为homekey时就表示是home键,收到Home消息时就finish掉窗口回到桌面

3.home键不响应核

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

安卓兼职framework应用工程师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值