Android 退出activity 的方式总结由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“android学习笔记总结”。
Android 退出activity 的方式总结(2012-09-02 22:24:20)在android中使用:[activityname].this.finish();只是退出了activity的堆栈中,要真正的退出程序在手机cpu中的运行,当应用不再使用时,通常需要关闭应用,可以使用以下三种方法关闭android应用:
一 使用killProce()函数,首先获取当前进程的id,然后杀死该进程: android.os.Proce.killProce(android.os.Proce.myPid());
通过这种方式不能将应用程序完全杀死,并且他不会把当前应用应用的Activity的task任务栈清空
二 在activity的生命周期函数中添加如下的函数,强制关闭与该包有关联的一切执行:
ActivityManager am =(ActivityManager)getSystemService(Context.ACTIVITY_SERVICE);
am.restartPackage(“packagename”);
还需要在AndroidManifest.xml文件中加入如下的权限:
此做法:只能杀死别人,不能杀死自己
三、终止当前正在运行的Java虚拟机,导致程序终止 System.exit(0);不会把自己的应用程序杀死
企业中做法:
创建类app 继承Application
AndroidMainfest-->name-->app //声明该类为整个应用程序全局的实例
创建整个应用程序全局的实例
App.cla: ArrayList activities;
其他的Activity中: public void onCreate(Bundle savedInstanceState){ App app =(App)getApplication();//获取应用程序全局的实例引用
app.activities.add(this);//把当前Activity放入集合中 }
public void onDestory(){ App app =(App)getApplication();//获取应用程序全局的实例引用
app.activities.remove(this);//把当前Activity从集合中移除 }
安全退出:
在菜单退出按钮的事件中定义如下代码: App app =(App)getApplication();List activities = app.activities;for(Activity act:activities){ act.finish();//显式结束