Android 为什么它会两次关闭应用程序?

Android 为什么它会两次关闭应用程序?,android,process,kill,Android,Process,Kill,我设置了一个服务,通过使用以下命令检查特定进程是否按时间间隔运行: appsList = am.getRunningAppProcesses(); 我将其名称和id保存为: s = pross.processName; i=pross.pid; 我使用以下命令启动默认启动器: Intent intent = null; final PackageManager pManager = context.getPackageManager(); for (final

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

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);
这一切都很好,但问题是,整个过程都是调用启动器并关闭进程两次。 这就像服务第二次检查流程是否正在运行时,流程仍在运行


你知道如何解决这个问题吗?

我认为我们不能扼杀任何其他进程。系统不允许在没有根访问权限的情况下执行此操作

你不应该一开始就这么做,因为这是一种与Android不一致的设计模式,在Android中,系统而不是第三方开发人员管理进程生命周期。我知道。但它对我的人生至关重要为什么它如此重要?为什么你认为你应该做一些事情,让Android启动一个进程(如果它还不存在的话),然后转身杀死它?不管怎样,没有人能真正帮助你,因为你已经给出了两段独立的代码,而没有意识到连接它们的程序。