Android中实现“再次点击退出程序”的功能

  • 背景
  • 实现
    • A little bit of progress every dayCome on

背景

今天来给自己的Android应用加一个比较实用的小功能:点击两次才会退出当前应用。
我们可以在UC浏览器和熊猫直播app中可以看到这样的处理。这样做的目的是为了防止用户不小心点击了返回键而直接退出了应用的情况。如果加了再次点击退出程序的代码逻辑后,可以很有效的避免这类情况出现。


实现

下面就给出代码,你需要在你的应用的主Activity中加入下面这段代码,都是一些基本的逻辑,代码也给出了关键注释,应该不难理解:

private long firstTime;// 记录点击返回时第一次的时间毫秒值
    @Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        if(keyCode == KeyEvent.KEYCODE_BACK){// 点击了返回按键
            exitApp(2000);// 退出应用
            return true;
        }
        return super.onKeyDown(keyCode, event);
    }

    /**
     * 退出应用
     * @param timeInterval 设置第二次点击退出的时间间隔
     */
    private void exitApp(long timeInterval) {
        if(System.currentTimeMillis() - firstTime >= timeInterval){
            ToastUtil.showToast(this, "再按一次退出程序");
            firstTime = System.currentTimeMillis();
        }else {
            finish();// 销毁当前activity
            System.exit(0);// 完全退出应用
        }
    }

重写了onKeyDown方法,监听返回按键的点击操作。

===========================================================================

A little bit of progress every day!Come on!

你可能感兴趣的:(安卓开发技术学习,技术分享类)