[实践] Android5.1.1源码 - getRunningTasks解除限制得到完整信息

[实践] Android5.1.1源码 - getRunningTasks解除限制得到完整信息

@(Android研究)[自定义ROM]java


[TOC]android


不歪博客:http://my.oschina.net/ibuwai/blog.net

前言

Android5.X及其之后的版本的系统中ActivityManager.getRunningTasks方法仅能得到应用自身正在运行的任务,而不能得到其余应用的栈顶Activity。本文经过修改Android5.1.1的源码解除这个限制。code

实践

找到"frameworks/base/services/core/java/com/android/server/am/ActivityStack.java"文件,而后找到"void getTasksLocked(List<RunningTaskInfo> list, int callingUid, boolean allowed)"方法,在该方法中找到下面的代码:server

if (!allowed && !task.isHomeTask() && task.effectiveUid != callingUid) {
    continue;
}

将其改成:blog

if (activities.isEmpty()) {
    continue;
}
相关文章
相关标签/搜索