当前位置:首页 » 安卓系统 » android关闭进程

android关闭进程

发布时间: 2022-09-13 22:20:40

㈠ android 怎么把进程结束掉

1、自己结束自己 this.finish();

2、killProcess(int pid)
例子:android.os.Process.killProcess(android.os.Process.myPid());
对于这个方法,需要详细解释一下。在SDK的文档中,解释如下:
Kill the process with the given PID. Note that, though this API allows us to request to kill any process based on its PID, the kernel will still impose standard restrictions on which PIDs you are actually able to kill. Typically this means only the process running the caller's packages/application and any additional processes created by that app; packages sharing a common UID will also be able to kill each other's processes.
英语不好,不能准确翻译,所以希望大家自己理解,免得对大家造成误解。我个人对这句话的解释就是,这个方法使用是有条件的:
a、将被杀掉的进程 和 当前进程 处于同一个包或者应用程序中;
b、将被杀掉的进程 是由当前应用程序所创建的附加进程;
c、将被杀掉的进程 和 当前进程 共享了普通用户的UID。(这里的普通用户,是相对于Root权限的用户来说的)

3、System.exit(int code)
例子:System.exit(0);
该方法只能用于结束当前进程自身,个人觉得在程序遇到异常,无法正常执行时,可以通过这个方法强制退出。
需要注意的是,这两个方法,会导致进程非正常退出,就是说,进程退出时不会去执行onPause、onStop和onDestroy方法,那么进程很有可能错过了保存数据的机会。因此,这两个方法最好使用在出现异常的时候!

4、killBackgroundProcesses(String packageName)
要通过一个进程去结束另一个进程。在之前的SDK版本中,一直使用方法restartPackage(packageName)方法,但是在Android的开发文档中介绍说,这个函数会导致一些问题( the previous behavior here is no longer available to applications because it allows them to break other applications by removing their alarms, stopping their services, etc.),所以建议大家使用一个新的方法:
由于这个方法没有返回值,所以我们也不知道我们的目标进程是否真的退出了。但是,我目前只发现了这个可以结束另一个进程的方法。此方法需要权限:
<uses-permission android:name="android.permission.KILL_BACKGROUND_PROCESSES" />

5、利用反射调用forceStopPackage来结束进程

java代码
Method forceStopPackage = am.getClass().getDeclaredMethod("forceStopPackage", String.class);
forceStopPackage.setAccessible(true);
forceStopPackage.invoke(am, yourpkgname);

注意:
需要在manifest里加上shareid定义:android:sharedUserId="android.uid.system"
需要在manifest里加上权限:<uses-permission android:name="android.permission.FORCE_STOP_PACKAGES"></uses-permission>
需要采用系统platform签名,因为需要用FORCE_STOP_PACKAGES权限,该权限只赋予系统签名级程序,然后经编译环境重新编译,即可实现强制停止指定程序(本人亲自验证可行)

6、killall -HUP packageName || kill -9 pid

Java代码
String cmd="killall -HUP com.android.test";
try {
Process process = Runtime.getRuntime().exec(cmd);
BufferedReader in = new BufferedReader(new InputStreamReader(
process.getInputStream()));
String line = null;
while ((line = in.readLine()) != null) {
System.out.println("exec shell: == " + line);
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

此方法理论上可行,但是应该需要系统级或底层的协助

㈡ android开发怎么用代码结束进程

用一个公共boolean值做标记,需要结束的时候更改一下标记,如果线程处于阻塞,就调用interrupt()实现即时结束,如:

//定义一个公共boolean标记
booleanstop=false;

//线程的run方法
publicvoidrun(){
while(!stop){
try{
System.out.println("running");
Thread.sleep(5000);
}catch(InterruptedExceptione){
e.printStackTrace();
System.out.println("stop");
}
}
}

//如果要结束,在要结束线程的地方把stop的值改为true,
stop=true;

//因为是线程在阻塞,所以还要调用interrupt()抛出异常结束阻塞
myThread.interrupt();

㈢ lg手机 android设置向导 关闭

在设置里关闭即可。
具体是在设置,然后点击应用程序,在右上角,显示系统进程,最后关闭即可。
手机向导是对使用本手机的人进行基础使用教程。让你对各个图标功能有个了解,能初步使用。

安卓手机关闭后台应用方法 如何彻底退出后台应用

若使用的是vivo手机,可以从屏幕底部中间往上滑后停顿调出后台应用(部分机型需点击左键),按住软件图标上滑,即可关闭后台运行的应用。

㈤ android 怎么调用强制关闭

Android手机调用强制关闭的方法(以小米2手机为例,其他手机操作方法类似):

1、打开手机的设置界面;

热点内容
河南电脑服务器托管云主机 发布:2025-03-24 07:10:36 浏览:470
收件服务器应该是什么 发布:2025-03-24 06:52:37 浏览:873
小黄狗编程 发布:2025-03-24 06:43:02 浏览:639
华为手机手画密码如何设置 发布:2025-03-24 06:40:20 浏览:658
读java源码 发布:2025-03-24 06:29:06 浏览:35
欧皇源码 发布:2025-03-24 06:26:18 浏览:858
为什么id密码在异地登录 发布:2025-03-24 06:17:13 浏览:46
google地图连接服务器地址 发布:2025-03-24 06:12:43 浏览:359
安卓怎么样恢复手机删除的视频 发布:2025-03-24 06:07:03 浏览:133
格式化手机usb存储器 发布:2025-03-24 05:52:33 浏览:238