随时随地退出程序详解

随时随地退出程序的退出程序意义上就在不论你当前身处于那个页面,你都能最直接退出程序,不用一次次的点击Back键,虽然点击Home键表面上是退出了程序,实际上程序并没有退出,还在后台运行。此时如果想在某个活动退出整个程序,我们需要新建一个类,代码如下:

package com.example.app1;

import android.app.Activity;

import java.util.ArrayList;
import java.util.List;

public class Back {

    public static List<Activity>myActivity=new ArrayList<>();
    
    public static void addActivity(Activity activity)
    {
        myActivity.add(activity);
    }

    public static  void removeActivity(Activity activity)
    {
        myActivity.remove(activity);
    }

    public static void finishAll()
    {
        for (Activity activity:myActivity)
        {
            if(!activity.isFinishing())
            {
                activity.finish();
            }
        }
        myActivity.clear();
        //杀死当前程序进程的代码,保证程序彻底退出。
        android.os.Process.killProcess(android.os.Process.myPid());
    }
}

在新建一个类,让所有活动继承这个类

package com.example.app1;

import android.app.Activity;
import android.os.Bundle;
import android.os.PersistableBundle;
import android.support.annotation.Nullable;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;

public class BaseActivity extends AppCompatActivity {
    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        
        Back.addActivity(this);
    }

    @Override
    protected void onDestroy() {
        super.onDestroy();
        Back.removeActivity(this);
    }
}

然后在想要退出程序的活动页面调用这个类的方法:

tv1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Back.finishAll();

            }
        });
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值