06 获取Activity的栈管理器

时间:2024-05-23 10:36:26

代码

<span style="font-size:18px;">package com.fmy.day8_29task.util;

import java.util.List;

import android.app.Activity;
import android.app.ActivityManager;
import android.app.ActivityManager.RunningTaskInfo;
import android.content.Context;
import android.text.NoCopySpan.Concrete;
import android.util.Log; public class MyTaskUtil { static public void printStack(Context context) { //获取Activity管理器
ActivityManager manager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
//从管理器取得10个栈信息
/**
* 在安卓5.0之前需要权限 并且可以得到所有栈内容 权限:android.permission.GET_TASKS
*在安卓5.0棒棒糖之后弃用 ,官方说明为泄露用户隐私为由,如果使用的话 不需要权限并且只可以获得当前进程的任务栈
*/
@SuppressWarnings("deprecation")
List<RunningTaskInfo> runningTasks = manager.getRunningTasks(10);
for (RunningTaskInfo runningTaskInfo : runningTasks) {
Log.e("fmytxt","====id==="+runningTaskInfo.id
+"====num==="+runningTaskInfo.numActivities //栈中的组建
+"====base==="+runningTaskInfo.baseActivity //栈底
+"=====top===="+runningTaskInfo.topActivity//栈顶
);
}
}
}
</span>