我想知道,是否可以从我的应用程序中完成或关闭正在运行的应用程序?如果是,那怎么办?
我对此进行了谷歌搜索,但没有找到任何解决方案。我尝试使用killBackgroundProcesses
,但它也对我不起作用。我期望像任务管理器这样的功能正在做的事情。请给我一些建议。提前致谢。
我想知道,是否可以从我的应用程序中完成或关闭正在运行的应用程序?如果是,那怎么办?
我对此进行了谷歌搜索,但没有找到任何解决方案。我尝试使用killBackgroundProcesses
,但它也对我不起作用。我期望像任务管理器这样的功能正在做的事情。请给我一些建议。提前致谢。
除了 Android OS 本身,没有人可以杀死进程。
android 市场中的大多数任务杀手不会杀死应用程序,他们只是重新启动进程
通过使用
public void restartPackage (String packageName) 当你的activity调用这个方法时操作系统立即调用
savedInstanceState 并保存您要终止的活动的状态。现在这个过程是
从内存中删除,操作系统保存了它的状态。现在当用户下次启动该活动时
将从它被杀死或换句话说重新启动的地方开始。您可以从任何
任务管理器,他们不会杀死进程,因为没有人可以这样做。这种方法也
在 ICS 工作。
对于上述方法,您可以在这里查看。据我所知 killBackgroundProcesses (String packageName) 适用于 API 8 及更高版本。
首先,您需要一个进程的pid。您可以像以下代码一样获取包名称:
ActivityManager am = (ActivityManager)context.getSystemService(Context.ACTIVITY_SERVICE);
List<ActivityManager.RunningAppProcessInfo> pids = am.getRunningAppProcesses();
int processid = 0;
for(int i = 0; i < pids.size(); i++)
{
ActivityManager.RunningAppProcessInfo info = pids.get(i);
if(info.processName.equalsIgnoreCase("here your package name")){
processid = info.pid;
}
}
然后您可以使用killProcess函数终止具有指定 pid 的进程。