我正在为一家公司制作专有应用程序,该应用程序永远不会将其发布到Ice Cream Sandwich(Android 4.0)中的Android Market(或我现在认为的Play商店).
我需要禁用Home,这样用户就无法恶意卸载软件或删除应用捕获的数据.这个最新版本是第一个用4.0编写的,以前的版本是用2.2和3.2编写的.
为了禁用2.2中的Home按钮,我将应用程序关联为主页替换,因此该按钮刚刚重新打开应用程序,但我无法再使用此方法,因为这有点阻止我们对应用程序进行更新(我们不知道)我想让用户选择重新选择Home默认值,因为这会导致数据删除.
我在3.2中禁用Home按钮的代码是:
@Override
public void onAttachedToWindow() {
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD);
super.onAttachedToWindow();
}
Run Code Online (Sandbox Code Playgroud)
并且,在onCreate下:
KeyguardManager keyguardManager = (KeyguardManager)getSystemService(Context.KEYGUARD_SERVICE);
KeyguardLock lock = keyguardManager.newKeyguardLock(KEYGUARD_SERVICE);
lock.disableKeyguard();
Run Code Online (Sandbox Code Playgroud)
但是当我运行在我的3.2平板电脑上运行的相同代码时,它在我的4.0平板电脑上不起作用.
我想知道是否有一个新的API或方法可以达到与我目前在3.2实现中相同的效果.
感谢您的帮助或指导.
亚当
android android-3.0-honeycomb keyguard android-4.0-ice-cream-sandwich