Android项目中的双击退出应用

效果图:


ss

常见应用通常有双击退出应用的功能:

    但是一般都是放在主页MainActivity中:
    
  在MainActivity的onBackPress()方法中:

private  long currentBackPressedTime=0;

 @Override
 public void onBackPressed() {
  if (System.currentTimeMillis() - currentBackPressedTime > 2000) {
           UtilsToast.toast("再按一次返回键退出程序", mContext);
           currentBackPressedTime = System.currentTimeMillis();
  } else {
            //退出应用的方法
           UtilsExitApplication.getInstance().exit(this);
  }
 }
注意:MainActivity的onBackPress()方法中不能调用super.onBackPressed();
#2 定义管理Activity的Application
public class UtilsExitApplication extends Application {

    private List<Activity> list = new ArrayList<Activity>();
 
    private static UtilsExitApplication ea;

    private UtilsExitApplication() {}

    public static UtilsExitApplication getInstance() {
        if (null == ea) {
            ea = new UtilsExitApplication();
        }
        return ea;
    }

   /**
    *添加activity
    */
    public void addActivity(Activity activity) {
        list.add(activity);
    }
    /**
     * 全部退出
     * @param context
     */
    public void exit(Context context) {
        for (Activity activity : list) {
            activity.finish();
        }
        //友盟统计
     MobclickAgent.onKillProcess(context);
        System.exit(0);
    }
    /**
     * 退出后  重新启动 新的activity时使用
     * @param context
     */
    public void exit2(Context context) {
        for (Activity activity : list) {
            activity.finish();
        }
    }
}

#3 在Activity的onCreate方法中将当前Activity添加到应用的管理中去:
    UtilsExitApplication.getInstance().addActivity(this);






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值