9
                            版本 1.29.0
实现方式不对,这种方法实现不了判断应用是否在前台,在我8.1设备上全是true。
用UtilsActivityLifecycleImpl里那个mIsBackground
版本 1.29.0
实现方式不对,这种方法实现不了判断应用是否在前台,在我8.1设备上全是true。
用UtilsActivityLifecycleImpl里那个mIsBackground
可以提供下代码吗?
提供有问题的demo么,还是可用的代码?
提供你解决的方案
implementation ‘androidx.lifecycle:lifecycle-process:2.2.0‘
import androidx.lifecycle.ProcessLifecycleOwner;
public class AppApplication extends Application {
    @Override
    public void onCreate() {
        super.onCreate();
        ProcessLifecycleOwner.get().getLifecycle().addObserver(new ApplicationObserver());
    }
}
import androidx.lifecycle.Lifecycle;
import androidx.lifecycle.LifecycleObserver;
import androidx.lifecycle.OnLifecycleEvent;
public class ApplicationObserver implements LifecycleObserver {
    @OnLifecycleEvent(Lifecycle.Event.ON_STOP)
    private void onAppBackground() {
        // TODO: 2020/10/26  应用到后台
    }
    @OnLifecycleEvent(Lifecycle.Event.ON_START)
    private void onAppForeground() {
         // TODO: 2020/10/26  应用到前台
    }
}
我想了解下 mIsBackground 值在什么情况下不对?
按下home,这之后程序在后台执行,获取的mIsBackground值不对,AppUtils.isAppForeground也不对
你有试过 AppUtils.registerAppStatusChangedListener() 吗,我这边测试的不会存在你说的问题呀
AppUtils.registerAppStatusChangedListener() 回调是对的,前台后台切换,对应的方法都执行。 AppUtils.isAppForeground()获取的值不对,都是true