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启动一个进程(如果它还不存在的话),然后转身杀死它?不管怎样,没有人能真正帮助你,因为你已经给出了两段独立的代码,而没有意识到连接它们的程序。