android如何杀死一个项目下的所有activity
2011-06-29 13:42 佳佳@——@ 阅读(315) 评论(0) 编辑 收藏 举报ActivityManager am = (ActivityManager)getSystemService (Context.ACTIVITY_SERVICE);
am.restartPackage(getPackageName());
在AndroidManifest.xml文件中加上<uses-permission android:name="android.permission.RESTART_PACKAGES"></uses-permission>
这种方法在某些机器上不好用
还可以用这种方法
android.os.Process.killProcess(android.os.Process.myPid());
System.exit(0);
不过这个有时候也不好使
最近又研究出来一中新方法
新建一个anpplication
1.public class MapStart extends Application
//全局变量
static MapStart mapStart;
2.在oncreate 方法中写上
mainActivity= new ArrayList<Activity>();
mapStart=this;
加上这几个方法
public List<Activity> MainActivity() {
return mainActivity;
}
public void addActivity(Activity act) {
mainActivity.add(act);
}
public void finishAll() {
for (Activity act : mainActivity) {
if (!act.isFinishing()) {
act.finish();
}
}
mainActivity =new ArrayList<Activity>();
}
3.在其他的activity的中加上
的oncreaete()方法中加上
MapStart appState = MapStart.mapStart;
appState.addActivity(this);
4.在你的监听器中加上
//得到全局变量销毁
MapStart appState = (MapStart)getApplicationContext();
appState.finishAll();