android 判断app是否处于前台
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了android 判断app是否处于前台相关的知识,希望对你有一定的参考价值。
逻辑是获取系统的运行栈,处于栈顶的就是处于前台的app,然后对比包名,不同则表示app处于后台,反之,则表示app处于前台.
/** * app是否在后台 * * @param context * @return true 是 false 不是 */ public static boolean isBackground(Context context) { ActivityManager am = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE); List<ActivityManager.RunningTaskInfo> tasks = am.getRunningTasks(1); if (!tasks.isEmpty()) { ComponentName topActivity = tasks.get(0).topActivity; StaticMethod.debugEMSG(topActivity.getPackageName() + " : " + context.getPackageName()); if (!topActivity.getPackageName().equals(context.getPackageName())) { return true; } } return false; }
以上是关于android 判断app是否处于前台的主要内容,如果未能解决你的问题,请参考以下文章