zoukankan      html  css  js  c++  java
  • 应用程序完全退出

    前言

      在Android应用程序的完全退出有点麻烦,系统没有提供完全退出的api。

    退出单Activity程序

      Android系统中提供了以下的方式来退出单Activity的应用程序,如下所示

      

    Process.killProcess(Process.myPid());  
    System.exit(0);

    退出多Activity程序

      上一小节提到了退出单个Activity的方式,然而实际开发中很少有单个Activity的应用程序,而多个Activity的应用程序完全退出又不能直接退出,下面的方式通过记录各个打开的Activity,然后分别将各个Activity finish掉,这样就间接的实现了完全退出的功能。具体代码如下

      

    package com.luoaz.founsys.util;
    
    import android.app.Activity;
    import java.util.LinkedList; 
    import java.util.List; 
    
    public class SysApplication extends Activity {
    	//用来记录打开的Activity
    	private List<Activity> mList = new LinkedList(); 
    	private static SysApplication instance; 
    
    	private SysApplication() {   
    	}
    	//单例
    	public synchronized static SysApplication getInstance() { 
    		if (null == instance) { 
    			instance = new SysApplication(); 
    		} 
    		return instance; 
    	} 
    	// 增加 Activity  
    	public void addActivity(Activity activity) { 
    		mList.add(activity); 
    	} 
    
    	/**
    	 * 退出所有在记录中的Activity
    	 * */
    	public void exit() { 
    		try { 
    			for (Activity activity : mList) { 
    				if (activity != null) 
    					activity.finish(); 
    			} 
    		} catch (Exception e) { 
    			e.printStackTrace(); 
    		} finally { 
    			System.exit(0); 
    		} 
    	} 
    }
    

    后记

      由于Android没有提供直接退出应用程序的api,那么只能通过其他方式变相实现此功能,上述是实现这个功能的一种方式,但不是唯一方式。

    原文地址:http://www.cnblogs.com/luoaz/p/3936199.html

  • 相关阅读:
    mysql基础知识
    spring-jdbcTemplet 连接数据源(基础)
    mybatis-----的延迟加载-----缓存(一级缓存和二级缓存)
    第一次使用 idea,mybatis 获取 数据库 中的 数据 2017-9-14
    初识过滤器
    使用 Commens-FileUpload 组件实现文件上传
    简单 servlet 的使用
    QQ数据库管理-----mysql
    mysql 的使用
    json 解析
  • 原文地址:https://www.cnblogs.com/luoaz/p/3936199.html
Copyright © 2011-2022 走看看