Leadbolt реализует ошибку

Я пытался внедрить рекламу Leadbolt в свое приложение, но не могу установить Adlistener на контроллере. Методы, которые я могу добавить, не похожи на методы, описанные в PDF. Я могу показывать рекламу в своем приложении, но не могу использовать слушателей.

Это мой код:

 final Activity act = this;
                  myController = new AdController(act, MY_LB_SECTION_ID, new AdListener() {

                    @Override
                    public void onDismissScreen(Ad arg0) {
                        // TODO Auto-generated method stub

                    }

                    @Override
                    public void onFailedToReceiveAd(Ad arg0, ErrorCode arg1) {
                        // TODO Auto-generated method stub

                    }

                    @Override
                    public void onLeaveApplication(Ad arg0) {
                        // TODO Auto-generated method stub

                    }

                    @Override
                    public void onPresentScreen(Ad arg0) {
                        // TODO Auto-generated method stub

                    }

                    @Override
                    public void onReceiveAd(Ad arg0) {
                        // TODO Auto-generated method stub

                    }

                  });

                  myController.loadAd();

Я получаю ошибку: конструктор AdController(Activity, String, new AdListener(){}) не определен

Это код из pdf- файла, но эти методы, по-видимому, неизвестны для eclipse:

final Activity act = this;
AdController myController = new AdController(act, 
"MY_LB_SECTION_ID", new AdListener() {
public void onAdLoaded() {
}
public void onAdClicked() {
}
public void onAdClosed() {
act.finish();
}
public void onAdCompleted() {
act.finish();
}
public void onAdFailed() {
act.finish();
}
public void onAdProgress() {
}
public void onAdAlreadyCompleted() {
act.finish();
}
public void onAdHidden() {} // function is deprecated
public void onAdPaused() {
act.finish();
}
public void onAdResumed() {
}
});
myController.loadAd();

Есть идеи, что я делаю не так? Я ничего не добавил в Манифест.

3 ответа

Решение

Для Leadbolt:

Оказалось, что com.pad.android.listener.AdListener; или com.Leadbolt.AdListener; столкнулся с импортом com.google.ads.AdListener; который является AdMob AdListener. Вот почему я не могу добавить оператор импорта.

Вы должны расширить свою документацию, поэтому, если ваш слушатель сталкивается с любыми другими рекламными сетями, как использовать его, потому что это не очевидно. MobFox также использует com.adsdk.sdk.AdListener.

Чтобы использовать AdListener при использовании AdListeners в других рекламных сетях, моя первая строка выглядит так:

public class MainActivity extends Activity implements AdListener, com.google.ads.AdListener {

Первый - MobFox, второй - AdMob. Я не реализовал AdListener от Leadbolt, потому что я использую его в коде:

AdController myController = new AdController(act, MY_LB_SECTION_ID_BANNER_ALL, new com.pad.android.listener.AdListener() {

Таким образом, это работает.

Из PDF-файла, на который вы ссылались:

Как только этот код будет включен, зайдите на портал издателя и добавьте раздел "App Ad (SDK)" и используйте значок "Получить код", чтобы получить значение "MY_LB_SECTION_ID".

MY_LB_SECTION_ID это целочисленный идентификатор, а не строка.

У меня была та же проблема, так как я также использую AdMob одновременно, но я нашел более простой способ это исправить.

Вместо того, чтобы использовать:

AdController ad = new AdController(act, "MY_LB_SECTION_ID", new AdListener() {
    ...
}

Я использовал:

AdController ad = new AdController(act, "MY_LB_SECTION_ID", new com.<leadbolt_package_name>.AdListener() {
    ...
}

Учитывая, что я использовал этот импорт:

import com.<leadbolt_package_name>.AdController; // in my case, it was something like 'fgadcbgxysr'

Это будет читать непосредственно метод библиотеки LeadBolt, а не конфликтующий метод. Надеюсь, что это поможет другим пользователям, хотя мой ответ пришел поздно.

Другие вопросы по тегам