`

Android程序完全退出的三种方法[转帖]

 
阅读更多
很多网友可能发现自己的Android程序有很多Activity,比如说主窗口A,调用了子窗口B,在B中如何关闭整个Android应用程序呢? 这里Android123给大家三种比较简单的方法实现。
  首先要说明在B中直接使用finish(),接下来手机显示的还是主窗口A,所以一起来看看Android开发网是如何实现的吧.

  1. Dalvik VM的本地方法

Java代码
android.os.Process.killProcess(android.os.Process.myPid())    //获取PID  

android.os.Process.killProcess(android.os.Process.myPid())    //获取PID
,目前获取自己的也只有该API,否则从/proc中自己的枚举其他进程吧,不过要说明的是,结束其他进程不一定有权限,不然就乱套了。

Java代码
System.exit(0);   //常规java、c#的标准退出法,返回值为0代表正常退出  

System.exit(0);   //常规java、c#的标准退出法,返回值为0代表正常退出


2. 任务管理器方法

   首先要说明该方法运行在Android 1.5 API Level为3以上才可以,同时需要权限android.permission.RESTART_PACKAGES,我们直接结束自己的package即 可,直接使用ActivityManager类的restartPackage方法即可,参数为package name,该类通过getSystemService(Context.ACTIVITY_SERVICE)来实例化ActivityManager对 象,这种方法系统提供的,但需要显示声明权限,所以使用中需要综合考虑。

3. 根据Activity的声明周期

   我们知道Android的窗口类提供了历史栈,我们可以通过stack的原理来巧妙的实现,这里我们在A窗口打开B窗口时在Intent中直接加入标志 Intent.FLAG_ACTIVITY_CLEAR_TOP,这样开启B时将会清除该进程空间的所有Activity。

在A窗口中使用下面的代码调用B窗口

Java代码
Intent intent = new Intent();  
intent.setClass(Android123.this, CWJ.class);  
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);  //注意本行的FLAG设置  
startActivity(intent);  

转自http://tonyyu.javaeye.com/blog/689683

分享到:
评论

相关推荐

    [转帖]世界编程大赛第一名写的程序

    标题和描述中的“世界编程大赛第一名写的程序”这一知识点,实际上指向了计算机科学与编程竞赛领域的一个重要概念:即在高水平的编程比赛中,优胜者所编写的代码往往蕴含着高级算法、数据结构以及编程技巧。...

    论坛转帖工具.rar

    标题中的“论坛转帖工具.rar”表明这是一个用于在论坛之间转移帖子的软件工具,通常用于帮助用户方便地将一个论坛的帖子内容复制到另一个论坛,可能是为了分享信息、讨论或保存重要的帖子。这类工具可能包括自动抓取...

    贴吧转帖工具

    【贴吧转帖工具】是一种专为百度贴吧用户设计的便捷工具,主要用于提高用户在贴吧中的互动效率。通过这款工具,用户可以实现一键转帖和一键8经验签到的功能,极大地简化了传统操作流程,节省了用户的时间,提升了...

    转帖:Android应用的自动升级、更新模块的实现docx.docx

    在Android应用开发中,自动升级和更新功能是一个重要的特性,它允许用户无缝地获取应用的最新版本,提高用户体验。本文将详细介绍如何实现这样一个模块。 **一、基础概念** 1. **版本标识**: 在AndroidManifest.xml...

    (转帖)4x4x4立体led显示程序

    3. **数据结构**:在程序中,为了管理LED的状态,可能会使用二维或三维数组来表示立方体的每个位置。每个元素代表一个LED的状态,可以是亮或灭。 4. **定时器和中断**:为了实现动态显示,程序需要精确控制LED的...

    UBB论坛转帖圣手.exe

    UBB论坛转帖圣手.exeUBB论坛转帖圣手.exe

    android 编译

    这篇博客文章《(转帖)(关于Android ROM)翻译一个源代码编译G1ROM的教程,很好很入门 - 综合讨论区 - 魅族社区》似乎提供了一个适合初学者的指南,帮助他们逐步了解和掌握Android ROM的编译过程。 Android源码编译...

    转帖PLCDCSFCS三大控制系统的特点和差异.doc

    转帖PLCDCSFCS三大控制系统的特点和差异 PLC、DCS、FCS 三大控制系统是自动化技术中的热点,各有其特点和差异。下面对这三大控制系统的特点和差异进行分析。 1.PLC(Programmable Logic Controller) PLC 是一种...

    转帖struts2+Spring+hibernate做的程序Demo

    bookAdmin.rar是一个人做的图书的增删改差(带分页)的程序。

    1分钟内抓到WPA握手包的方法!转帖的!!!

    WPA 握手包捕获方法 在WiFi网络安全测试中,捕获 WPA 握手包是一个非常重要的步骤。下面将详细介绍如何在 1 分钟内捕获 WPA 握手包的方法。 一、操作环境 在 Ubuntu 操作系统中,使用 aircrack-ng 工具包和 TP-...

    编辑人员转帖去水印工具

    本篇文章将详细探讨“编辑人员转帖去水印工具”,并介绍如何使用名为Teorex Inpaint的1.0.0.2版本的软件来实现这一目标。 首先,我们要理解什么是水印。水印通常是指在图像或视频中添加的半透明标记,它可以是文字...

    [转帖]通过WebView获取访问网页的源代码

    在Android应用开发中,WebView是一个非常重要的组件,它允许我们在应用程序内部加载和显示网页内容。有时,我们可能需要获取用户通过WebView浏览的网页源代码,以便进行进一步的数据分析或者实现特定功能。这篇博客...

    一键转帖功能插件 for 帝国CMS v1.0.rar

    总结一下,"一键转帖功能插件 for 帝国CMS v1.0" 提供了一种便捷的方式来增强帝国CMS站点的社交分享功能,通过简单的安装和配置,用户可以轻松地在多个平台上转发内容,有助于增加网站的曝光度和用户的参与度。...

    discuz X2转帖工具、采集工具

    3. 数据分析:通过批量发布和转帖,可以进行用户行为分析,了解哪种类型的内容更受论坛用户欢迎。 综上所述,“Discuz! X2转帖工具、采集工具”是提升Discuz! X2论坛运营效率的有效辅助手段,但使用时需谨慎,确保...

    轻松转帖之突破网页复制限制宣贯.pdf

    UBB转帖王是一种插件,它能够帮助用户快速去除复制下来的网页内容中的无用空格、文字干扰码、水印和空行等,优化复制内容,便于分享和阅读。 【其他浏览器解决方案】 除了火狐,其他浏览器如搜狗、遨游和世界之窗也...

    【转帖】Flex 开发入门

    Flex 是一种用于构建富互联网应用程序(RIA, Rich Internet Applications)的开源框架,由Adobe公司开发,主要用于构建用户界面。它基于ActionScript编程语言和MXML标记语言,提供了一种高效、跨平台的方式来创建...

    转帖工具插件 for PHPwind 7.5 正式版.rar

    7. **安全与性能**:在使用任何第三方插件时,都应注意其可能带来的安全风险。虽然这个插件声称无需修改核心文件,但用户仍需关注插件的安全性,避免引入潜在的漏洞。 8. **故障排查**:如果在使用过程中遇到问题,...

    一键转帖功能插件 for 帝国CMS 6.0 GBK utf8 V1.0.rar

    《一键转帖功能插件 for 帝国CMS 6.0 GBK utf8 V1.0》 本文将深入探讨“一键转帖功能插件”在帝国CMS 6.0系统中的应用与实现,该插件适用于GBK及UTF-8编码环境,旨在提升网站内容的分享与传播效率。我们将从安装...

    Html2UBBMaxcj_Softii论坛专用转帖工具

    UBB(Universal BBCode)是一种轻量级的标记语言,常用于网络论坛,与HTML类似,但更加简单,易于论坛系统解析和显示。 1. **HTML与UBB的区别**: HTML(HyperText Markup Language)是网页制作的标准语言,包含了...

    转帖经典---JAVA设计模式

    4. 迭代器模式(Iterator):提供一种方法顺序访问聚合对象的元素,而又不暴露其底层表示。 5. 中介者模式(Mediator):定义一个中介对象来简化原本复杂的对象间交互。 6. 备忘录模式(Memento):在不破坏封装的...

Global site tag (gtag.js) - Google Analytics