为什么它会两次杀死应用程序?

时间:2014-03-03 12:13:49

标签: android process kill

我设置了一个服务,通过使用以下方式检查特定进程是否在时间间隔内运行:

appsList = am.getRunningAppProcesses();

我保存了它的名字和id:

s = pross.processName;
i=pross.pid;

我使用以下命令启动默认启动器:

Intent intent = null;
        final PackageManager pManager = context.getPackageManager();
        for (final ResolveInfo resolveInfo:pManager.queryIntentActivities(new Intent(Intent.ACTION_MAIN).addCategory(Intent.CATEGORY_HOME),pManager.MATCH_DEFAULT_ONLY ))
        {
            if(!context.getPackageName().equals(resolveInfo.activityInfo.packageName))
            {
                intent = new Intent(Intent.ACTION_MAIN).addCategory(Intent.CATEGORY_HOME).setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
                intent.setClassName(resolveInfo.activityInfo.packageName, resolveInfo.activityInfo.name);
                break;
            }
        }
        context.startActivity(intent);

用以下方法杀死进程:

mActivityManager.killBackgroundProcesses(s);

一切正常但问题是它整个调用启动器并关闭进程两次。 这就像进程在服务第二次检查其运行时是否仍在运行。

任何想法如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

我认为我们无法杀死任何其他进程。没有root访问权限,系统不允许这样做。