android退出app的方法,Android 实现彻底退出自己APP 并杀掉所有相关的进程[通俗易懂]

android退出app的方法,Android 实现彻底退出自己APP 并杀掉所有相关的进程[通俗易懂]彻底杀掉App相关进程的代码publicvoidkillAppProcess(){//注意:不能先杀掉主进程,否则逻辑代码无法继续执行,需先杀掉相关进程最后杀掉主进程ActivityManagermActivityManager=(ActivityManager)CurrentActivity.this.getSystemService(Context.ACTIVITY_SERVIC…

大家好,又见面了,我是你们的朋友全栈君。

彻底杀掉 App 相关进程的代码

public void killAppProcess()

{

//注意:不能先杀掉主进程,否则逻辑代码无法继续执行,需先杀掉相关进程最后杀掉主进程

ActivityManager mActivityManager = (ActivityManager)CurrentActivity.this.getSystemService(Context.ACTIVITY_SERVICE);

List mList = mActivityManager.getRunningAppProcesses();

for (ActivityManager.RunningAppProcessInfo runningAppProcessInfo : mList)

{

if (runningAppProcessInfo.pid != android.os.Process.myPid())

{

android.os.Process.killProcess(runningAppProcessInfo.pid);

}

}

android.os.Process.killProcess(android.os.Process.myPid());

System.exit(0);

}

需要注意的坑

1. KillProcess()

android.os.Process.killProcess(android.os.Process.myPid())

可以杀死当前应用活动的进程,这一操作将会把所有该进程内的资源(包括线程全部清理掉)。当然,由于 ActivityManager 时刻监听着进程,一旦发现进程被非正常 Kill,它将会试图去重启这个进程。

这就是为什么,有时候当我们试图这样去结束掉应用时,发现 app 会自动重新启动的原因.

2. System.exit()

System.exit() 是 Java 中结束进程的方法,调用它将关闭当前的 JVM 虚拟机。

//表示是正常退出;

System.exit(0);

//表示是非正常退出,通常这种退出方式应该放在catch块中

System.exit(1);

3. App crash 后重启

上面链接中的文章写得很好很全面,参考即可

以上这篇Android 实现彻底退出自己APP 并杀掉所有相关的进程就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/160774.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • win10的pagefile.sys是什么文件?pagefile.sys文件太大如何移动到D盘中?

    win10的pagefile.sys是什么文件?pagefile.sys文件太大如何移动到D盘中?    在C盘系统下,有一个命名为pagefile.sys的文件占用C盘太大的空间,不少用户怕删除pagefile.sys文件之后会对系统造成影响,而不少用户想要将pagefile.sys文件移动到D盘中。那么pagefile.sys是什么文件?Win10系统下pagefile.sys文件太大如何移动到D盘中?pagefile.sys是什么文件?pagefile.sys文件是操作系…

    2022年7月25日
    35
  • 字符串矩阵 matlab(matlab 字符串矩阵)

    这里字符串矩阵(或者有更标准的名称?)是指一个矩阵中的每个元素为changdua

    2022年4月16日
    59
  • python中md5加密的实现

    python中md5加密的实现python中md5加密的实现MD5消息摘要算法:(英语:MD5Message-DigestAlgorithm),一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hashvalue),用于确保信息传输完整一致。MD5是最常见的摘要算法,速度很快,生成结果是固定的128bit字节,通常用一个32位的16进制字符串表示。Python的hashlib提供了常见的摘要算法,如MD5,SHA1等等。摘要算法又称哈希算法、散列算法。它通过一个函数,把任意长度的数据转换为一个

    2022年7月11日
    14
  • python中的chr和ord函数_python chr/ord函数区别和使用

    python中的chr和ord函数_python chr/ord函数区别和使用原博文 2020 03 1610 04 python 中内置函数 chr 和内置函数 ord 可以配对使用 chr 函数将 ascll 码转为字符 ord 函数将字符转为 ascll 码 一 chr 函数将 ascll 码转为字符 chr 65 gt 相关推荐 2019 12 2308 11 day3 复习 foriinrange 10 ifi 3 break

    2025年9月5日
    3
  • Flash与页面交互的钥匙之 AllowScriptAccess

    Flash与页面交互的钥匙之 AllowScriptAccess原文:http://cloud21.iteye.com/blog/729676今天为一个flash的问题搞了半天,flash在页面中点不开js的提示框,如果单是这一个问题,那我立刻就能确定问题所在,一

    2022年7月2日
    24
  • plsqldev连接远程oracle[通俗易懂]

    plsqldev连接远程oracle[通俗易懂]本地电脑安装了oracle客户端的情况Tns配置方法:1.找到oracle安装目录下的tnsnames.ora文件F:\app\Administrator\product\11.2.0\dbhome_1\NETWORK\ADMIN找到tnsnames.ora文件,用记事本打开tnsnames.ora文件添加本地实例名=(DESCRIPTION=(ADDRESS

    2022年5月29日
    47

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号