android 2.2+ 完全退出程序的方法
16lz
2021-01-23
阅读更多
推荐安卓开发神器(里面有各种UI特效和android代码库实例)
import android.app.Activity;import android.content.BroadcastReceiver;import android.content.Context;import android.content.Intent;import android.content.IntentFilter;import android.os.Bundle;/*** * @author Mari * @version 创建时间:2011-3-1 上午09:43:38 * MyAcitivty类说明:Acitivty的子类 基础该类的子类必须实现onCreate 方法 * 在该类中注册了一个BroadcastReceiver 用于接收退出消息 * 在接收到消息之后结束自身*/public abstract class MyAcitivty extends Activity { /** * 负责各个具体 Activity 的显示 */ public abstract void onCreate(); @Override public void onCreate(final Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); onCreate(); RegListener(); } /** * 注册退出事件监听 * */ public void RegListener() { ExitListenerReceiver exitre = new ExitListenerReceiver(); IntentFilter intentfilter = new IntentFilter(); intentfilter.addAction(this.getPackageName() + "." + "ExitListenerReceiver"); this.registerReceiver(exitre, intentfilter); } class ExitListenerReceiver extends BroadcastReceiver { @Override public void onReceive(Context arg0, Intent arg1) { ((Activity) arg0).finish(); } }}
在自己所有的activity中继承该类 到需要退出程序的时候发送广播Intent intent = new Intent(context.getPackageName()+".ExitListenerReceiver");
context.sendBroadcast(intent); 即可。
不在2.2的时候activityManager.restartPackage()方法就可以退出整个程序