当我在网上找“android 如何完全退出应用程序时”十有八九都是 [java] android.os.Process.killProcess(android.os.Process.myPid()); 又或者是 [java] System.exit(0); 但这些未必对每一个应用程序都有效果。 当你的应用程序中有很多Activity ,有很多Service,有很多线程,你就不要指望能通过以上方法来完全关闭你的进程了,当然还有其他几种方法我没有试, 但是估计都不行。 原因就在于android应用程序的管理机制限制的,包括service在内都是关闭后会在后台自启动的。 废话不多说,解决办法有两步 1.看下AndroidManifest.xml里面注册的广播,如果应用程序被kill掉后接受到此类广播还是会restart的 2.在 [java] android.os.Process.killProcess(android.os.Process.myPid()); 后加入如下代码 [java] www.2cto.com ActivityManager activityMgr= (ActivityManager) getSystemService(ACTIVITY_SERVICE ); activityMgr.killBackgroundProcesses(getPackageName()); 同时AndroidManifest.xml里面加入权限 [ html ] <uses-permission android:name="android.permission.KILL_BACKGROUND_PROCESSES" />

更多相关文章

  1. Android应用程序的国际化与本地化
  2. Android应用程序访问远程数据库(mysql) is not allowed to conne
  3. Android(安卓)8.0 App 安装卸载流程
  4. Android应用程序访问硬件驱动(JNI方式)
  5. Android(安卓)广播事件机制
  6. android activity-alias
  7. Android操作蓝牙
  8. Android第一个应用程序helloworld项目详解
  9. AndroidStudio3.5.1下搭建FFmpeg环境

随机推荐

  1. Oracle kill session相关问题
  2. 第126天:Seaborn-可视化统计关系
  3. 《Oracle DBA工作笔记》第二章 常用工具
  4. 理论实践:循序渐进理解AWR细致入微分析性
  5. 【故障处理】 DBCA建库报错CRS-2566
  6. 【JS基础入门】JavaScript基础之事件的操
  7. 如何让百度收录我们自己的网站呢?
  8. vscode编辑器和插件安装及markdown语法熟
  9. SwiftUI - 百行代码变十行,Swift再创辉煌!
  10. Kubernetes 运维学习笔记