Android完全退出应用程序的方法

本文实例讲述了Android完全退出应用程序的方法。分享给大家供大家参考。具体如下:

在Android中,如果想退出Android程序,一般都是调用finish()、System.exit(0)、android.os.Process.killProcess(android.os.Process.myPid())等方法来实现退出程序功能,可是在实际开发中,并不能达到完全退出应用程序的效果,这是因为调用finish()、System.exit(0)、android.os.Process.killProcess(android.os.Process.myPid())只能杀死当前的activity,并不能杀死所有的activity,为了完美达到此效果,接下来通过一个案例实现:

一、使用单例模式创建一个Activity管理对象,该对象中有一个Activity容器(具体实现自己处理,使用LinkedList等)专门负责存储新开启的每一个Activity,并且容易理解、易于操作,非常不错!

MyApplication类(储存每一个Activity,并实现关闭所有Activity的操作

package com.hrtx.dd.activity; import java.util.LinkedList; import java.util.List; import android.app.Activity; import android.app.Application; public class MyApplication extends Application { private List<Activity> activitys = null; private static MyApplication instance; private MyApplication() { activitys = new LinkedList<Activity>(); } /** * 单例模式中获取唯一的MyApplication实例 * * @return */ public static MyApplication getInstance() { if (null == instance) { instance = new MyApplication(); } return instance; } // 添加Activity到容器中 public void addActivity(Activity activity) { if (activitys != null && activitys.size() > 0) { if(!activitys.contains(activity)){ activitys.add(activity); } }else{ activitys.add(activity); } } // 遍历所有Activity并finish public void exit() { if (activitys != null && activitys.size() > 0) { for (Activity activity : activitys) { activity.finish(); } } System.exit(0); } }

二、在每一个Activity中的onCreate方法里添加该Activity到MyApplication对象实例容器中
复制代码 代码如下:MyApplication.getInstance().addActivity(this);
三、在需要结束所有Activity的时候调用exit方法
复制代码 代码如下:MyApplication.getInstance().exit();

希望本文所述对大家的Android程序设计有所帮助。

时间: 2024-09-04 11:59:38

Android完全退出应用程序的方法的相关文章

Android完全退出应用程序的方法_Android

本文实例讲述了Android完全退出应用程序的方法.分享给大家供大家参考.具体如下: 在Android中,如果想退出Android程序,一般都是调用finish().System.exit(0).android.os.Process.killProcess(android.os.Process.myPid())等方法来实现退出程序功能,可是在实际开发中,并不能达到完全退出应用程序的效果,这是因为调用finish().System.exit(0).android.os.Process.killPr

Android 安全退出应用程序的方法总结

Android 安全退出应用程序的方法总结 正常关闭应用程序: 当应用不再使用时,通常需要关闭应用,可以使用以下三种方法关闭android应用: 第一种方法:首先获取当前进程的id,然后杀死该进程. android.os.Process.killProcess(android.os.Process.myPid()) 通过这种方式不能将应用程序完全杀死,并且他不会把当前应用应用的Activity的task任务栈清空 第二种方法:终止当前正在运行的Java虚拟机,导致程序终止 System.exit

Android实现长按back键退出应用程序的方法

  本文实例讲述了Android实现长按back键退出应用程序的方法.分享给大家供大家参考.具体分析如下: 最近在做一个Android上的应用,碰到一个问题就是如何实现长按back键退出应用程序.在网上查找了很多资料,发现几乎没有这样的实现,大部分在处理时是双击back键来退出应用程序.参考了一下双击back键退出应用程序的代码,网上主流的一种方法是下面这种方法,实现起来比较简单: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 @Override

Android实现长按back键退出应用程序的方法_Android

本文实例讲述了Android实现长按back键退出应用程序的方法.分享给大家供大家参考.具体分析如下: 最近在做一个Android上的应用,碰到一个问题就是如何实现长按back键退出应用程序.在网上查找了很多资料,发现几乎没有这样的实现,大部分在处理时是双击back键来退出应用程序.参考了一下双击back键退出应用程序的代码,网上主流的一种方法是下面这种方法,实现起来比较简单: @Override public boolean onKeyDown(int keyCode, KeyEvent ev

Android应用退出登录的实现方法

每一个app都会有一个"退出登陆"的功能,当点击退出之后需要将所有的Activity都finish掉,开始是想将栈中的所有Activity清除掉,但是没有找到方法,后来用广播实现了 核心思想 当点击登陆的时候发送一个广播,然后在你的BaseActivity里面手动注册一个广播,当收到广播后finish,这样所有继承这个Base的Activity就都finish了, 主要代码 点击退出登录:发送广播 Intent intent = new Intent(); intent.setActi

Android 完全退出应用程序的解决方法_Android

有一种需要,我们在菜单项中点击退出应用程序,应用程序就退出,不需要回到MainActivity 设计: 有两个应用界面MainActivity和BActivity,以及用于程序的通用类ExitUtil 步骤: 1.添加一个类,名为ExitUtil 复制代码 代码如下: public class ExitUtil { public static final int EXIT_APPLICATION = 0x0001; private Context mContext; public ExitUti

Android 完全退出应用程序的解决方法

有一种需要,我们在菜单项中点击退出应用程序,应用程序就退出,不需要回到MainActivity 设计: 有两个应用界面MainActivity和BActivity,以及用于程序的通用类ExitUtil 步骤: 1.添加一个类,名为ExitUtil 复制代码 代码如下:public class ExitUtil { public static final int EXIT_APPLICATION = 0x0001; private Context mContext; public ExitUtil

我的Android进阶之旅------&amp;gt;Android安全退出应用程序的几种方式

当应用不再使用时,通常需要关闭应用,可以使用以下几种方法关闭android应用: 第一种方法:首先获取当前进程的id,然后杀死该进程.  建议使用这种方式 android.os.Process.killProcess(android.os.Process.myPid()) 第二种方法:终止当前正在运行的Java虚拟机,导致程序终止 System.exit(0); 或者 Runtime.getRuntime().exit(0); 第三种方法:强制关闭与该包有关联的一切执行 android2.1之前

android 完全退出应用程序实现代码_Android

android退出应用程序会调用android.os.Process.killProcess(android.os.Process.myPid())或是System.exit(0),这只是针对第一个Activity(也就是入口的Activity)时生效.如果有A,B,C三个Activity,而想在B或C中Activity退出,调用上面的方法,往往会销毁当前的Activity返回上一个Activity.当然也可以逐个返回上一个Activity,直到跳转到入口的Activity,最后退出应用程序.但