`
DanielHan
  • 浏览: 57385 次
  • 性别: Icon_minigender_1
  • 来自: 北京
博客专栏
074641d7-eb86-343f-a745-65a0f693edb5
设计模式
浏览量:7377
社区版块
存档分类
最新评论

Android home键和back键区别

阅读更多
back键
Android的程序无需刻意的去退出,当你一按下手机的back键的时候,系统会默认调用程序栈中最上层Activity的Destroy()方法来销毁当前Activity,当此Activity又被其它Activity启动起来的时候,会重新调用OnCreate()方法进行创建,当栈中所有Activity都弹出结束后,应用也就随之结束了.如果说程序中存在service之类的,则可以在恰当的位置监听处理下也就可以了.

             
home键
Android程序的隐藏,当你按下手机的Home键的时候,系统会默认调用程序栈中最上层Activity的stop()方法,然后整个应用程序都会被隐藏起来,当你再次点击手机桌面上应用程序图标时,系统会调用最上层Activity的OnResume()方法,此时不会重新打开程序,而是直接进入,会直接显示程序栈中最上层的Activity.

实现按Home键时隐藏程序的效果:
1:Android 2.0之前需要监听按键事件,进行判断是不是按下了back键
2:Android 2.0之后系统提供了一个onBackPressed()方法,这个方法就是专门用来监听back键事件的,所以只需重写onBackPressed()方法即可
@Override
public void onBackPressed() { 
    //实现Home键效果 
    //super.onBackPressed();这句话一定要注掉,不然又去调用默认的back处理方式了 
    Intent i= new Intent(Intent.ACTION_MAIN); 
    i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
    i.addCategory(Intent.CATEGORY_HOME); 
    startActivity(i);  
}


退出应用程序的实现:可以自己写个方法,例如:

public void exitProgrames(){ 
    Intent startMain = new Intent(Intent.ACTION_MAIN); 
    startMain.addCategory(Intent.CATEGORY_HOME); 
    startMain.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
    startActivity(startMain); 
    android.os.Process.killProcess(android.os.Process.myPid()); 
}


注意:需要添加权限:<uses-permission android:name="android.permission.RESTART_PACKAGES" />
分享到:
评论

相关推荐

    Android中home键和back键区别实例分析

    本文实例分析了Android中home键和back键区别。分享给大家供大家参考。具体如下: back键 Android的程序无需刻意的去退出,当你一按下手机的back键的时候,系统会默认调用程序栈中最上层Activity的Destroy()方法来销毁...

    Android监听Home键和Back键的区别介绍

    在Android开发中,对Home键和Back键的监听是非常基础而又重要的一项功能。本文将详细介绍监听这两个按键的区别以及如何实现Home键的监听,并且提供了一段示例代码。 首先,我们需要了解在Android系统中按下Home键和...

    屏蔽Home+Back键

    在Android系统中,Home键和Back键是两个非常重要的功能键,它们分别用于返回主屏幕和退回上一级操作。在某些特殊场景下,比如开发特殊应用、进行测试或者保护隐私时,我们可能需要屏蔽这两个键的功能,使得用户无法...

    back键取代home键

    android开发中的帮助代码,back键取代home键,很有用,很方便。

    Android 屏蔽home,菜单,返回键 解锁,加锁

    在Android系统中,Home键、菜单键(在某些设备上是多任务键)和返回键是用户界面的重要组成部分,它们提供了导航和操作的基本方式。然而,在特定的应用场景下,如开发特殊应用或游戏时,开发者可能需要屏蔽这些系统...

    屏蔽android4.0以上home按键。

    综上所述,屏蔽Android 4.0以上版本的Home键涉及多方面技术和策略,每个方法都有其优缺点,需要根据具体应用场景和用户需求来选择合适的方式。同时,开发者应始终尊重用户习惯和系统权限,遵循最佳实践,以提供稳定...

    android 4.0 上的HOME 键捕获

    本文将详细介绍如何在Android 4.0(Ice Cream Sandwich, ICS)系统上实现Home键的捕获,包括相关的代码示例和注意事项。 #### 关键知识点 1. **捕获Home键的基本原理** 2. **使用对话框对话(Dialog)捕获Home键**...

    android 长按home键处理源码

    此类为安卓源码 ,包括长按home键,电源键,back 键,音量键,等

    Android 如何在自己的应用中模拟Home键

    在Android开发中,有时我们需要模拟Home键的行为,使得用户点击应用内的某个按钮后,Activity不会被销毁,而是进入后台,类似于用户按下物理Home键的状态。本文将详细介绍如何在Android应用中实现这一功能。 首先,...

    Android应用源码之按键的处理.zip

    在Android中,还有一些特殊的按键事件,如BACK键、HOME键、MENU键等。这些系统级的按键处理需要特别注意,因为它们涉及到应用的导航和退出逻辑。例如,处理BACK键通常是为了防止用户意外退出应用: ```java @...

    Android高级应用源码-捕获Home键.zip

    然而,这并不是标准做法,因为Home键和Back键的功能是不同的。 项目中的`HomeDemo`应该是一个演示程序,展示了如何在实际应用中实现Home键捕获。通过分析和学习这个源码,开发者可以了解到如何在不违反Android设计...

    Android中监听Home键的4种方法总结

    但是发现home不能这样处理,onKeydonwn可以处理菜单键和back键,但home不能。因为home键是系统键,情况特殊一些。 看了一下网上的资料,说下面的方法可以。(其实不行) 代码如下: @Override   public void ...

    Android应用开发中模拟按下HOME键的效果(实现代码)

    在Android应用开发中,有时需要模拟用户按下HOME键的效果,这通常是出于特定的用户体验考虑,例如在完成某个操作后返回主屏幕,或者在特定条件下结束当前应用而不使用物理的BACK键。以下将详细解释如何通过代码实现...

    Android密码锁屏的实现,解决Home,Back问题

    这个项目专注于解决Home键和Back键的处理,确保用户在锁定屏幕后无法通过常规方式退出,增强了系统的安全性。接下来,我们将深入探讨如何实现这样一个功能。 首先,我们需要创建一个新的Activity作为锁屏界面。这个...

    android测试键值apk(一个测试键值的apk,将apk安装到系统,操作键盘或者遥控器,会把相应键值打印出来).zip

    此外,`keyTest.apk`还可能提供了对特殊键值的测试,比如BACK键、HOME键、搜索键等,这些键在Android中有着特殊的含义和处理方式。通过这个工具,开发者可以确保自己的应用在处理这些系统级键值时不会出现意外的行为...

    在android的状态栏(statusbar)中增加menu,home和back快捷键的方法

    在android的状态栏(statusbar)中增加menu,home和back快捷键的方法 framework里 修改的

    Android statusBar添加back,home,menu按钮

    在Android原生设计中,back、home和menu按钮通常位于屏幕底部的系统导航栏上。将这些功能移至StatusBar可能是为了特定的用户界面需求或自定义ROM的开发。下面,我们将详细探讨如何在Android 2.3中实现这一功能。 1....

Global site tag (gtag.js) - Google Analytics