Администрирование сервисов Google Play - super.onAdLoaded(), super.onAdFailedToLoad(...)
Быстрый вопрос:
В контексте деятельности Android,
В adListenner
при переопределении onAdLoaded(){}
а также onAdFailedToLoad(int errorCode){}
, должен super.onAdLoaded()
а также super.onAdFailedToLoad(int errorCode)
вызываться в переопределенных методах?
Если да, должен ли этот вызов выполняться в начале или в конце метода?
2 ответа
AdListener - это интерфейс, нет метода суперкласса для вызова.
И в любом, как правило, в Java, адаптеры (абстрактные реализации Listener, предоставленные для удобства) не содержат реализации в адаптере. Методы просто существуют, так что вам не нужно реализовывать те методы, которые вы не используете.
Очень хороший вопрос, интересно, что для себя - это вообще хорошая практика, если вы хотите сохранить логику из родительского класса. В этом случае это не будет иметь значения.
com.google.android.gms.ads.AdListener на самом деле является абстрактным классом с пустыми методами - я полагаю, что слушатель раньше был интерфейсом, который заставлял вас реализовывать все методы и, следовательно, переходить на абстрактный класс.
Вы можете взять декомпилятор Java, например, JD-GUI, и посмотреть код самостоятельно (google-play-services_lib\libs\google-play-services.jar):
package com.google.android.gms.ads;
public abstract class AdListener
{
public void onAdClosed() {}
public void onAdFailedToLoad(int errorCode) {}
public void onAdLeftApplication() {}
public void onAdOpened() {}
public void onAdLoaded() {}
}