【问题标题】:Android How to get current running application process then kill itAndroid 如何获取当前正在运行的应用程序进程然后杀死它
【发布时间】:2015-10-21 03:29:38
【问题描述】:

如何获取正在运行的应用程序的进程列表,当我按下(主页)按钮时,我可以看到其他应用程序没有关闭但正在运行,我如何通过程序包名称以编程方式关闭应用程序。

如果找到包名,则将其杀死。

List<ApplicationInfo> packages;
            PackageManager pm;
            pm = getPackageManager();
            //get a list of installed apps.
            packages = pm.getInstalledApplications(0);
            Log.i("Not Found",packages.toString());

            ActivityManager am = (ActivityManager) getSystemService(Activity.ACTIVITY_SERVICE);
            for (ApplicationInfo packageInfo : packages) {
                //if((packageInfo.flags & ApplicationInfo.FLAG_SYSTEM)==1)continue;
                if(packageInfo.packageName.equals("com.chartcross.gpstestplus")) continue;
                am.killBackgroundProcesses(packageInfo.packageName);
            }

【问题讨论】:

    标签: android


    【解决方案1】:

    答案如下:

    http://www.coderanch.com/t/534101/Android/Mobile/current-foreground-activity-service

    您可以使用getRunningTasks(int)。但是自从 Lollipop 之后它就不起作用了,因为它是一个漏洞并且现在已经关闭了

    【讨论】:

    • 大声笑为什么是负面的?有时我只是不明白为什么人们在需要帮助时会这样做,他们是否忘记了他们需要帮助的时候?。
    • 我不是否定的)我刚刚解释过,给定的链接中描述了唯一的一种可能性。但是自从Android 5.0 以后你就完全没有办法了,因为它被Android 开发者封闭了,很危险。但是你仍然可以在低于 5.0 的 Android 版本上使用此方法
    • 我认为“a rob”问为什么有人在没有解释的情况下否决了他的问题,如果问题被正确编辑,这确实是不公平的。
    猜你喜欢
    • 1970-01-01
    • 2020-03-20
    • 2016-09-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-16
    • 2013-02-04
    • 2011-11-15
    相关资源
    最近更新 更多