关闭应用的方法:

1.System.exit(0);

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

ActivityManager am = (ActivityManager)getSystemService(Context.ACTIVITY_SERVICE);

3.am.killBackgroundProcesses("packagename");

4.am.restartPackage("packagename");

以上方法貌似只能退出本身应用。

强退其他应用:

利用shell 下面的的kill命令来杀掉进程从而达到退出应用的效果。kill  processid;  此命令需要root权限执行

直接上代码

1.ActivityManager am = (ActivityManager)getSystemService(Context.ACTIVITY_SERVICE);

List infos = am.getRunningAppProcesses();

for(RunningAppProcessInfo info : infos){

Log.i("---",info.processName);

if("com.test.br2".equals(info.processName)){

Log.i(TAG, info.processName+"---"+info.pid);

//Process.killProcess(info.pid);

killProcess(info.pid);

break;

}

}

2. killProcess1("packageName");

private void killProcess(int processId){

java.lang.Process process = null;

try {

process = Runtime.getRuntime().exec("su");

OutputStream os = process.getOutputStream();

os.write(("kill "+processId).getBytes());

os.flush();

os.close();

Thread.sleep(3000) //这里的sleep的目的让上面的kill命令执行完成

} catch (IOException ex) {

Log.e(TAG, "" + ex.getStackTrace());

}finally{

if(process!=null){

process.destroy();

process =null;

}

}

}

private void killProcess1(String packageName) {

Log.i(TAG, "killProcess");

java.lang.Process process = null;

try {

String processId = "";

process = Runtime.getRuntime().exec("su");

OutputStream os = process.getOutputStream();

os.write("ps \n".getBytes());

os.flush();

BufferedReader br = new BufferedReader(new InputStreamReader(process

.getInputStream()));

String inline;

while ((inline = br.readLine()) != null) {

if (inline.contains(packageName)) {

Log.i(TAG, "" + inline);

StringTokenizer processInfoTokenizer = new StringTokenizer(inline);

int count = 0;

while (processInfoTokenizer.hasMoreTokens()) {

count++;

processId = processInfoTokenizer.nextToken();

if (count == 2) {

break;

}

}

Log.i(TAG, "kill process : " + processId);

os.write(("kill " + processId).getBytes());

os.flush();

if(os!=null){

os.close();

os =null;

}

br.close();

return;

}

}

} catch (IOException ex) {

Log.e(TAG, "" + ex.getStackTrace());

}finally{

if(process!=null){

process.destroy();

process =null;

}

}

}

android 强制退出当前应用程序,android 强制退出应用相关推荐

  1. android开机默认打开指定程序,android 开机默认进入指定Launcher

    这里总结下我研究这个需求,想出的两种解决方案. 第一种方法最简单暴力只要修改apk的AndroidManifest直接上源码 这里就加了一句android:priority="2" ...

  2. android 自动打开第三方应用程序,Android如何做到应用程序图标隐藏,由第三方程序显示启动...

    Android如何做到应用程序图标隐藏,由第三方程序显示启动 发布时间:2020-07-13 03:25:02 来源:51CTO 阅读:11353 作者:ord1nary 在AndroidManife ...

  3. android检测是否跳出应用程序,android – 检测应用程序何时打开/恢复

    d60402 here提供的答案以及Hanno Binder使用 Application.registerActivityLifecycleCallbacks()注册活动回调的建议使我得到了这个解决方 ...

  4. Android虚拟机运行不了程序,Android程序在Android9.0手机或者虚拟机上运行不了的解决方法...

    1.在虚拟机上我使用的是Android5.0版本,当前manifests的application标签配置如下,正确运行没问题. android:allowBackup="true" ...

  5. android 切换语言重启应用程序,Android 切换系统语言后,重启App

    package com.barry.common.util; import android.app.Activity; import android.content.Intent; import an ...

  6. android打包apk不能安装程序,Android Studio 打包apk后应用未安装

    本文转载地址 http://blog.csdn.net/sinat_14849739/article/details/76383281 前言 Android 要求所有 APK 必须先使用证书进行数字签 ...

  7. android 启动浏览器下载应用程序,Android从浏览器中打开本地应用

    开发中遇到的一些问题特此记录: 1.应用场景一  在浏览器中要求直接打开到安装的应用中 需要在该应用的启动Activity 清单文件中进行配置 android:host="com.baidu ...

  8. android判断是否安装应用程序,android如何判断一个软件是否安装以及打开手机应用商店...

    private boolean isAppInstalled() { PackageInfo packageInfo; try { packageInfo = this.getPackageManag ...

  9. android 切换语言重启应用程序,Android 多语言切换无需重启APP的方式

    简述 当APP需要给提供多种语音供用户使用的时候,作为开发者的我们自然要涉及到多语言切换的开发,希望我提供的方式能给需要的小伙伴们一点思路,老规矩先上图. 效果如下,可能看起来会比较卡(不知道为啥黑屏 ...

最新文章

  1. PHP 3 HTML POST带参数请求 后端返回json格式的数据给前端
  2. hdu 2197 本原串
  3. mysql 半同步 插件_编写半同步复制插件
  4. 高精度轻量级实时语义分割网络:2K视频分割可达24.3GFLOPS和36.5FPS
  5. 一个屌丝程序员的青春(二一一)
  6. 专注要事、把手弄脏、高效优雅是对抗规模化焦虑的好办法--读Getting Real(达成现实)和 Rework(重塑工作)
  7. 当代科技哲学课后阅读材料摘录——朱清时谈佛法与科学
  8. 一枚芯片的赶考之路:究竟该如何看待“AI评测”?
  9. 优课在线 实境英语作业1Unit 1-5
  10. 计算机音乐数字乐谱梦中的婚礼,乐谱梦中的婚礼代码是什么-天谕手游梦中的婚礼歌曲最新乐谱代码分享 - QT软件园...
  11. 腾达路由器dns服务器未响应,荣耀猎人游戏路由怎么设置
  12. -1-0 Java 简介 java是什么 java简单介绍
  13. Image translation
  14. 沙特更新ICT和移动设备要求
  15. 小程序 获取微信、手机设备、账号等信息api
  16. 关键元器件选型设计指引--通用逻辑器件(逻辑IC)
  17. oracle11完全卸载
  18. CAD面积周长同步测量
  19. “error : unknown filesystem”的解决的方法
  20. 鸟哥私房菜(第四版-2015/4)

热门文章

  1. 济南服务器空间_济南虚拟主机
  2. html div浏览器居中显示,IE浏览器DIV居中实现方法
  3. 猜拳小游戏编程(python)
  4. 优麒麟配置java环境变量
  5. 2018年支付宝领取大红包破解教程
  6. 足够的需求,总归有蹒跚的第一步—“Holle,world!”
  7. 实战1-数据项目分析流程
  8. 科学家发现4起黑洞相撞事件,其中最大的一起或为“双重”碰撞...
  9. 含有中文的图片正常显示(微信小程序)
  10. 深度模型压缩技术在智能座舱方案的探索与实践