文档章节

退出整个应用程序

mutouzhang
 mutouzhang
发布于 2014/04/25 14:06
字数 281
阅读 292
收藏 4
点赞 0
评论 0

将下面SysApplication这个类复制到工程里面,然后在每个Acitivity的oncreate方法里面通过SysApplication.getInstance().addActivity(this); 添加当前Acitivity到ancivitylist里面去,最后在想退出的时候调用SysApplication.getInstance().exit();可直接关闭所有的Acitivity并退出应用程序。

package com.example.Emotional.util;

import java.util.LinkedList; 
import java.util.List; 
import android.app.Activity; 
import android.app.Application; 
 
/**
 * 
* 类名称:SysApplication   
* 类描述:   退出整个应用程序的类
* 创建时间:2014-4-25 下午1:58:00   
* 修改备注:   
* @version    
*
 */

public class SysApplication extends Application { 
	
    private List<Activity> mList = new LinkedList<Activity>(); 
    private static SysApplication instance; 
 
    private SysApplication() {} 
    public synchronized static SysApplication getInstance() { 
        if (null == instance) { 
            instance = new SysApplication(); 
        } 
        return instance; 
    } 
    // add Activity  
    public void addActivity(Activity activity) { 
        mList.add(activity); 
    } 
 
    public void exit() { 
        try { 
            for (Activity activity : mList) { 
                if (activity != null) 
                    activity.finish(); 
            } 
        } catch (Exception e) { 
            e.printStackTrace(); 
        } finally { 
            System.exit(0); 
        } 
    } 
    public void onLowMemory() { 
        super.onLowMemory();     
        System.gc(); 
    }  
}

在硬退出按钮点击时

//点击硬退出按钮
	public void clickQuitDialog() { 
		
	        AlertDialog.Builder builder = new Builder(FirstActivity.this); 
	        builder.setMessage("确定要退出吗?");
	        
//	        builder.setTitle("提示"); 
	        builder.setPositiveButton("确认",new android.content.DialogInterface.OnClickListener() { 
                    @Override 
                    public void onClick(DialogInterface dialog, int which) { 
                        dialog.dismiss(); 
//                        FirstActivity.this.finish(); 
//                        System.exit(0);
                        SysApplication.getInstance().exit();
                    } 
                }); 
	        builder.setNegativeButton("取消",new android.content.DialogInterface.OnClickListener() { 
                    @Override 
                    public void onClick(DialogInterface dialog, int which) { 
                        dialog.dismiss(); 
                    } 
                }); 
	        builder.create().show(); 
	    } 
	
	    @Override 
	public boolean onKeyDown(int keyCode, KeyEvent event) { 
	    	
	    	//event.getRepeatCount() == 0 防止重复点击
	        if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) { 
	        	clickQuitDialog(); 
	            return false; 
	        } 
	        return false; 
	    }


© 著作权归作者所有

共有 人打赏支持
mutouzhang
粉丝 6
博文 189
码字总数 91235
作品 0
洛阳
程序员
android 安全退出应用程序

正常关闭应用程序: 当应用不再使用时,通常需要关闭应用,可以使用以下三种方法关闭android应用: 第一种方法:首先获取当前进程的id,然后杀死该进程。 android.os.Process.killProcess(and...

长平狐 ⋅ 2012/09/03 ⋅ 0

Android入门:Activity四种启动模式

一、启动模式介绍   启动模式简单地说就是Activity启动时的策略,在AndroidManifest.xml中的标签的android:launchMode属性设置;   启动模式有4种,分别为standard、singleTop、singleT...

习惯_搬砖 ⋅ 2015/09/14 ⋅ 0

Android程序的隐藏与退出

Android的程序无需刻意的去退出, 当你一按下手机的back键的时候,系统会默认调用程序栈中最上层Activity的Destroy()方法来销毁当前Activity,当此 Activity又被其它Activity启动起来的时候,会...

鉴客 ⋅ 2011/11/22 ⋅ 0

关于APP退出,极光推送服务、以及其他三方服务的处理问题

最近在开发一个Android版的客户端,里面基本的业务功能都实现了,现在进入了最后一个阶段...调试阶段... 但是遇到了一个问题,就是APP退出... 因为APP需要推送功能,于是加入了极光推送(JPu...

FallenPanda ⋅ 2013/08/12 ⋅ 5

桌面应用框架--OneRing

OneRing是一个跨平台的桌面应用框架。和Adobe AIR类似,它支持用html/js/css制作用户界面,与之不同的是,它的应用为本地程序,可以直接访问操作系统的数据。 运行流程: 应用启动时,会加载...

匿名 ⋅ 2010/09/25 ⋅ 0

Windows Phone 7 - 如何退出程序

在WPF程序中,你可以调用“App.Exit()”,你的程序就终止了。但是在 WP7 上面就没那么简单了,因为没有 Exit() 方法。 如果你抛出一个未被处理的异常,你的程序将被终止 但是这个技术将不能通...

虫虫 ⋅ 2011/12/30 ⋅ 2

DllMain和多线程死锁

估计很多人都知道装载DLL过程中的多线程死锁是因为DllMain的顺序调用规则,但是很少人了解卸载DLL过程中的多线程死锁也是由于同样的原因。例如,如果一个DLL的DllMain的代码写成下面的形式,...

狂斩一条龙 ⋅ 2012/06/12 ⋅ 0

linux 设备驱动程序开发 第3版_Chapter2_Kernel Modules Vers...

在我们进行下一步工作之前,应该明白普通应用程序和内核模块程序之间的不同。 对于小中型的应用程序来说,处理任务是按照代码从头到尾顺序执行的。内核模块程序的处理与它不同,各个模块首先...

蛋清蛋黄 ⋅ 2013/09/19 ⋅ 1

linux下C程序:运行单个实例

对于很多服务来说,在同一个服务器上只能运行一个实例,那么通过什么方法来保证程序同一时刻只有一个实例运行呢?通过编写shell脚本来管理程序的启动、停止是个不错的方法。在启动时,shell...

独钓渔 ⋅ 02/13 ⋅ 0

android finish()和onkeyDown奇怪的地方

这两个疑问都是我在写onKeyDown事遇见的,想要实现连续按两次退出应用并stop service。 1、关于finish(); finish是Activity的类,仅仅针对Activity,当调用finish()时,只是将活动推向后台,...

skywxx ⋅ 2013/11/07 ⋅ 1

没有更多内容

加载失败,请刷新页面

加载更多

下一页

180621-一个简单的时间窗口设计与实现

如何设计一个计数的时间窗口 时间窗口,通常对于一些实时信息展示中用得比较多,比如维持一个五分钟的交易明细时间窗口,就需要记录当前时间,到五分钟之前的所有交易明细,而五分钟之前的数...

小灰灰Blog ⋅ 20分钟前 ⋅ 0

Android之Dalvik、ART、JIT、AOT

Android之Dalvik、ART、JIT、AOT 本文内容:Dalvik、ART、JIT、AOT之间关系 本文定位:知识记录 学习过程记录,加深理解,提升文字组合表达能力。也希望能给学习的同学一些灵感 本文整理于[...

lichuangnk ⋅ 24分钟前 ⋅ 0

Thrift RPC实战(五) thrift连接池

Thrift本身没有提供连接池,我们可以用Apache Commons Pool2来实现一个 一、定义对象工厂 BasePooledObjectFactory<T> extends BaseObject implements PooledObjectFactory<T> public class......

lemonLove ⋅ 24分钟前 ⋅ 0

git 命令简写

简写 命令 g git gst git status gd git diff gdc git diff --cached gdv git diff -w "$@" | view - gl git pull gup git pull --rebase gp git push gc git commit -v gc! git commit -v ......

charley158 ⋅ 32分钟前 ⋅ 0

Java中的锁使用与实现

1.Lock接口 锁是用来控制多个线程访问共享资源的方式,一般来说,一个锁能够防止多个线程同时访问共享资源。 在Lock出现之前,java程序是靠synchronized关键字实现锁功能的,而Java SE5之后,...

ZH-JSON ⋅ 33分钟前 ⋅ 0

Intellij IDEA神器常用技巧四-类和方法注释模板设置

IDEA自带的注释模板不是太好用,我本人到网上搜集了很多资料系统的整理了一下制作了一份比较完整的模板来分享给大家,我不是专业玩博客的,写这篇文章只是为了让大家省事。 这里设置的注释模...

Mkeeper ⋅ 36分钟前 ⋅ 0

Jira接入钉钉机器人

https://open-doc.dingtalk.com/docs/doc.htm?spm=a219a.7629140.0.0.9Z9czj&treeId=257&articleId=106075&docType=1...

谢思华 ⋅ 38分钟前 ⋅ 0

微信公众号开发

一、开通微信服务号,填写URL,微信将想你发送验证信息。接收并处理微信发来的GET请求 二、处理客户向公众号发送的各种消息: 如文本、图片、乐音、视频、音乐 : 消息分为:1 请求消息(文本...

无敌小学僧 ⋅ 44分钟前 ⋅ 0

广州三本找Java实习经历

前言 只有光头才能变强 这阵子跑去面试Java实习生啦~~~我来简单介绍一下背景吧。 广州三本大三在读,在广州找实习。大学开始接触编程,一个非常平庸的人。 在学习编程时,跟我类似的人应该会...

Java3y ⋅ 46分钟前 ⋅ 0

php json_encode()不转义中文字符 和 斜杠"/"

php格式化json的函数 json_encode($value,$options) 其中有2个比较常用到的参数 JSON_UNESCAPED_UNICODE (中文不转为unicode ,对应的数字 256) JSON_UNESCAPED_SLASHES (不转义斜杠,对应的...

一只大橘子 ⋅ 50分钟前 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部