Android - 在标准java类中使用Activity回调

时间:2017-06-28 10:47:52

标签: android callback android-lifecycle aar

我正在开发一个.aar库,我真的需要与活动的生命周期进行交互(所以<authentication mode="Forms"> <forms ... requireSSL="true" /> </authentication> callbackonCreate()等等...标准的java类。 我尝试了很多东西,但没有任何作用。 我有办法做到吗?

1 个答案:

答案 0 :(得分:0)

根据我的理解,你需要这样的东西,

import android.app.Activity;
import android.app.Application;
import android.os.Bundle;

/**
 * @Krish
 */

public class LifeCycleObserver {

    private LifeCycleObserver() {}

    private static LifeCycleObserver sLifeCycleObserver;

    public static LifeCycleObserver getInstance()
    {
        if (sLifeCycleObserver == null)
        {
            sLifeCycleObserver = new LifeCycleObserver();
        }

        return sLifeCycleObserver;
    }


    public static void init(Application application)
    {
        application.registerActivityLifecycleCallbacks(sLifeCycleObserver.lifecycleCallbacks);
    }


    private Application.ActivityLifecycleCallbacks lifecycleCallbacks = new Application.ActivityLifecycleCallbacks() {

        @Override
        public void onActivityCreated(Activity activity, Bundle savedInstanceState) {

        }

        @Override
        public void onActivityStarted(Activity activity) {

        }

        @Override
        public void onActivityResumed(Activity activity) {

        }

        @Override
        public void onActivityPaused(Activity activity) {

        }

        @Override
        public void onActivityStopped(Activity activity) {

        }

        @Override
        public void onActivitySaveInstanceState(Activity activity, Bundle outState) {

        }

        @Override
        public void onActivityDestroyed(Activity activity) {

        }
    };

}

并在Application类中使用它,

import android.app.Application;

/**
 * Created by krish
 */

public class MyApplication extends Application {

    @Override
    public void onCreate() {
        super.onCreate();
        LifeCycleObserver.init(this);
    }
}