@(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; }