Как дождаться загрузки класса appsflyer

Я использую класс Appsflyer (AFApplication) в своем проекте.

@Override
public void onCreate() {
    super.onCreate();
    final AppsFlyerConversionListener conversionListener = new AppsFlyerConversionListener() {
        @Override
        public void onConversionDataSuccess(Map<String, Object> conversionData) {
            for (String attrName : conversionData.keySet()) {
                Log.d("LOG_TAG", "attribute: " + attrName + " = " + conversionData.get(attrName));
            }
            campName = (String) conversionData.get("campaign");
        }

        @Override
        public void onConversionDataFail(String errorMessage) {
            Log.d("LOG_TAG", "error getting conversion data: " + errorMessage);
        }

        @Override
        public void onAppOpenAttribution(Map<String, String> attributionData) {
            for (String attrName : attributionData.keySet()) {
                Log.d("LOG_TAG", "attribute: " + attrName + " = " + attributionData.get(attrName));
            }
        }

        @Override
        public void onAttributionFailure(String errorMessage) {
            Log.d("LOG_TAG", "error onAttributionFailure : " + errorMessage);
        }
    };

    AppsFlyerLib.getInstance().init(AF_DEV_KEY, conversionListener, this);
    AppsFlyerLib.getInstance().start(this);

}

public static String getCampName() {
    return campName;
}

Проблема в том что этот класс начинает свою работу позже чем код в моем Activity и метод getCampName() мне возвращает null

Мне удалось дождаться загрузки класса и получить параметры в Activity вот таким образом

AsyncTask.execute(new Runnable() {
                @Override
                public void run() {
                    try {
                        Thread.sleep(8000);
                    } catch (InterruptedException e) {
                        e.printStackTrace();
                    }
                    appsflyerCamp = AFApplication.getCampName();
                    openWebView();
                }
            });

Но теперь я не могу открыть webview в другом потоке. Как мне правильно дождаться загрузки класса для получения параметров, а после чего открыть webview в моем MainActivity ?

Спасибо!


Ответы (0 шт):