Android锁定全屏

问题描述 投票:3回答:2

是否可以在Android上锁定全屏?基本上隐藏吐司,隐藏主页/后退/切换,隐藏通知栏,使其从底部或顶部滑动不起作用。

[构思一个从中受益匪浅的想法。我知道做我描述的事情很不好,但是它针对的是很小的孩子,他们会随机点击/拖动并偶尔将您的手机语言更改为中文。

android fullscreen
2个回答
6
投票

取决于您要定位的Android版本,您可以使用屏幕固定。

从Android文档(https://developer.android.com/about/versions/android-5.0.html):

屏幕固定

Android 5.0引入了新的屏幕固定API,可让您临时限制用户离开任务或被通知打扰。例如,如果您正在开发教育应用程序以支持Android或单一用途或信息亭应用程序上的高风险评估要求,则可以使用此功能。您的应用激活屏幕固定后,用户将无法查看通知,访问其他应用或返回主屏幕,直到您的应用退出该模式。

有两种激活屏幕固定的方法:

  • 手动:用户可以在“设置”>“安全性”>中启用屏幕固定屏幕固定,然后通过触摸选择要固定的任务最近屏幕中的绿色图钉图标。
  • 以编程方式:激活屏幕以编程方式固定,请从您的应用中调用startLockTask()。如果发出请求的应用不是设备所有者,则会提示用户输入确认。设备所有者应用可以调用setLockTaskPackages()无需用户确认即可使应用程序可固定的方法步骤。

当任务锁定处于活动状态时,会发生以下行为:

  • 状态栏为空白,并且用户通知和状态信息被隐藏。
  • “主页”和“最近使用的应用程序”按钮被隐藏。
  • 其他应用无法启动新活动。
  • 当前的应用程序可以开始新的活动,只要这样做不会创建新的任务。
  • 当设备所有者调用屏幕固定时,用户将保持锁定到您的应用程序,直到该应用程序调用stopLockTask()。
  • 如果屏幕固定是不是设备所有者的另一个应用或用户直接进行的活动,则用户可以同时按住“后退”和“最近”按钮退出。

0
投票

一种方法是使用需要SYSTEM_ALERT_WINDOW权限的覆盖层,同时将服务设置为具有/作为服务。参见yoah在Disable home button in android toddler app?]上的代码示例的先前答案。

© www.soinside.com 2019 - 2024. All rights reserved.