ActivityLifecycleCallbacks 不会触发

ActivityLifecycleCallbacks won't trigger

我正在制作一个消息应用程序,为了设置用户的状态,我必须跟踪我的应用程序的状态。当我 运行 apk 时,无论应用的状态如何,ActivityLifecycleCallbacks 都不会触发。我已经尝试了迄今为止找到的所有可能的修复方法,但 none 的修复方法都已解决。这是代码:

public class AppState extends Application implements Application.ActivityLifecycleCallbacks {

    @Override
    public void onCreate() {
        super.onCreate();
        Log.e("AppState ", "onCreate");
        registerActivityLifecycleCallbacks(this);
    }

    @Override
    public void onActivityCreated(@NonNull Activity activity, @Nullable Bundle savedInstanceState) {
        Log.e("onActivityCreated", activity.getLocalClassName());
    }

    @Override
    public void onActivityStarted(Activity activity) {
        setLastSeen(KEY_LAST_SEEN_ONLINE);
    }

    @Override
    public void onActivityResumed(@NonNull Activity activity) {
        Log.e("onActivityResumed", activity.getLocalClassName());
    }

    @Override
    public void onActivityPaused(@NonNull Activity activity) {
        Log.e("onActivityPaused", activity.getLocalClassName());
    }

    @Override
    public void onActivityStopped(Activity activity) {
        setLastSeen(String.valueOf(System.currentTimeMillis()));
    }

    @Override
    public void onActivitySaveInstanceState(@NonNull Activity activity, @NonNull Bundle outState) {
        Log.e("omInstanceState", activity.getLocalClassName());
    }

    @Override
    public void onActivityDestroyed(@NonNull Activity activity) {
        Log.e("onActivityDestroyed", activity.getLocalClassName());
    }

    private void setLastSeen(String lastSeen) {
        FirebaseDatabase.getInstance().getReference(KEY_COLLECTION_USERS)
                .child(FIREBASE_USER.getUid())
                .child(KEY_LAST_SEEN)
                .setValue(lastSeen);
    }
}

为了澄清,我一直在阅读文档和其他一些调整,其中 none 参考了在我的项目的其他 class 上实现代码,所以我假设问题就出在这个 class 内。 感谢您的宝贵时间:)

检查您是否在清单中注册了您的 AppState 应用程序 class :

 <application
        android:name=".AppState"
        ...