android - 检索当前在 Android 中运行的应用程序的包名称

标签 android package

有人可以帮我提供示例代码以检索当前在 Android 中运行的 Activity 的包名称吗?

编辑:

代码 1

    ActivityManager am = (ActivityManager) getSystemService(Activity.ACTIVITY_SERVICE);
    List<RunningAppProcessInfo> processes = am.getRunningAppProcesses();
    if (processes != null){
        for (int i=0; i<processes.size(); i++){
            RunningAppProcessInfo temp = processes.get(i);
            String pName = temp.processName;
            for (int k=0; k<blacklist.size(); k++){
                if (pName.equalsIgnoreCase((String)blacklist.get(k))){
                    int pid = android.os.Process.getUidForName(pName);
                    android.os.Process.killProcess(pid);
                }
            }
     }

代码 2?

  int pid = temp.pid;
    String[] packages = temp.pkgList;
            for (int j=0; j<packages.length; j++){
                String packageName = packages[j];
                for (int k=0; k<blacklist.size(); k++){
                    if (packageName.equalsIgnoreCase((String)blacklist.get(k))){
                        //Android 2.2+ kill all background processes
                        am.killBackgroundProcesses(packageName);
                    }
                }
            }

假设黑色有我已经列入黑名单并想要终止的程序的应用程序包名称。上面哪段代码是实现我的任务 killer 的正确方法。有人可以解释 killBackgroundProcesses(packageName) 和 android.os.Process.killProcess(pid) 之间的区别,因为我似乎无法理解它们之间的区别。

最佳答案

您可以使用 Android ActivityManager 上的 getRunningAppProcesses 来检索正在运行的进程列表。

检查此链接:http://developer.android.com/reference/android/app/ActivityManager.html#getRunningAppProcesses%28%29

您可以使用 Android PackageManager 上的 getInstalledPackages 方法来检索所有已安装应用的列表

检查此链接:http://developer.android.com/reference/android/content/pm/PackageManager.html#getInstalledPackages%28int%29

关于android - 检索当前在 Android 中运行的应用程序的包名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6662163/

相关文章:

android - 使用 Flutter 制作应用程序时如何通过 WiFi 将设备与 ADB 连接?

android - 显示 windows-1250 字符集 html 的 android webview 出现问题

android - 如何在android中通过包名获取应用程序名称?

python - 将新版本上传到 TestPyPi

java - androidx.core.os.ParcelableCompat 已弃用

android - 如何从 Uri 修剪视频,包括 `mp4parser` 库可以处理的文件,但改用 Android 的框架?

java.lang.IllegalArgumentException : Log tag "okhttp3.mockwebserver.MockWebServer" exceeds limit of 23 characters

package - 如何 `defun`包中的函数?

r - 如何为新的S3类导出新的通用函数?

r - 在 r 中创建特殊数据对象