android - RewardedVideoAd - AdMob 与 Vungle 中介 - 错误代码 : 3

标签 android admob vungle-ads mobile-ad-mediation rewardedvideoad

这是我第一次处理视频广告。我已按照 AdMob 指南实现 here 中的 RewardedVideoAd以及来自 here 的 Vungle 文档。我完成了这些指南中写的所有步骤。但是,当我在移动设备上部署应用程序时,RewardedVideoAd 始终无法加载。我在手机和模拟器上测试了它,但都不起作用。它始终调用 onRewardedVideoAdFailedToLoad。我在两台设备上都安装了最新的 Google Play 服务。如果这对您很重要,我的应用程序仍未部署在 Play 商店上。我不知道出了什么问题。有人能指出问题所在吗?

错误代码为 3:ERROR_CODE_NO_FILL

我的代码:

public class HomeScreen extends Activity {

    RewardedVideoAd videoAd;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.home_screen);

        //Some Code

        videoAd = MobileAds.getRewardedVideoAdInstance(this);
        videoAd.setRewardedVideoAdListener(new RewardedVideoAdListener() {
            @Override
            public void onRewarded(RewardItem reward) {
                Toast.makeText(HomeScreen.this, "onRewarded! currency: " + reward.getType() + "  amount: " +
                        reward.getAmount(), Toast.LENGTH_SHORT).show();
            }

            @Override
            public void onRewardedVideoAdLeftApplication() {
                Toast.makeText(HomeScreen.this, "onRewardedVideoAdLeftApplication",
                        Toast.LENGTH_SHORT).show();
            }

            @Override
            public void onRewardedVideoAdClosed() {
                Toast.makeText(HomeScreen.this, "onRewardedVideoAdClosed", Toast.LENGTH_SHORT).show();
            }

            @Override
            public void onRewardedVideoAdFailedToLoad(int errorCode) {
                Toast.makeText(HomeScreen.this, "onRewardedVideoAdFailedToLoad", Toast.LENGTH_SHORT).show();
            }

            @Override
            public void onRewardedVideoAdLoaded() {
                Toast.makeText(HomeScreen.this, "onRewardedVideoAdLoaded", Toast.LENGTH_SHORT).show();
            }

            @Override
            public void onRewardedVideoAdOpened() {
                Toast.makeText(HomeScreen.this, "onRewardedVideoAdOpened", Toast.LENGTH_SHORT).show();
            }

            @Override
            public void onRewardedVideoStarted() {
                Toast.makeText(HomeScreen.this, "onRewardedVideoStarted", Toast.LENGTH_SHORT).show();
            }
        });

        Bundle extrasBundle = new Bundle();
        extrasBundle.putBoolean("_noRefresh", true);
        AdRequest adRequest = new AdRequest.Builder()
                .addNetworkExtrasBundle(AdMobAdapter.class, extrasBundle)
                .addTestDevice(AdRequest.DEVICE_ID_EMULATOR)
                .addTestDevice("D575C31D492903A3BA451D2B2E2BD8E8")
                .build();
        videoAd.loadAd(getString(R.string.video_ad_unit_id), adRequest);

        addLives.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                if (videoAd.isLoaded()) {
                    videoAd.show();
                }
            }
        });
    }
}

AdMob 广告:

AdMob Ad

广告中介:

Ad Mediation

我已添加 Vungle 中介所需的库:

Vungle Libraries

Gradle(项目级别):

dependencies {
    classpath 'com.google.gms:google-services:3.0.0'
}

Gradle(应用级):

apply plugin: 'com.google.gms.google-services'

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.google.firebase:firebase-ads:9.2.0'
}

Logcat(关于广告):

I/Ads: Starting ad request.
W/Ads: Failed to load ad: 3

最佳答案

此问题已通过 Vungle Android SDK 4.0.2 和 Vungle AdMob Adopter 2.0.0 得到解决

https://v.vungle.com/sdk https://support.vungle.com/hc/en-us/articles/207604108

关于android - RewardedVideoAd - AdMob 与 Vungle 中介 - 错误代码 : 3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38284517/

相关文章:

android - 从属于 ViewPager 的 fragment 创建新 fragment

java - Vungle 广告不可用

swift - Vungle playAd API 在 Swift 中不起作用

ios - 找不到广告网络适配器

android - 尝试实现 AdMob 横幅时出现 ClassNotFound

android - Admob 广告未加载 - 无法加载广告 : 0

java - 流畅的语法和继承

android - 即使在恢复出厂设置后如何防止卸载

java - Android Log类中的d方法

android - admob 横幅未显示在弹出窗口中