这 4 行 java 代码在 android 应用程序中意味着什么?

在我的 java 应用程序中,我有这段代码

In my java application i have this code

@Override
public void onAttachedToWindow()
  {
  this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD_DIALOG);
  super.onAttachedToWindow();
  }

当我为 android 2.3(级别 10) 构建它时,它可以编译并正常工作.但是当我为 android 4.0 (level 15) 构建它时,它会编译并让我在运行时崩溃并出现以下错误

when i build it for android 2.3 (level 10) it compiles and works fine. But when i build it for android 4.0 (level 15) it compiles and gives me crash at run time and following error

07-16 14:00:03.090: E/AndroidRuntime(29487): FATAL EXCEPTION: main
07-16 14:00:03.090: E/AndroidRuntime(29487): java.lang.IllegalArgumentException: Window type can not be changed after the window is added.

当我评论这一行并构建它时,它工作正常,没有问题..

when i comment this line and build it works fine and no issue..

//this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD_DIALOG);

所以我不明白为什么会发生这种情况以及这段代码是什么意思?

so i am not getting why this happning and whats this code means?

一些参考在这里

当我在手机上运行应用程序时.版本是android 4.0.3

Android 上的幼儿安全应用

推荐答案

@Override
public void onAttachedToWindow()
  {
  this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD_DIALOG);
  super.onAttachedToWindow();
  }

用于在android中禁用主页按钮但

这个安全漏洞已在较新版本的 Android 中得到修复,因此它在 ICS 和果冻豆中不起作用...!!

this security flaw has been fixed in newer versions of Android so it will not work in ICS and jelly bean...!!

相关文章