0

我创建了一个 Mopub 帐户并获得了我的 MarketPlace 批准。我创建了一个应用程序和一个横幅单元,并尝试在我的 android 应用程序中查看广告。当我使用测试横幅 ID 时,它会显示测试横幅广告。当我用我的实际单元 ID 替换测试单元 ID 时,我看不到任何广告。当我看到日志时,它显示为 No ads 。

我认为 MarketPlace 中没有可显示的广告,因此我创建了一个统一的广告网络并尝试过,但没有运气。

这是我的配置。

    implementation('com.mopub:mopub-sdk:5.8.0@aar') {
        transitive = true
    }

    // Unity Ads
    implementation 'com.unity3d.ads:unity-ads:3.2.0'
    implementation 'com.mopub.mediation:unityads:3.2.0.0'

我的启动器活动中有这个。

final SdkConfiguration.Builder configBuilder = new SdkConfiguration.Builder(
                getString(R.string.adUnitId))
                .withLogLevel(DEBUG);
        MoPub.initializeSdk(this, configBuilder.build(), () -> Log.d("Mopub", "SDK initialized"));

这是我加载广告的活动的代码。

moPubView = findViewById(R.id.adview);
        moPubView.setAdUnitId(getString(R.string.adUnitId));
        moPubView.loadAd(MoPubView.MoPubAdSize.HEIGHT_250);

这是我得到的日志。

I/MoPub: [com.mopub.network.AdLoader$a][onErrorResponse] Ad server responded with:
    No ads found for ad unit.
I/MoPub: [com.mopub.mobileads.AdViewController][a] SDK Log - Ad failed to load.
I/MoPub: [com.mopub.mobileads.MoPubView][a] Ad failed to load: (10,000) No ads found.

任何人都可以请帮助!

4

1 回答 1

0

如果您的 R.string.adUnitId 是实时 adUnitID,则此行为是预期的。没有适合的广告。您应该使用MoPubs test_adUnitIds测试实现。

如果您处于调试模式,请更改您的 init 进程以使用三元运算符。

final SdkConfiguration.Builder configBuilder = new SdkConfiguration.Builder(
            BuildConfig.DEBUG ? "252412d5e9364a05ab77d9396346d73d" : getString(R.string.adUnitId))
            .withLogLevel(DEBUG);
    MoPub.initializeSdk(this, configBuilder.build(), () -> Log.d("Mopub", "SDK initialized"));

你的 moPubView 也一样。

moPubView = findViewById(R.id.adview);
    moPubView.setAdUnitId(BuildConfig.DEBUG ? "252412d5e9364a05ab77d9396346d73d" : getString(R.string.adUnitId));
    moPubView.loadAd(MoPubView.MoPubAdSize.HEIGHT_250);
于 2020-02-24T09:24:27.810 回答