覆盖或禁用设置菜单

时间:2011-11-22 10:17:09

标签: android settings

我正在创建一个应该在显示产品信息的商店中使用的应用程序。我使用Android平板电脑为客户提供一些互动信息。用户不应该对平板电脑做任何其他事情。

到目前为止,我设法禁用了后退和主页按钮。应用程序启动完成后,应用程序启动。因此,当他重新启动设备时,他无法启动任何其他应用程序(我无法阻止用户重新启动设备)。

问题是,客户可以打开设置菜单并强制终止我的应用程序。

有没有办法可以禁用设置菜单(例如用密码保护它)或者通过我的应用程序覆盖它?

我不打算将我的应用程序添加到Android市场,因为它只能在商店中运行。

2 个答案:

答案 0 :(得分:25)

我发现了如何覆盖设置菜单。

由于设置菜单是通过隐式Intent打开的,我只需要添加正确的意图过滤我的活动:

<intent-filter >
    <action android:name="android.settings.SETTINGS" />
    <category android:name="android.intent.category.DEFAULT" />
</intent-filter>
<intent-filter >
    <action android:name="android.settings.WIRELESS_SETTINGS" />
    <category android:name="android.intent.category.DEFAULT" />
</intent-filter>

这将让用户选择他想要打开的设置应用程序。如果我现在将我的活动设置为默认值,则用户无法通过状态栏访问设置菜单。

答案 1 :(得分:0)

我很确定你无法一起禁用设置菜单。

你可以做的就是删除状态栏(底部的那个)。

查看类似:TabletBar Hider的内容。我还没有对它进行测试,而且还需要您找到让您的应用运行此方法或将其实现到您的应用中的方法。如果状态栏在应用程序启动后立即隐藏 - 我无法看到如何进入设置菜单。

您可以查看this关于获取全屏(但我不知道您是否已经尝试/考虑过这种情况)。