Android获取APP当前进程的名称

public static String getProcessName(Context cxt, int pid) {
    ActivityManager am = (ActivityManager) cxt.getSystemService(Context.ACTIVITY_SERVICE);
    List<ActivityManager.RunningAppProcessInfo> runningApps = am.getRunningAppProcesses();
    if (runningApps == null) {
        return null;
    }
    for (ActivityManager.RunningAppProcessInfo procInfo : runningApps) {
        if (procInfo.pid == pid) {
            return procInfo.processName;
        }
    }
    return null;
}

在 Application 的 onCreate 中获取进程名称并进行相应的判断,例如:

//cn.appblog.demo
String processName = AppUtil.getProcessName(this, android.os.Process.myPid());

//判断进程名,保证只有主进程运行
if (!TextUtils.isEmpty(processName) && processName.equals(this.getPackageName())) {
    //主进程初始化逻辑
}
上一篇 Android获取音频焦点
下一篇 Android实现3种Notification(状态栏通知)
目录
文章列表
1 Vue.js下载二进制流文件并转为Excel文件
Vue.js下载二进制流文件并转为Excel文件
2
Vue.js async与await解析
Vue.js async与await解析
3
Windows下 mysql-8.x-winx64 集群-主从配置
Windows下 mysql-8.x-winx64 集群-主从配置
4
TestNG运行JUnit测试
TestNG运行JUnit测试
5
身份证验证算法
身份证验证算法
最新评论
一位WordPress评论者
一位WordPress评论者
2月12日
您好,这是一条评论。若需要审核、编辑或删除评论,请访问仪表盘的评论界面。评论者头像来自 Gravatar。