Android中双击返回键退出应用实例代码

 更新时间:2017年03月07日 08:18:04   作者:印象丶亮仔  
本篇文章主要介绍了Android中双击返回键退出应用实例代码,具有一定的参考价值,有兴趣的可以了解一下。

Android中双击返回键退出程序

1.在MyAppliction中(继承Application)

  //运用list来保存们每一个activity是关键
  private List<Activity> mList = new LinkedList<Activity>();
  //为了实现每次使用该类时不创建新的对象而创建的静态对象
  private static MyApplication instance;

  //构造方法
  public MyApplication() {
  }

  //实例化一次
  public synchronized static MyApplication getInstance() {
    if (null == instance) {
      instance = new MyApplication();
    }
    return instance;
  }

  //添加要退出的Activity
  public void addActivity(Activity activity) {
    mList.add(activity);
  }

  //关闭每一个list内的activity
  public void exit() {
    try {
      for (Activity activity : mList) {
        if (activity != null)
          activity.finish();
      }
    } catch (Exception e) {
      e.printStackTrace();
    } finally {
      System.exit(0);
    }
  }

  //杀进程
  public void onLowMemory() {
    super.onLowMemory();
    System.gc();
  }

2.在你需要的关闭的Activity的onCreact()中加入

MyApplication.getInstance().addActivity(this);

3.你需要双击返回退出的界面加上

  /**
   * 两次返回退出
   */
  private long mExitTime;

  public boolean onKeyDown(int keyCode, KeyEvent event) {
    if (keyCode == KeyEvent.KEYCODE_BACK) {
      if ((System.currentTimeMillis() - mExitTime) > 3000) {
        Toast.makeText(this, "再按一次退出程序", Toast.LENGTH_SHORT).show();
        mExitTime = System.currentTimeMillis();
      } else {
        MyApplication.getInstance().exit();
      }
      return true;
    }
    return super.onKeyDown(keyCode, event);
  }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • 基于Flutter实现动态高斯模糊的流程步骤

    基于Flutter实现动态高斯模糊的流程步骤

    一个App加上高斯模糊会形成一种高级的感觉,本文将介绍如何制作一个根据背景内容来动态高斯模糊,文中有详细的代码实现步骤,代码示例讲解的非常详细,具有一定的参考价值,需要的朋友可以参考下
    2023-11-11
  • Android禁止横屏竖屏切换的有效方法

    Android禁止横屏竖屏切换的有效方法

    这篇文章主要为大家详细介绍了Android禁止横屏竖屏切换的有效方法,具有一定的实用性,感兴趣的小伙伴们可以参考一下
    2016-08-08
  • 详解Android版本适配:9.0 Pie

    详解Android版本适配:9.0 Pie

    这篇文章主要介绍了Android版本适配9.0 Pie,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-04-04
  • Android实现软件列表的点击启动另外一个程序功能【附demo源码下载】

    Android实现软件列表的点击启动另外一个程序功能【附demo源码下载】

    这篇文章主要介绍了Android实现软件列表的点击启动另外一个程序功能,涉及Android针对应用程序的读取、加载、启动等操作相关技巧,需要的朋友可以参考下
    2016-07-07
  • Android Activity生命周期详解

    Android Activity生命周期详解

    本篇文章主要介绍Android Activity的生命周期,这里整理了关于Activity的生命周期资料并附测试代码示例,有兴趣的小伙伴可以参考下
    2016-08-08
  • Android中的序列化浅析

    Android中的序列化浅析

    这篇文章主要介绍了Android中的序列化浅析,本文讲解了序列化原因、序列化方法和代码实现等内容,需要的朋友可以参考下
    2015-03-03
  • Android中快速便捷的实现圆角按钮方法详解

    Android中快速便捷的实现圆角按钮方法详解

    圆角按钮在我们现在的界面中常常会用到,最近在开发中就又遇到了,所以想着有没有更快速更便捷的实现方法呢,所以就有了这篇文章,本文主要给大家介绍了关于Android中如何快速便捷的实现圆角按钮的相关资料,需要的朋友可以参考下。
    2017-05-05
  • Android使用HttpURLConnection实现网络访问流程

    Android使用HttpURLConnection实现网络访问流程

    早些时候其实我们都习惯性使用HttpClient,但是后来Android6.0之后不再支持HttpClient,需要添加Apache的jar才行,所以,就有很多开发者放弃使用HttpClient了,HttpURLConnection毕竟是标准Java接口(java.net) ,适配性还是很强的
    2022-12-12
  • Android布局控件View ViewRootImpl WindowManagerService关系

    Android布局控件View ViewRootImpl WindowManagerService关系

    这篇文章主要为大家介绍了Android布局控件View ViewRootImpl WindowManagerService关系示例解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-02-02
  • Android编程实现短信收发及语音播报提示功能示例

    Android编程实现短信收发及语音播报提示功能示例

    这篇文章主要介绍了Android编程实现短信收发及语音播报提示功能,结合实例形式分析了Android实现短信的接收、发送以及相应的语音播报提示功能相关操作技巧,需要的朋友可以参考下
    2017-08-08

最新评论