关于Android 9 隐藏虚拟按键的问题

在Android 9.0系统上,为防止用户在使用app时通过虚拟按键或侧滑返回桌面,尝试了多种方法。首先在app内部尝试隐藏虚拟按键,但因Android 9的特性无效。接着尝试在系统源码层面修改,通过调整policy_control值,发现尽管能隐藏按键,但在横屏播放视频时仍会影响显示。最后,通过修改navigation_bar.xml文件,将虚拟按键的宽高设为0,成功实现了预期效果。

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

关于Android 9隐藏底部虚拟按键

遇到的问题

现在需要在安卓9.0的系统上进行修改,目的是在使用自己的app时无法退回到系统桌面。

解决办法

  办法一: 首先想到的是在app的软件上进行尝试,参考了网上的许多教程之后,都不行,由于Android 9 的特性,及时虚拟按键是隐藏了,但是通过侧边滑动,还是能够出来,放弃。
  办法二:第二个解决办法那就是在系统源码上进行修改了,通过查阅资料,控制虚拟按键显示的文件位于frameworks/base/packages/SettingsProvider/res/values/defaults.xml 路径下
的此行代码中

<string name="policy_control" translatable="false">immersive.full=*</string>

通过设置policy_control的值,可以改变虚拟按键的显示状态,有以下四种情况:

  1. 全屏沉浸模式(包括状态栏和虚拟按键): immersive.full=*
  2. 状态栏沉浸:immersive.status=*
  3. 虚拟按键沉: immersive.navigation=*
  4. 隐藏并且弃用:null

其中沉浸模式就是默认全屏,但是通过滑动还是能够显示出来,类似玩游戏看电影时的效果。
  将policy_control设为null后,虽然行得通,也确实无法退回桌面,但是在横屏

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值