什么应该替换已弃用的 Facebook adView setAdListener 来获取回调?

gal*_*irl 8 android ads facebook-audience-network

从 v5.6.0 开始,不推荐使用 adView.setAdListener。我们现在如何接收 onAdLoaded 和 onError 回调?

Nhấ*_*ang 21

解决方案:从 5.6 开始,您应该使用loadAd(AdView.AdViewLoadConfig loadAdConfig)

public void loadAd(AdView.AdViewLoadConfig loadAdConfig)
Run Code Online (Sandbox Code Playgroud)

加载广告。

此方法总是立即返回。广告是异步加载的。加载完成或失败时将调用控件的广告侦听器。

爪哇

AdView adView = new AdView(this, "placementId", new AdSize(width, height));

AdListener adListener = new AdListener() {
    @Override
    public void onError(Ad ad, AdError adError) {

    }

    @Override
    public void onAdLoaded(Ad ad) {

    }

    @Override
    public void onAdClicked(Ad ad) {

    }

    @Override
    public void onLoggingImpression(Ad ad) {

    }
};

AdView.AdViewLoadConfig loadAdConfig = adView.buildLoadAdConfig()
        .withAdListener(adListener)
        .build();

adView.loadAd(loadAdConfig);
Run Code Online (Sandbox Code Playgroud)

科特林

val adView = AdView(this, "placementId", AdSize(width, height))

val adListener = object : AdListener {
    override fun onError(ad: Ad, adError: AdError) {

    }

    override fun onAdLoaded(ad: Ad) {

    }

    override fun onAdClicked(ad: Ad) {

    }

    override fun onLoggingImpression(ad: Ad) {

    }
}

val loadAdConfig = adView.buildLoadAdConfig()
    .withAdListener(adListener)
    .build()

adView.loadAd(loadAdConfig)
Run Code Online (Sandbox Code Playgroud)

在此处查找更多信息。