美文网首页
如何判断App切到后台

如何判断App切到后台

作者: Jayden_ | 来源:发表于2018-05-09 10:01 被阅读0次

Q:如何判断App被切到了后台(比如按Home键)。
A:可以通过任务栈中顶部Activity的包名来判断,和App包名相同则表示App处于前台进程,否则处于后台进程。

    /**
     * 判断app是否处于前台
     */
    public boolean isRunningForeground() {
        ActivityManager activityManager = (ActivityManager) this.getSystemService(Context.ACTIVITY_SERVICE);
        if (activityManager != null
                && activityManager.getRunningTasks(1) != null
                && activityManager.getRunningTasks(1).size() > 0
                && activityManager.getRunningTasks(1).get(0) != null
                && activityManager.getRunningTasks(1).get(0).topActivity != null
                && TextUtils.equals(activityManager.getRunningTasks(1).get(0).topActivity.getPackageName(), getPackageName())) {
            //顶部的activity包名和app包名相同,则app正处在前台
            return true;
        } else {
            return false;
        }
    }

相关文章

网友评论

      本文标题:如何判断App切到后台

      本文链接:https://www.haomeiwen.com/subject/puqnrftx.html