Home键屏蔽

公司要开发一款智能终端,设备中预装了本公司开发的软件,但是为了避免用户进入Android系统的界面,这个时候我们就需要对其中的按键加以屏蔽,尤其是Home键,在普通的情况下,当我们点击Home按键的时候,就返回到我们的Android系统,在这里,当我们点击Home按键的时候,让返回我们应用的主界面。

在Android4.0以下版本的Android设备中,可以重写onAttachedToWindow方法来实现屏蔽Home按键的作用

    @Override
    public void onAttachedToWindow() {
        // TODO Auto-generated method stub
        this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD_DIALOG);
        super.onAttachedToWindow();
    }

但是在Android4.0以上版本的Android设备中就不能用了,不过刚刚发现了另外一种屏蔽和重写Home按键的方法:

 1     public static final int FLAG_HOMEKEY_DISPATCHED = 0x80000000;
 2     @Override
 3     protected void onCreate(Bundle savedInstanceState) {
 4         super.onCreate(savedInstanceState);
 5         this.getWindow().setFlags(FLAG_HOMEKEY_DISPATCHED, FLAG_HOMEKEY_DISPATCHED);// 关键代码
 6         setContentView(R.layout.activity_main);
 7     }
 8
 9     @Override
10     public boolean onKeyDown(int keyCode, KeyEvent event) {
11         // TODO Auto-generated method stub
12         if (KeyEvent.KEYCODE_HOME == keyCode) {
13             Toast.makeText(MainActivity.this, "HOME", Toast.LENGTH_SHORT).show();
14         }
15         return super.onKeyDown(keyCode, event);
16     }

这样的话你再点击Home按键的时候就不会返回到桌面了。

==

时间: 2024-11-04 22:31:09

Home键屏蔽的相关文章

home键监听、屏蔽和模拟home键

/** * 模拟按home键 * 程序退到后台运行 * @param context */ private void imitatePressHome(Context context) { Intent intent = new Intent(Intent.ACTION_MAIN); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); intent.addCategory(Intent.CATEGORY_HOME); context.startActi

javascript高级编程运用

一//各种尺寸 (size) s += “\r\n网页可见区域宽:“+ document.body.clientWidth; s += “\r\n网页可见区域高:“+ document.body.clientHeight; s += “\r\n网页可见区域高:“+ document.body.offsetWeight +” (包括边线的宽)“; s += “\r\n网页可见区域高:“+ document.body.offsetHeight +” (包括边线的宽)“; s += “\r\n网页正文

Recent键及状态栏屏蔽

FBI Warning:欢迎转载,但请标明出处:http://blog.csdn.net/codezjx/article/details/45542137,未经本人同意请勿用于商业用途,感谢支持! Recent键及状态栏下拉的屏蔽 Back键和Home键的屏蔽可以看我这篇贴: http://blog.csdn.net/codezjx/article/details/45485975 Home键与Recent键的点击事件是在framework层进行处理的,因此onKeyDown与dispatchK

Android中屏蔽"电源键长按"、"Home键"、"Home键长按"

Android中屏蔽"电源键长按"."Home键"."Home键长按"    这几个"按钮"的触发,都会产生一个Action == Intent.ACTION_CLOSE_SYSTEM_DIALOGS的通知    区分他们三个的不同事件的参数,就是随着Intent带过来的reason字符串,分别对应    "电源键长按"(globalscreen)."Home键"(homekey).&q

屏蔽掉返回键,menu键,Home键

public class LockActivity extends Activity{ private static final int FLAG_HOMEKEY_DISPATCHED = 0x80000000; @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); this.getW

Back键和Home键的屏蔽

FBI Warning:欢迎转载,但请标明出处:http://blog.csdn.net/codezjx/article/details/45485975,未经本人同意请勿用于商业用途,感谢支持! (1)屏蔽返回键:  重写onBackPressed()即可,不调用超类方法 @Override public void onBackPressed() { // super.onBackPressed(); } (2)屏蔽Home键: 1.常规方法如下:(但是在Android4.0以上会失效) @O

Android系统onKeyDown监控/拦截/监听/屏蔽返回键、菜单键和Home键

在Android系统中用来显示界面的组件(Component)为Activity,也就是说只有重写Activity的onKeyDown方法来监控/拦截/屏蔽系统的返回键(back).菜单键(Menu)及Home键. 1.拦截/屏蔽返回键.菜单键实现代码 @Overridepublic boolean onKeyDown(int keyCode, KeyEvent event) {    if(keyCode == KeyEvent.KEYCODE_BACK) { //监控/拦截/屏蔽返回键   

VC MFC 屏蔽ESC和ENTER键关闭对话框

窗体头文件中加入: 1 protected: 2 virtual BOOL PreTranslateMessage(MSG* pMsg); // PreTranslateMessage是消息在送给TranslateMessage函数之前被调用的 3 public: 4 virtual void OnOK(); 在CPP中加入: 1 BOOL CColorDlgDlg::PreTranslateMessage(MSG* pMsg) 2 { 3 //屏蔽ESC关闭窗体/ 4 if(pMsg->mes

怎么屏蔽F5键刷新功能

window.document.onkeydown=function(){if(event.keyCode==116){//屏蔽F5键,改为只刷新本页面,防止一刷就刷整个窗口event.keyCode=0;event.returnValue=false;window.location.reload(true);event.cancelBubble=true;return false;}}