`
limingcai
  • 浏览: 112611 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Android之完美退出所有activity方法

阅读更多
/*还有一种比较流行的Android经典完美退出方法,使用单例模式创建一个Activity管理对象,
* 该对象中有一个Activity容器(具体实现自己处理,使用LinkedList等)
* 专门负责存储新开启的每一个Activity,并且容易理解、易于操作,非常不错!
*
*
* 在每一个Activity中的onCreate方法里添加该Activity到MyApplication对象实例容器中
Mapplication.getInstance().addActivity(this);
在需要结束所有Activity的时候调用exit方法
Mapplication.getInstance().exit();

有人反映,如果程序崩溃,可能会导致该类的被迫关闭并重建,使得前期放入的Activity无法正常关闭。
*
* */
public class Mapplication extends Application {

private List<Activity> activityList = new LinkedList<Activity>();
private static Mapplication instance;

private Mapplication() {
}

// 单例模式中获取唯一的MyApplication实例
public static Mapplication getInstance() {
if (null == instance) {
instance = new Mapplication();
}
return instance;
}

// 添加Activity到容器中
public void addActivity(Activity activity) {
activityList.add(activity);
}

// 遍历所有Activity并finish
public void exit() {
for (Activity activity : activityList) {
activity.finish();
}
System.exit(0);
}
}
分享到:
评论
2 楼 limingcai 2012-04-13  
这能有什么风险?
1 楼 malong26 2012-03-23  
一直持有这些activity的引用,是否存在风险?

相关推荐

    android 完美退出程序

    ### Android完美退出程序详解 #### 一、引言 在Android开发过程中,有时我们需要实现一个“一键退出”功能,即用户点击某个按钮后能够迅速且干净地关闭整个应用程序。这不仅可以提升用户体验,还能确保程序资源...

    Android完美退出程序

    通过上述方法,我们可以有效地实现Android应用程序的完美退出。这种方式不仅能够确保所有的`Activity`都被正确关闭,还能根据不同的需求选择合适的退出策略。此外,通过使用单例模式来管理全局状态,使得整个实现...

    Android程序的退出终于完美解决

    这个管理器能够追踪应用中所有的Activity实例,当需要退出时,可以遍历这些Activity并逐一调用它们的`finish()`方法,确保所有Activity都被正确地关闭。 在提供的代码示例中,`MyApplication`类正是这样一个...

    android完美退出app的实例代码.pdf

    在描述的实例代码中,开发者采用了一种常见的方式来实现完美退出App。主要思路是维护一个全局的Activity列表,将所有的Activity实例保存在这个列表中。具体步骤如下: 1. 创建一个自定义的`Application`类,例如`...

    怎样完全退出android程序

    这是因为调用finish()、System.exit(0)、android.os.Process.killProcess(android.os.Process.myPid())只能杀死当前的activity,并不能杀死所有的activity,为了完美达到此效果,接下来通过一个案例实现

    ANDROID 完美退出APP的实例代码

    要实现完美退出,我们需要确保所有Activity以及应用相关的资源都被正确释放。一个常见的方法是使用一个全局的Activity列表来跟踪当前存在的Activity。下面是一个使用自定义Application类实现的例子: 1. 创建一个名...

    完美退出App的解决方案

    本文将深入探讨两种实现“完美退出”App的策略:发送广播退出和切入后台finish掉App。 1. 发送广播退出: 这种方法基于Android的Intent广播机制。首先,创建一个自定义广播接收器,当接收到特定广播时,它会执行...

    Android程序退出完美解决方案兼容所有SDK

    本文将深入探讨一种适用于所有SDK版本的Android程序退出的完美解决方案。 首先,我们要理解Android应用的生命周期。在Android系统中,一个应用程序是由多个Activity组成的,每个Activity都代表一个用户界面。当用户...

    Android-sigin:完美退出注册流程

    本项目"Android-sigin"专注于实现一个完美的退出和注册流程,利用了Intent的标志、广播接收器以及Application类来优化这一过程。下面将详细探讨这些技术在Android中的运用。 1. **Intent的Flag**: Intent在...

    Android 双击Back键退出应用的实现方法

    此外,这种实现方式并不完美,因为它依赖于定时器,可能会在某些情况下导致用户体验不佳,例如,如果用户在2秒内点击了其他控件或者离开了当前Activity。因此,实际开发中,你可能需要根据应用的具体需求进行调整和...

    android 闪屏 欢迎界面 隐藏底部虚拟按钮全屏 适配方案

    - Android系统提供了多种方法实现全屏显示,如在`AndroidManifest.xml`中设置Activity的主题为`Theme.NoActionBar`,移除顶部状态栏。 - 使用`WindowManager.LayoutParams.FLAG_FULLSCREEN`属性来隐藏顶部状态栏,...

    黑马程序员 安卓学院 万元哥项目经理 分享220个代码实例

    |--应用之完美退出 |--应用之获取名称和图标 |--应用之获得占用内存大小 |--应用之通过包名开启一个应用 |--应用之隐式意图开启设置界面 |--应用启动之检查版本更新及初始化 |--延时任务的工具类 |--异常之...

    GoogleIO2013 Android快速联网框架Volley

    Volley能够与Activity的生命周期联动,当Activity结束时自动取消所有未完成的网络请求,从而避免内存泄漏和其他潜在问题。 Volley的调试和跟踪工具也是其亮点之一。Volley允许开发者轻松地在Logcat中查看网络请求的...

    Fragment动画+上下拉刷新完美Demo

    在Android开发中,Fragment是应用界面构建的重要组成部分,它允许我们动态地添加、删除或替换Activity中的用户界面部分。Fragment动画则是对Fragment进行过渡效果的一种方法,可以为用户带来更流畅、更丰富的交互...

    Android 中 Fragment 嵌套 Fragment使用存在的bug附完美解决方案

    这个异常通常发生在退出并重新进入Fragment时,因为内部引用的Activity对象变为null。问题的核心在于,当Fragment被分离(detached)时,其自身的状态会被重置,但`ChildFragmentManager`的状态并未同步更新,导致后续...

    工程硕士学位论文 基于Android+HTML5的移动Web项目高效开发探究

    1.3.2跨域交互即缓存处理方法 7 1.3.3页面自适应机制,即设备自适应与浏览器自适应机制 8 1.3.4 “认我测”质检服务平台的设计和实现 8 1.4 本文的结构安排 8 第二章 多窗口类浏览器设计 11 2.1 多窗口类浏览器需求...

    Android5.0新特性详解之全新的动画

    开发者可以自定义Activity进入和退出的动画,以及共享元素转场,增强用户在不同界面间导航时的感知。 总之,Android 5.0的这些新特性让开发者能够创造出更丰富、更具有交互性的UI,从而提升应用的整体质量和用户...

    完美解决客户端webview持有的页面缓存,不会立即释放的问题

    2. **遵循生命周期**:在Android的`Activity`的`finish()`方法或iOS的视图控制器的适当生命周期方法(如`deinit`)中执行清理操作。 3. **资源释放**:除了清空页面,还需要确保取消订阅所有可能存在的观察者、...

Global site tag (gtag.js) - Google Analytics