有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java无法终止正在运行的应用程序

我试图用以下代码杀死正在运行的应用程序,但它不起作用,请给出任何建议。 使用restartPackage()KillingBackgroundProcess()安卓.os.processes.killprocess(pid)但没有任何效果。是不是安卓不支持它,或者安卓内核没有给我们那么多的权限来杀死其他应用程序

Intent ints = new Intent(Intent.ACTION_MAIN, null);
ints.addCategory(Intent.CATEGORY_LAUNCHER);

checkedapp = name.get(position);

Log.w("Checked app name", checkedapp);

PackageManager pm = getApplicationContext().getPackageManager();

List<ResolveInfo> intentlist = pm.queryIntentActivities(ints,
                        PackageManager.PERMISSION_GRANTED);

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

List<RunningTaskInfo> processes = am1.getRunningTasks(Integer.MAX_VALUE);

if (processes != null) 
{
  for (int i = 0; i < processes.size(); i++) 
  {
    String packageName = processes.get(i).topActivity.getPackageName();

    Log.w("packagename", packageName);
    RunningTaskInfo temp = processes.get(i);

    try 
    {
      pName = (String) pm.getApplicationLabel(pm.getApplicationInfo(packageName,
                                        PackageManager.GET_META_DATA));
    } 
     catch (NameNotFoundException e) 
    {
      // TODO Auto-generated catch block
       e.printStackTrace();
    }

    if (checkedapp.equals(pName)) 
    {

      am1.killBackgroundProcesses(packageName);

      //String pid = Integer.toString(temp.id);

        int pid=temp.id;

    安卓.os.Process.killProcess(pid);    

//Log.w("processid", pid);

icons.remove(position);
name.remove(position);

} 

Is it really not possible to force stop any running application in 安卓 programmatically.
Please help.

共 (0) 个答案