使用AdMob聚合Vungle Android SDK

AdMob Android适配器6.7.0.0与Vungle Android SDK 6.7.0兼容,并且已经过测试,与Google Android SDK 19.2.0兼容。将AdMob中介与Vungle SDK集成的文档位于AdMob的“指南”部分的“ 将Vungle与中介集成”中 ,因此,可以使用本指南作为官方文档尚未涵盖的有关新功能的信息的补充。

下载AdMob Android适配器v6.7.0.0,并包含Vungle Android SDK 6.7.0 ,然后将其手动添加到您的项目中。或者,您可以通过JCenter进行Gradle集成。

implementation 'com.vungle:publisher-sdk-android:6.7.0'

有关Android Studio集成和手动集成的说明,请参阅AdMob的集成指南,第3步:导入Vungle SDK和适配器, https://developers.google.com/admob/android/mediation/vungle#step_3_import_the_vungle_sdk_and_adapter。

如果您使用的是Google Mobile Ads SDK且更新到Vungle Android SDK V6,则必须使用Google Play Services Ads 12.0.0或更高版本,因为我们已经加入了onRewardedVideoCompleted()回调方法RewardedVideoAdListener 。有关更多信息,请参阅Google Mobile Ads SDK发行说明

CCPA

自2020年7月1日起,将执行《加利福尼亚消费者隐私法》(CCPA),发布者必须更新至Android SDK 6.7.0和AdMob适配器6.7.0.0,以符合CCPA。

要传递CCPA值,必须直接调用Vungle SDK API。这是应该通过Vungle SDK API直接访问的唯一功能。至于其他可选功能例如Android ID内存设置应使用VungleNetworkSettings

请使用 Vungle.updateCCPAStatus 来设置用户选择。如果用户禁止,则传入 Vungle.CCPAStatus.OPTED_OUT。请使用 Vungle.getCCPAStatus 来获取当前CCPA状态。

CCPA API
updateCCPAStatus getCCPAStatus
public static void updateCCPAStatus(@NonNull final Vungle.CCPAStatus status)
示例代码
// To set the user's CCPA status to opted out:
Vungle.updateCCPAStatus(Vungle.CCPAStatus.OPTED_OUT);
// To find out what the user's current consent status is:
Vungle.CCPAStatus currentCCPAStatus = Vungle.getCCPAStatus();

Banner广告

从v6.5.1版本之后,Vungle SDK支持AdMob的Banner 要在应用程序中显示Banner广告,请在Vungle Daahboard上创建MREC或Banner placementID,并将其配置为AdMob Dashboard上的Banner广告。

Supported banner sizes:

Size in dp (WxH) 说明 AdSize constant
320x50 Banner BANNER
728x90 IAB Leaderboard LEADERBOARD
300x250 IAB Medium Rectangle MEDIUM_RECTANGLE
Provided width x Adaptive height Adaptive banner N/A
Screen width x 32|50|90 Smart banner SMART_BANNER

示例代码:

AdView adView = new AdView(this);
adViews.add(adView);
adView.setAdSize(AdSize.MEDIUM_RECTANGLE);
adView.setAdUnitId(<AdUnit>);

 

Multiple Banner Load

Vungle Android SDK 6.5.x支持在任何给定时间为一个placementID加载一个Banner广告,并且将一个placementID映射到一个AdMob unitID。当Vungle SDK已加载Banner广告时,这限制了成功加载后续loadAd请求的能力。要克服此限制,您必须为每个Banner广告loadAd传递唯一的标识符(可以是生成的随机数或简单的增量数字),以便当Vungle SDK已经加载Banner广告时,请求可以回退到瀑布中的下一个广告网络。

示例代码:

Bundle extras = new VungleExtrasBuilder(null).setBannerUniqueRequestID("12345").build();
AdRequest adRequest = new AdRequest.Builder().addNetworkExtrasBundle(VungleInterstitialAdapter.class, extras).build();
adViewBanner.loadAd(adRequest);

Network Specific Parameters

Vungle AdMob适配器继续支持特定网络的参数 ,如AdMob指南中所示。从v6.5.1开始,用于视频播放的音频设置已被setStartMuted替换,后者采用布尔值,并且setSoundEnabled已弃用。适配器还支持附加参数setAdOrientation ,以按设备方向播放广告,该广告采用具有LANDSCAPEPORTRAITAUTO_ROTATEMATCH_VIDEO配置性的AdConfig对象。 (不建议使用setAutoRotate

示例代码:

Bundle localExtras = new VungleExtrasBuilder(null)
        .setAdOrientation(AdConfig.LANDSCAPE)
        .setStartMuted(true)
        .setUserId("vungle-test-user")
        .setOrdinalViewCount(77777)
        .build();

对于奖励广告,您将在addNetworkExtrasBundle上传递VungleAdapter.class ,而对于插页式广告则传递VungleInterstitial.class

加载奖励广告的示例代码:

mRewardedAd.loadAd(new AdRequest.Builder()
        .addNetworkExtrasBundle(VungleAdapter.class, localExtras)
        .build(), adLoadCallback);

加载插屏广告的示例代码:

mInterstitialAd.loadAd(new AdRequest.Builder()
        .addNetworkExtrasBundle(VungleInterstitialAdapter.class, localExtras)
        .build());

内存设定

从v6.4.11开始,如果Android手机的存储空间低于预定义的阈值,则可以阻止SDK请求广告甚至进行初始化。如果发生这种情况,您将收到类似于以下内容的错误:

设备上的文件系统大小不足。

样例代码:

import com.vungle.mediation.VungleNetworkSettings;

//Integer value sets the required minimum available free storage space to be able to initialize the SDK
VungleNetworkSettings.setMinSpaceForInit(<INTEGER_VALUE>);

//Integer value sets the required minimum available free storage space to be able to request an ad
VungleNetworkSettings.setMinSpaceForAdLoad(<INTEGER_VALUE>);

Android ID

6.4.11版本开始,发布者现在可以限制将Android ID从设备传递到SDK。

示例代码

VungleNetworkSettings.setAndroidIdOptOut(true);

新的奖励API

如AdMob使用指南中所述 ,v17.2.0及更高版本支持同时缓存多个奖励广告。由于Vungle不支持此功能,因此Vungle不会填充第二次尝试加载的广告请求,而是将其传递到瀑布中的下一个广告网络。

如果您要缓存多个广告,建议您使用缓存优化的placements,因为广告请求将在广告播放时自动发出,因此下一个广告很有可能在上一次广告体验时准备好播放结束。

Powered by Creativity Driven by Performance Sign Up Here

Questions?

Need further assistance, feel free to reach out to us, we’re here to help!

这篇文章有帮助吗?