博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
应用程序完全退出
阅读量:6867 次
发布时间:2019-06-26

本文共 1243 字,大约阅读时间需要 4 分钟。

前言

  在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
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,那么只能通过其他方式变相实现此功能,上述是实现这个功能的一种方式,但不是唯一方式。

原文地址:

转载于:https://www.cnblogs.com/luoaz/p/3936199.html

你可能感兴趣的文章
redhat6.1安装oracle11g(新手,搞了7天)
查看>>
PHP与MySQL通讯那点事
查看>>
Java文件编码示例
查看>>
CactiFans V1.0中文版发布
查看>>
HTML如何显示小于号“<”等特殊符号?
查看>>
别伤了虚拟桌面管理员的"心"
查看>>
Windows系统使用IntelliJ IDEA 搭建Hadoop的开发调试环境(一)
查看>>
yum安装lamp
查看>>
Web.Config文件中数据库连接配置
查看>>
[Unity 3D] Unity 3D 性能优化 (一)
查看>>
spring Quartz定时任务调度 时间设置
查看>>
SymmetricDS: 数据库数据同步Database synchronization
查看>>
seoer的道路在哪里
查看>>
Disabling OOM killer on Ubuntu 14.04
查看>>
VBS备份脚本
查看>>
CentOS 6.5 自动安装镜像
查看>>
Storm与Spark Streaming比较
查看>>
我的友情链接
查看>>
eclipse js validation
查看>>
HTTP 断点续传
查看>>