use of com.google.android.gms.ads.RequestConfiguration in project mopub-android-mediation by mopub.
the class GooglePlayServicesRewardedVideo method load.
@Override
protected void load(@NonNull final Context context, @NonNull final AdData adData) {
Preconditions.checkNotNull(context);
Preconditions.checkNotNull(adData);
setAutomaticImpressionAndClickTracking(false);
mContext = context;
final Map<String, String> extras = adData.getExtras();
mAdUnitId = extras.get(KEY_EXTRA_AD_UNIT_ID);
if (TextUtils.isEmpty(mAdUnitId)) {
MoPubLog.log(getAdNetworkId(), LOAD_FAILED, ADAPTER_NAME, MoPubErrorCode.ADAPTER_CONFIGURATION_ERROR.getIntCode(), MoPubErrorCode.ADAPTER_CONFIGURATION_ERROR);
if (mLoadListener != null) {
mLoadListener.onAdLoadFailed(MoPubErrorCode.ADAPTER_CONFIGURATION_ERROR);
}
return;
}
if (!(context instanceof Activity)) {
MoPubLog.log(getAdNetworkId(), CUSTOM, ADAPTER_NAME, "Context passed to load " + "was not an Activity.");
if (mLoadListener != null) {
mLoadListener.onAdLoadFailed(MoPubErrorCode.ADAPTER_CONFIGURATION_ERROR);
}
return;
}
final AdRequest.Builder builder = new AdRequest.Builder();
builder.setRequestAgent("MoPub");
// Publishers may append a content URL by passing it to the
// GooglePlayServicesMediationSettings instance when initializing the MoPub SDK:
// https://developers.mopub.com/docs/mediation/networks/google/#android
String contentUrl = extras.get(KEY_CONTENT_URL);
if (TextUtils.isEmpty(contentUrl)) {
contentUrl = GooglePlayServicesMediationSettings.getContentUrl();
}
if (!TextUtils.isEmpty(contentUrl)) {
builder.setContentUrl(contentUrl);
}
forwardNpaIfSet(builder);
final RequestConfiguration.Builder requestConfigurationBuilder = new RequestConfiguration.Builder();
// Publishers may request for test ads by passing test device IDs to the
// GooglePlayServicesMediationSettings instance when initializing the MoPub SDK:
// https://developers.mopub.com/docs/mediation/networks/google/#android
String testDeviceId = extras.get(TEST_DEVICES_KEY);
if (TextUtils.isEmpty(testDeviceId)) {
testDeviceId = GooglePlayServicesMediationSettings.getTestDeviceId();
}
if (!TextUtils.isEmpty(testDeviceId)) {
requestConfigurationBuilder.setTestDeviceIds(Collections.singletonList(testDeviceId));
}
// Publishers may want to indicate that their content is child-directed and
// forward this information to Google.
final String isTFCDString = extras.get(TAG_FOR_CHILD_DIRECTED_KEY);
final Boolean isTFCD;
if (!TextUtils.isEmpty(isTFCDString)) {
isTFCD = Boolean.valueOf(isTFCDString);
} else {
isTFCD = GooglePlayServicesMediationSettings.isTaggedForChildDirectedTreatment();
}
if (isTFCD != null) {
if (isTFCD) {
requestConfigurationBuilder.setTagForChildDirectedTreatment(TAG_FOR_CHILD_DIRECTED_TREATMENT_TRUE);
} else {
requestConfigurationBuilder.setTagForChildDirectedTreatment(TAG_FOR_CHILD_DIRECTED_TREATMENT_FALSE);
}
} else {
requestConfigurationBuilder.setTagForChildDirectedTreatment(TAG_FOR_CHILD_DIRECTED_TREATMENT_UNSPECIFIED);
}
// Publishers may want to mark their requests to receive treatment for users
// in the European Economic Area (EEA) under the age of consent.
final String isTFUAString = extras.get(TAG_FOR_UNDER_AGE_OF_CONSENT_KEY);
final Boolean isTFUA;
if (!TextUtils.isEmpty(isTFUAString)) {
isTFUA = Boolean.valueOf(isTFUAString);
} else {
isTFUA = GooglePlayServicesMediationSettings.isTaggedForUnderAgeOfConsent();
}
if (isTFUA != null) {
if (isTFUA) {
requestConfigurationBuilder.setTagForUnderAgeOfConsent(TAG_FOR_UNDER_AGE_OF_CONSENT_TRUE);
} else {
requestConfigurationBuilder.setTagForUnderAgeOfConsent(TAG_FOR_UNDER_AGE_OF_CONSENT_FALSE);
}
} else {
requestConfigurationBuilder.setTagForUnderAgeOfConsent(TAG_FOR_UNDER_AGE_OF_CONSENT_UNSPECIFIED);
}
final RequestConfiguration requestConfiguration = requestConfigurationBuilder.build();
MobileAds.setRequestConfiguration(requestConfiguration);
final AdRequest adRequest = builder.build();
RewardedAd.load(context, mAdUnitId, adRequest, new RewardedAdLoadCallback() {
@Override
public void onAdLoaded(@NonNull RewardedAd rewardedAd) {
Preconditions.checkNotNull(rewardedAd);
if (mLoadListener != null) {
mLoadListener.onAdLoaded();
}
MoPubLog.log(getAdNetworkId(), LOAD_SUCCESS, ADAPTER_NAME);
mRewardedAd = rewardedAd;
mRewardedAd.setFullScreenContentCallback(new FullScreenContentCallback() {
@Override
public void onAdImpression() {
if (mInteractionListener != null) {
mInteractionListener.onAdImpression();
}
}
@Override
public void onAdShowedFullScreenContent() {
MoPubLog.log(getAdNetworkId(), SHOW_SUCCESS, ADAPTER_NAME);
if (mInteractionListener != null) {
mInteractionListener.onAdShown();
}
}
@Override
public void onAdFailedToShowFullScreenContent(@NonNull AdError adError) {
Preconditions.checkNotNull(adError);
MoPubLog.log(getAdNetworkId(), CUSTOM, ADAPTER_NAME, "Failed to show " + "Google rewarded video. " + adError.getMessage());
MoPubLog.log(getAdNetworkId(), SHOW_FAILED, ADAPTER_NAME, MoPubErrorCode.FULLSCREEN_SHOW_ERROR.getIntCode(), MoPubErrorCode.FULLSCREEN_SHOW_ERROR);
if (mInteractionListener != null) {
mInteractionListener.onAdFailed(MoPubErrorCode.FULLSCREEN_SHOW_ERROR);
}
mRewardedAd = null;
}
@Override
public void onAdDismissedFullScreenContent() {
MoPubLog.log(getAdNetworkId(), DID_DISAPPEAR, ADAPTER_NAME);
if (mInteractionListener != null) {
mInteractionListener.onAdDismissed();
}
mRewardedAd = null;
}
});
}
@Override
public void onAdFailedToLoad(@NonNull LoadAdError loadAdError) {
Preconditions.checkNotNull(loadAdError);
MoPubLog.log(getAdNetworkId(), CUSTOM, ADAPTER_NAME, "Failed to load " + "Google rewarded video. " + loadAdError.getMessage());
MoPubLog.log(getAdNetworkId(), LOAD_FAILED, ADAPTER_NAME, MoPubErrorCode.ADAPTER_CONFIGURATION_ERROR.getIntCode(), MoPubErrorCode.ADAPTER_CONFIGURATION_ERROR);
MoPubLog.log(getAdNetworkId(), CUSTOM, ADAPTER_NAME, "Failed to load Google " + "interstitial with message: " + loadAdError.getMessage() + ". Caused by: " + loadAdError.getCause());
if (mLoadListener != null) {
mLoadListener.onAdLoadFailed(MoPubErrorCode.ADAPTER_CONFIGURATION_ERROR);
}
mRewardedAd = null;
}
});
MoPubLog.log(getAdNetworkId(), LOAD_ATTEMPTED, ADAPTER_NAME);
}
use of com.google.android.gms.ads.RequestConfiguration in project mopub-android-mediation by mopub.
the class GooglePlayServicesInterstitial method load.
@Override
protected void load(@NonNull final Context context, @NonNull final AdData adData) {
Preconditions.checkNotNull(context);
Preconditions.checkNotNull(adData);
mContext = context;
setAutomaticImpressionAndClickTracking(false);
final Map<String, String> extras = adData.getExtras();
if (extrasAreValid(extras)) {
mAdUnitId = extras.get(AD_UNIT_ID_KEY);
mGooglePlayServicesAdapterConfiguration.setCachedInitializationParameters(context, extras);
} else {
MoPubLog.log(getAdNetworkId(), LOAD_FAILED, ADAPTER_NAME, MoPubErrorCode.NETWORK_NO_FILL.getIntCode(), MoPubErrorCode.NETWORK_NO_FILL);
if (mLoadListener != null) {
mLoadListener.onAdLoadFailed(MoPubErrorCode.NETWORK_NO_FILL);
}
return;
}
final AdRequest.Builder builder = new AdRequest.Builder();
builder.setRequestAgent("MoPub");
// Publishers may append a content URL by passing it to the MoPubInterstitial.setLocalExtras() call.
final String contentUrl = extras.get(CONTENT_URL_KEY);
if (!TextUtils.isEmpty(contentUrl)) {
builder.setContentUrl(contentUrl);
}
forwardNpaIfSet(builder);
final RequestConfiguration.Builder requestConfigurationBuilder = new RequestConfiguration.Builder();
// Publishers may request for test ads by passing test device IDs to the MoPubView.setLocalExtras() call.
final String testDeviceId = extras.get(TEST_DEVICES_KEY);
if (!TextUtils.isEmpty(testDeviceId)) {
requestConfigurationBuilder.setTestDeviceIds(Collections.singletonList(testDeviceId));
}
// Publishers may want to indicate that their content is child-directed and forward this
// information to Google.
final String childDirected = extras.get(TAG_FOR_CHILD_DIRECTED_KEY);
if (childDirected != null) {
if (Boolean.parseBoolean(childDirected)) {
requestConfigurationBuilder.setTagForChildDirectedTreatment(TAG_FOR_CHILD_DIRECTED_TREATMENT_TRUE);
} else {
requestConfigurationBuilder.setTagForChildDirectedTreatment(TAG_FOR_CHILD_DIRECTED_TREATMENT_FALSE);
}
} else {
requestConfigurationBuilder.setTagForChildDirectedTreatment(TAG_FOR_CHILD_DIRECTED_TREATMENT_UNSPECIFIED);
}
// Publishers may want to mark their requests to receive treatment for users in the
// European Economic Area (EEA) under the age of consent.
final String underAgeOfConsent = extras.get(TAG_FOR_UNDER_AGE_OF_CONSENT_KEY);
if (underAgeOfConsent != null) {
if (Boolean.parseBoolean(underAgeOfConsent)) {
requestConfigurationBuilder.setTagForUnderAgeOfConsent(TAG_FOR_UNDER_AGE_OF_CONSENT_TRUE);
} else {
requestConfigurationBuilder.setTagForUnderAgeOfConsent(TAG_FOR_UNDER_AGE_OF_CONSENT_FALSE);
}
} else {
requestConfigurationBuilder.setTagForUnderAgeOfConsent(TAG_FOR_UNDER_AGE_OF_CONSENT_UNSPECIFIED);
}
final RequestConfiguration requestConfiguration = requestConfigurationBuilder.build();
MobileAds.setRequestConfiguration(requestConfiguration);
final AdRequest adRequest = builder.build();
InterstitialAd.load(context, mAdUnitId, adRequest, new InterstitialAdLoadCallback() {
@Override
public void onAdLoaded(@NonNull InterstitialAd interstitialAd) {
Preconditions.checkNotNull(interstitialAd);
mGoogleInterstitialAd = interstitialAd;
MoPubLog.log(getAdNetworkId(), LOAD_SUCCESS, ADAPTER_NAME);
if (mLoadListener != null) {
mLoadListener.onAdLoaded();
}
mGoogleInterstitialAd.setFullScreenContentCallback(new FullScreenContentCallback() {
@Override
public void onAdDismissedFullScreenContent() {
if (mInteractionListener != null) {
mInteractionListener.onAdDismissed();
}
mGoogleInterstitialAd = null;
}
@Override
public void onAdFailedToShowFullScreenContent(@NonNull AdError adError) {
Preconditions.checkNotNull(adError);
MoPubLog.log(getAdNetworkId(), CUSTOM, ADAPTER_NAME, "Failed to show " + "Google interstitial. " + adError.getMessage());
MoPubLog.log(getAdNetworkId(), SHOW_FAILED, ADAPTER_NAME, MoPubErrorCode.NETWORK_NO_FILL.getIntCode(), MoPubErrorCode.NETWORK_NO_FILL);
if (mInteractionListener != null) {
mInteractionListener.onAdFailed(MoPubErrorCode.NETWORK_NO_FILL);
}
mGoogleInterstitialAd = null;
}
@Override
public void onAdShowedFullScreenContent() {
MoPubLog.log(getAdNetworkId(), SHOW_SUCCESS, ADAPTER_NAME);
if (mInteractionListener != null) {
mInteractionListener.onAdShown();
}
}
@Override
public void onAdImpression() {
if (mInteractionListener != null) {
mInteractionListener.onAdImpression();
}
}
});
}
@Override
public void onAdFailedToLoad(@NonNull LoadAdError loadAdError) {
Preconditions.checkNotNull(loadAdError);
MoPubLog.log(getAdNetworkId(), LOAD_FAILED, ADAPTER_NAME, MoPubErrorCode.ADAPTER_CONFIGURATION_ERROR.getIntCode(), MoPubErrorCode.ADAPTER_CONFIGURATION_ERROR);
MoPubLog.log(getAdNetworkId(), CUSTOM, ADAPTER_NAME, "Failed to load Google " + "interstitial. " + loadAdError.getMessage());
if (mLoadListener != null) {
mLoadListener.onAdLoadFailed(MoPubErrorCode.ADAPTER_CONFIGURATION_ERROR);
}
}
});
MoPubLog.log(getAdNetworkId(), LOAD_ATTEMPTED, ADAPTER_NAME);
}
use of com.google.android.gms.ads.RequestConfiguration in project mopub-android-mediation by mopub.
the class GooglePlayServicesBanner method load.
@Override
protected void load(@NonNull final Context context, @NonNull final AdData adData) {
Preconditions.checkNotNull(context);
Preconditions.checkNotNull(adData);
adWidth = adData.getAdWidth();
adHeight = adData.getAdHeight();
final Map<String, String> extras = adData.getExtras();
mAdUnitId = extras.get(AD_UNIT_ID_KEY);
mGoogleAdView = new AdView(context);
mGoogleAdView.setAdListener(new AdViewListener());
mGoogleAdView.setAdUnitId(mAdUnitId);
final AdSize adSize = (adWidth == null || adHeight == null || adWidth <= 0 || adHeight <= 0) ? null : new AdSize(adWidth, adHeight);
if (adSize != null) {
mGoogleAdView.setAdSize(adSize);
} else {
MoPubLog.log(getAdNetworkId(), LOAD_FAILED, ADAPTER_NAME, NETWORK_NO_FILL.getIntCode(), NETWORK_NO_FILL);
if (mLoadListener != null) {
mLoadListener.onAdLoadFailed(NETWORK_NO_FILL);
}
return;
}
final AdRequest.Builder builder = new AdRequest.Builder();
builder.setRequestAgent("MoPub");
// Publishers may append a content URL by passing it to the MoPubView.setLocalExtras() call.
final String contentUrl = extras.get(CONTENT_URL_KEY);
if (!TextUtils.isEmpty(contentUrl)) {
builder.setContentUrl(contentUrl);
}
forwardNpaIfSet(builder);
final RequestConfiguration.Builder requestConfigurationBuilder = new RequestConfiguration.Builder();
// Publishers may request for test ads by passing test device IDs to the MoPubView.setLocalExtras() call.
final String testDeviceId = extras.get(TEST_DEVICES_KEY);
if (!TextUtils.isEmpty(testDeviceId)) {
requestConfigurationBuilder.setTestDeviceIds(Collections.singletonList(testDeviceId));
}
// Publishers may want to indicate that their content is child-directed and forward this
// information to Google.
final String childDirected = extras.get(TAG_FOR_CHILD_DIRECTED_KEY);
if (childDirected != null) {
if (Boolean.parseBoolean(childDirected)) {
requestConfigurationBuilder.setTagForChildDirectedTreatment(TAG_FOR_CHILD_DIRECTED_TREATMENT_TRUE);
} else {
requestConfigurationBuilder.setTagForChildDirectedTreatment(TAG_FOR_CHILD_DIRECTED_TREATMENT_FALSE);
}
} else {
requestConfigurationBuilder.setTagForChildDirectedTreatment(TAG_FOR_CHILD_DIRECTED_TREATMENT_UNSPECIFIED);
}
// Publishers may want to mark their requests to receive treatment for users in the
// European Economic Area (EEA) under the age of consent.
final String underAgeOfConsent = extras.get(TAG_FOR_UNDER_AGE_OF_CONSENT_KEY);
if (underAgeOfConsent != null) {
if (Boolean.parseBoolean(underAgeOfConsent)) {
requestConfigurationBuilder.setTagForUnderAgeOfConsent(TAG_FOR_UNDER_AGE_OF_CONSENT_TRUE);
} else {
requestConfigurationBuilder.setTagForUnderAgeOfConsent(TAG_FOR_UNDER_AGE_OF_CONSENT_FALSE);
}
} else {
requestConfigurationBuilder.setTagForUnderAgeOfConsent(TAG_FOR_UNDER_AGE_OF_CONSENT_UNSPECIFIED);
}
final RequestConfiguration requestConfiguration = requestConfigurationBuilder.build();
MobileAds.setRequestConfiguration(requestConfiguration);
final AdRequest adRequest = builder.build();
mGoogleAdView.loadAd(adRequest);
MoPubLog.log(getAdNetworkId(), LOAD_ATTEMPTED, ADAPTER_NAME);
}
use of com.google.android.gms.ads.RequestConfiguration in project godot-admob-android by Poing-Studios.
the class AdMob method setMobileAdsRequestConfiguration.
private void setMobileAdsRequestConfiguration(boolean pIsForChildDirectedTreatment, String pMaxAdContentRating, boolean pIsReal) {
RequestConfiguration requestConfiguration;
RequestConfiguration.Builder requestConfigurationBuilder = new RequestConfiguration.Builder();
if (!pIsReal) {
requestConfigurationBuilder.setTestDeviceIds(Collections.singletonList(getDeviceId()));
}
requestConfigurationBuilder.setTagForChildDirectedTreatment(pIsForChildDirectedTreatment ? 1 : 0);
if (pIsForChildDirectedTreatment) {
requestConfigurationBuilder.setMaxAdContentRating(RequestConfiguration.MAX_AD_CONTENT_RATING_G);
} else {
switch(pMaxAdContentRating) {
case RequestConfiguration.MAX_AD_CONTENT_RATING_G:
case RequestConfiguration.MAX_AD_CONTENT_RATING_MA:
case RequestConfiguration.MAX_AD_CONTENT_RATING_PG:
case RequestConfiguration.MAX_AD_CONTENT_RATING_T:
case RequestConfiguration.MAX_AD_CONTENT_RATING_UNSPECIFIED:
requestConfigurationBuilder.setMaxAdContentRating(pMaxAdContentRating);
break;
}
}
requestConfiguration = requestConfigurationBuilder.build();
MobileAds.setRequestConfiguration(requestConfiguration);
}
Aggregations