美文网首页android技术
Android切换前后台监听

Android切换前后台监听

作者: Topone | 来源:发表于2021-08-02 06:39 被阅读0次
//用来控制应用前后台切换的逻辑
    private boolean isCurrentRunningForeground = true;
    @Override
    public void onStart() {
        super.onStart();
        if (!isCurrentRunningForeground) {
            LogUtils.d("切换到前台");
        }
    }

    @Override
    public void onStop() {
        super.onStop();
        isCurrentRunningForeground = isRunningForeground();
        if (!isCurrentRunningForeground) {
            LogUtils.d("切换到后台");
        }
    }

    public boolean isRunningForeground() {
        ActivityManager activityManager = (ActivityManager) getActivity().getSystemService(Context.ACTIVITY_SERVICE);
        List<ActivityManager.RunningAppProcessInfo> appProcessInfos = activityManager.getRunningAppProcesses();
        // 枚举进程
        for (ActivityManager.RunningAppProcessInfo appProcessInfo : appProcessInfos) {
            if (appProcessInfo.importance == ActivityManager.RunningAppProcessInfo.IMPORTANCE_FOREGROUND) {
                if (appProcessInfo.processName.equals(getActivity().getApplicationInfo().processName)) {
                    LogUtils.d("EntryActivity isRunningForeGround");
                    return true;
                }
            }
        }
        LogUtils.d("EntryActivity isRunningBackGround");
        return false;
    }

相关文章

网友评论

    本文标题:Android切换前后台监听

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