Android(安卓)如何获取最顶端的Top Activity
16lz
2022-05-24
Android 如何获取最顶端的Top Activity, 见如下代码:
public static class TopActivityInfo { public String packageName = ""; public String topActivityName = ""; }
private TopActivityInfo getTopActivityInfo() { ActivityManager manager = ((ActivityManager)GlobalConfig.getContext().getSystemService(Context.ACTIVITY_SERVICE)); TopActivityInfo info = new TopActivityInfo(); if (Build.VERSION.SDK_INT >= 21) { List pis = manager.getRunningAppProcesses(); ActivityManager.RunningAppProcessInfo topAppProcess = pis.get(0); if (topAppProcess != null && topAppProcess.importance == ActivityManager.RunningAppProcessInfo.IMPORTANCE_FOREGROUND) { info.packageName = topAppProcess.processName; info.topActivityName = ""; } } else { //getRunningTasks() is deprecated since API Level 21 (Android 5.0) List localList = manager.getRunningTasks(1); ActivityManager.RunningTaskInfo localRunningTaskInfo = (ActivityManager.RunningTaskInfo)localList.get(0); info.packageName = localRunningTaskInfo.topActivity.getPackageName(); info.topActivityName = localRunningTaskInfo.topActivity.getClassName(); } return info; }
我在另外一篇文章里面介绍了另外几种获取最顶端Top Activity的方法, 详见: http://blog.csdn.net/wangbaochu/article/details/50554406
更多相关文章
- Android开发小技巧(二)-------如何获取全局的Context
- android获取设备信息
- Android(安卓)中获取屏幕长度及宽度
- Android如何截取当前View 为图片
- android 银联支付接入报nullexception异常
- Android: 屏幕截图
- Android: 自定义Tab样式
- Android(安卓)Glide(4.9.0)源码分析
- google地图示例