完全锁定活动

时间:2013-07-05 10:10:57

标签: android

我有一个应用程序,我可以完全“锁定”一个活动。我在S3上运行Android 4.2 Jellybean。

现在我的应用程序需要有一个特定的屏幕,它将由多个不同的人(有点像自助登录应用程序)进行交互,我不希望他们能够访问除了屏幕之外的任何其他内容具有。所以我禁用了后退按钮,但我仍然需要禁用以下内容:

  1. 主页按钮
  2. 长按主页按钮
  3. 通知栏。 Android具有此功能,您可以从屏幕的最顶部向下拖动,并且可以显示配置静音或蓝牙等设置的抽屉,我也需要禁用它。
  4. 自动锁定屏幕
  5. 有谁知道如何完成其​​中任何一项?

2 个答案:

答案 0 :(得分:0)

这听起来像你需要应用程序全屏。

您在Activity.onCreate()

中实现了这一目标
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, 
                                WindowManager.LayoutParams.FLAG_FULLSCREEN);

请注意,来电将在当前应用程序之上。

确保设备不会进入睡眠状态:

  1. 只需在设置
  2. 中禁用它即可
  3. 在布局中使用android:keepScreenOn="true"(目前为止最简单的选项)
  4. 使用WakeLock
  5. 此外,用户仍然可以按电源按钮来锁定设备。但禁用电源按钮对我来说似乎不是一个好主意。

    关于通知栏(在评论中讨论):看一下这个帖子:Disable Android Notification Bar in Full Screen (in SGIII)

答案 1 :(得分:0)

你想要的是让你的应用程序进入“Kiosk模式”。这仍然不是一个完整的解决方案。我假设您将使用您的应用程序直接控制设备,因此它可能会起作用,因为用户必须选择将其设置为主屏幕。

Android for kiosk apps

Locking down kiosk mode android devices

由于显而易见的原因,由于潜在的恶意应用程序,Android无法实现这一点。如果设备已植根,可能还有其他解决方案。