正在查看: Fancy Optimizer v4.6.3 应用的 GoogleAdManagerMediationAdapter.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: Fancy Optimizer v4.6.3 应用的 GoogleAdManagerMediationAdapter.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package com.applovin.mediation.adapters;
import android.annotation.SuppressLint;
import android.app.Activity;
import android.content.Context;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.preference.PreferenceManager;
import android.text.TextUtils;
import android.util.DisplayMetrics;
import android.view.Display;
import android.view.View;
import android.view.WindowManager;
import android.widget.ImageView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import com.adjust.sdk.Constants;
import com.applovin.impl.sdk.utils.AppLovinSdkExtraParameterKey;
import com.applovin.impl.sdk.utils.BundleUtils;
import com.applovin.mediation.MaxAdFormat;
import com.applovin.mediation.MaxReward;
import com.applovin.mediation.adapter.MaxAdViewAdapter;
import com.applovin.mediation.adapter.MaxAdapter;
import com.applovin.mediation.adapter.MaxAdapterError;
import com.applovin.mediation.adapter.MaxInterstitialAdapter;
import com.applovin.mediation.adapter.MaxRewardedAdapter;
import com.applovin.mediation.adapter.MaxRewardedInterstitialAdapter;
import com.applovin.mediation.adapter.listeners.MaxAdViewAdapterListener;
import com.applovin.mediation.adapter.listeners.MaxAppOpenAdapterListener;
import com.applovin.mediation.adapter.listeners.MaxInterstitialAdapterListener;
import com.applovin.mediation.adapter.listeners.MaxNativeAdAdapterListener;
import com.applovin.mediation.adapter.listeners.MaxRewardedAdapterListener;
import com.applovin.mediation.adapter.listeners.MaxRewardedInterstitialAdapterListener;
import com.applovin.mediation.adapter.parameters.MaxAdapterInitializationParameters;
import com.applovin.mediation.adapter.parameters.MaxAdapterParameters;
import com.applovin.mediation.adapter.parameters.MaxAdapterResponseParameters;
import com.applovin.mediation.nativeAds.MaxNativeAd;
import com.applovin.mediation.nativeAds.MaxNativeAdView;
import com.applovin.sdk.AppLovinSdk;
import com.applovin.sdk.AppLovinSdkUtils;
import com.google.ads.mediation.admob.AdMobAdapter;
import com.google.android.gms.ads.AdError;
import com.google.android.gms.ads.AdListener;
import com.google.android.gms.ads.AdLoader;
import com.google.android.gms.ads.AdSize;
import com.google.android.gms.ads.FullScreenContentCallback;
import com.google.android.gms.ads.LoadAdError;
import com.google.android.gms.ads.MediaContent;
import com.google.android.gms.ads.MobileAds;
import com.google.android.gms.ads.OnUserEarnedRewardListener;
import com.google.android.gms.ads.RequestConfiguration;
import com.google.android.gms.ads.ResponseInfo;
import com.google.android.gms.ads.admanager.AdManagerAdRequest;
import com.google.android.gms.ads.admanager.AdManagerAdView;
import com.google.android.gms.ads.admanager.AdManagerInterstitialAd;
import com.google.android.gms.ads.admanager.AdManagerInterstitialAdLoadCallback;
import com.google.android.gms.ads.appopen.AppOpenAd;
import com.google.android.gms.ads.nativead.MediaView;
import com.google.android.gms.ads.nativead.NativeAd;
import com.google.android.gms.ads.nativead.NativeAdOptions;
import com.google.android.gms.ads.nativead.NativeAdView;
import com.google.android.gms.ads.rewarded.RewardItem;
import com.google.android.gms.ads.rewarded.RewardedAd;
import com.google.android.gms.ads.rewarded.RewardedAdLoadCallback;
import com.google.android.gms.ads.rewardedinterstitial.RewardedInterstitialAd;
import com.google.android.gms.ads.rewardedinterstitial.RewardedInterstitialAdLoadCallback;
import java.lang.ref.WeakReference;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.concurrent.atomic.AtomicBoolean;
public class GoogleAdManagerMediationAdapter extends MediationAdapterBase implements MaxInterstitialAdapter, MaxRewardedInterstitialAdapter, MaxRewardedAdapter, MaxAdViewAdapter {
private static final AtomicBoolean initialized = new AtomicBoolean();
private AdManagerAdView adView;
private AppOpenAd appOpenAd;
private AppOpenAdListener appOpenAdListener;
private AdManagerInterstitialAd interstitialAd;
private NativeAd nativeAd;
private NativeAdView nativeAdView;
private RewardedAd rewardedAd;
private RewardedAdListener rewardedAdListener;
private RewardedInterstitialAd rewardedInterstitialAd;
private RewardedInterstitialAdListener rewardedInterstitialAdListener;
public class AdViewListener extends AdListener {
final MaxAdFormat adFormat;
final MaxAdViewAdapterListener listener;
final String placementId;
public AdViewListener(String str, MaxAdFormat maxAdFormat, MaxAdViewAdapterListener maxAdViewAdapterListener) {
this.placementId = str;
this.adFormat = maxAdFormat;
this.listener = maxAdViewAdapterListener;
}
public void onAdClosed() {
GoogleAdManagerMediationAdapter.this.log(this.adFormat.getLabel() + " ad closed");
}
public void onAdFailedToLoad(@NonNull LoadAdError loadAdError) {
MaxAdapterError maxError = GoogleAdManagerMediationAdapter.toMaxError(loadAdError);
GoogleAdManagerMediationAdapter googleAdManagerMediationAdapter = GoogleAdManagerMediationAdapter.this;
StringBuilder sb = new StringBuilder();
android.support.v4.media.b.u(this.adFormat, sb, " ad (");
sb.append(this.placementId);
sb.append(") failed to load with error code: ");
sb.append(maxError);
googleAdManagerMediationAdapter.log(sb.toString());
this.listener.onAdViewAdLoadFailed(maxError);
}
public void onAdImpression() {
GoogleAdManagerMediationAdapter googleAdManagerMediationAdapter = GoogleAdManagerMediationAdapter.this;
StringBuilder sb = new StringBuilder();
android.support.v4.media.b.u(this.adFormat, sb, " ad shown: ");
android.support.v4.media.a.z(sb, this.placementId, googleAdManagerMediationAdapter);
this.listener.onAdViewAdDisplayed();
}
public void onAdLoaded() {
GoogleAdManagerMediationAdapter googleAdManagerMediationAdapter = GoogleAdManagerMediationAdapter.this;
StringBuilder sb = new StringBuilder();
android.support.v4.media.b.u(this.adFormat, sb, " ad loaded: ");
android.support.v4.media.a.z(sb, this.placementId, googleAdManagerMediationAdapter);
if (AppLovinSdk.VERSION_CODE < 9150000) {
this.listener.onAdViewAdLoaded(GoogleAdManagerMediationAdapter.this.adView);
return;
}
Bundle bundle = new Bundle(3);
ResponseInfo responseInfo = GoogleAdManagerMediationAdapter.this.adView.getResponseInfo();
String responseId = responseInfo != null ? responseInfo.getResponseId() : null;
if (AppLovinSdkUtils.isValidString(responseId)) {
bundle.putString("creative_id", responseId);
}
AdSize adSize = GoogleAdManagerMediationAdapter.this.adView.getAdSize();
if (adSize != null) {
bundle.putInt("ad_width", adSize.getWidth());
bundle.putInt("ad_height", adSize.getHeight());
}
this.listener.onAdViewAdLoaded(GoogleAdManagerMediationAdapter.this.adView, bundle);
}
public void onAdOpened() {
GoogleAdManagerMediationAdapter.this.log(this.adFormat.getLabel() + " ad opened");
this.listener.onAdViewAdClicked();
}
}
public class AppOpenAdListener extends FullScreenContentCallback {
private final MaxAppOpenAdapterListener listener;
private final String placementId;
public AppOpenAdListener(String str, MaxAppOpenAdapterListener maxAppOpenAdapterListener) {
this.placementId = str;
this.listener = maxAppOpenAdapterListener;
}
public void onAdClicked() {
android.support.v4.media.a.z(new StringBuilder("App open ad clicked: "), this.placementId, GoogleAdManagerMediationAdapter.this);
this.listener.onAppOpenAdClicked();
}
public void onAdDismissedFullScreenContent() {
android.support.v4.media.a.z(new StringBuilder("App open ad hidden: "), this.placementId, GoogleAdManagerMediationAdapter.this);
this.listener.onAppOpenAdHidden();
}
public void onAdFailedToShowFullScreenContent(@NonNull AdError adError) {
MaxAdapterError maxAdapterError = new MaxAdapterError(MaxAdapterError.ERROR_CODE_AD_DISPLAY_FAILED, "Ad display failed", adError.getCode(), adError.getMessage());
GoogleAdManagerMediationAdapter.this.log("App open ad (" + this.placementId + ") failed to show with error: " + maxAdapterError);
this.listener.onAppOpenAdDisplayFailed(maxAdapterError);
}
public void onAdImpression() {
android.support.v4.media.a.z(new StringBuilder("App open ad impression recorded: "), this.placementId, GoogleAdManagerMediationAdapter.this);
this.listener.onAppOpenAdDisplayed();
}
public void onAdShowedFullScreenContent() {
android.support.v4.media.a.z(new StringBuilder("App open ad shown: "), this.placementId, GoogleAdManagerMediationAdapter.this);
}
}
public class InterstitialAdListener extends FullScreenContentCallback {
private final MaxInterstitialAdapterListener listener;
private final String placementId;
public InterstitialAdListener(String str, MaxInterstitialAdapterListener maxInterstitialAdapterListener) {
this.placementId = str;
this.listener = maxInterstitialAdapterListener;
}
public void onAdClicked() {
android.support.v4.media.a.z(new StringBuilder("Interstitial ad clicked: "), this.placementId, GoogleAdManagerMediationAdapter.this);
this.listener.onInterstitialAdClicked();
}
public void onAdDismissedFullScreenContent() {
android.support.v4.media.a.z(new StringBuilder("Interstitial ad hidden: "), this.placementId, GoogleAdManagerMediationAdapter.this);
this.listener.onInterstitialAdHidden();
}
public void onAdFailedToShowFullScreenContent(@NonNull AdError adError) {
MaxAdapterError maxAdapterError = new MaxAdapterError(MaxAdapterError.ERROR_CODE_AD_DISPLAY_FAILED, "Ad Display Failed", adError.getCode(), adError.getMessage());
GoogleAdManagerMediationAdapter.this.log("Interstitial ad (" + this.placementId + ") failed to show with error: " + maxAdapterError);
this.listener.onInterstitialAdDisplayFailed(maxAdapterError);
}
public void onAdImpression() {
android.support.v4.media.a.z(new StringBuilder("Interstitial ad impression recorded: "), this.placementId, GoogleAdManagerMediationAdapter.this);
this.listener.onInterstitialAdDisplayed();
}
public void onAdShowedFullScreenContent() {
android.support.v4.media.a.z(new StringBuilder("Interstitial ad shown: "), this.placementId, GoogleAdManagerMediationAdapter.this);
}
}
public class MaxGoogleAdManagerNativeAd extends MaxNativeAd {
public MaxGoogleAdManagerNativeAd(MaxNativeAd.Builder builder) {
super(builder);
}
@Override
public void prepareViewForInteraction(MaxNativeAdView maxNativeAdView) {
NativeAd nativeAd = GoogleAdManagerMediationAdapter.this.nativeAd;
if (nativeAd == null) {
GoogleAdManagerMediationAdapter.this.e("Failed to register native ad views: native ad is null.");
return;
}
GoogleAdManagerMediationAdapter.this.nativeAdView = new NativeAdView(maxNativeAdView.getContext());
View mainView = maxNativeAdView.getMainView();
maxNativeAdView.removeView(mainView);
GoogleAdManagerMediationAdapter.this.nativeAdView.addView(mainView);
maxNativeAdView.addView(GoogleAdManagerMediationAdapter.this.nativeAdView);
GoogleAdManagerMediationAdapter.this.nativeAdView.setIconView(maxNativeAdView.getIconImageView());
GoogleAdManagerMediationAdapter.this.nativeAdView.setHeadlineView(maxNativeAdView.getTitleTextView());
GoogleAdManagerMediationAdapter.this.nativeAdView.setAdvertiserView(maxNativeAdView.getAdvertiserTextView());
GoogleAdManagerMediationAdapter.this.nativeAdView.setBodyView(maxNativeAdView.getBodyTextView());
GoogleAdManagerMediationAdapter.this.nativeAdView.setCallToActionView(maxNativeAdView.getCallToActionButton());
MediaView mediaView = getMediaView();
if (mediaView instanceof MediaView) {
GoogleAdManagerMediationAdapter.this.nativeAdView.setMediaView(mediaView);
} else if (mediaView instanceof ImageView) {
GoogleAdManagerMediationAdapter.this.nativeAdView.setImageView(mediaView);
}
GoogleAdManagerMediationAdapter.this.nativeAdView.setNativeAd(nativeAd);
}
}
public class NativeAdListener extends AdListener implements NativeAd.OnNativeAdLoadedListener {
final Context context;
final MaxNativeAdAdapterListener listener;
final String placementId;
final Bundle serverParameters;
public NativeAdListener(MaxAdapterResponseParameters maxAdapterResponseParameters, Context context, MaxNativeAdAdapterListener maxNativeAdAdapterListener) {
this.placementId = maxAdapterResponseParameters.getThirdPartyAdPlacementId();
this.serverParameters = maxAdapterResponseParameters.getServerParameters();
this.context = context;
this.listener = maxNativeAdAdapterListener;
}
public void onAdClicked() {
GoogleAdManagerMediationAdapter.this.log("Native ad clicked");
this.listener.onNativeAdClicked();
}
public void onAdClosed() {
GoogleAdManagerMediationAdapter.this.log("Native ad closed");
}
public void onAdFailedToLoad(@NonNull LoadAdError loadAdError) {
MaxAdapterError maxError = GoogleAdManagerMediationAdapter.toMaxError(loadAdError);
GoogleAdManagerMediationAdapter.this.log("Native ad (" + this.placementId + ") failed to load with error: " + maxError);
this.listener.onNativeAdLoadFailed(maxError);
}
public void onAdImpression() {
GoogleAdManagerMediationAdapter.this.log("Native ad shown");
this.listener.onNativeAdDisplayed(null);
}
public void onAdOpened() {
GoogleAdManagerMediationAdapter.this.log("Native ad opened");
}
public void onNativeAdLoaded(@NonNull final NativeAd nativeAd) {
android.support.v4.media.a.z(new StringBuilder("Native ad loaded: "), this.placementId, GoogleAdManagerMediationAdapter.this);
GoogleAdManagerMediationAdapter.this.nativeAd = nativeAd;
if (!AppLovinSdkUtils.isValidString(BundleUtils.getString("template", "", this.serverParameters)) || !TextUtils.isEmpty(nativeAd.getHeadline())) {
AppLovinSdkUtils.runOnUiThread(new Runnable() {
@Override
public void run() {
float f2;
MediaView mediaView;
Drawable drawable;
MediaContent mediaContent = nativeAd.getMediaContent();
List images = nativeAd.getImages();
if (mediaContent != null) {
mediaView = new MediaView(NativeAdListener.this.context);
mediaView.setMediaContent(mediaContent);
drawable = mediaContent.getMainImage();
f2 = mediaContent.getAspectRatio();
} else {
if (images != null && images.size() > 0) {
NativeAd.Image image = (NativeAd.Image) images.get(0);
mediaView = new ImageView(NativeAdListener.this.context);
if (image.getDrawable() != null) {
mediaView.setImageDrawable(image.getDrawable());
f2 = r3.getIntrinsicWidth() / r3.getIntrinsicHeight();
drawable = null;
}
}
f2 = 0.0f;
mediaView = null;
drawable = null;
}
NativeAd.Image icon = nativeAd.getIcon();
MaxNativeAd.Builder callToAction = new MaxNativeAd.Builder().setAdFormat(MaxAdFormat.NATIVE).setIcon(icon != null ? icon.getDrawable() != null ? new MaxNativeAd.MaxNativeAdImage(icon.getDrawable()) : new MaxNativeAd.MaxNativeAdImage(icon.getUri()) : null).setTitle(nativeAd.getHeadline()).setAdvertiser(nativeAd.getAdvertiser()).setBody(nativeAd.getBody()).setMediaView(mediaView).setCallToAction(nativeAd.getCallToAction());
int i2 = AppLovinSdk.VERSION_CODE;
if (i2 >= 11040399) {
callToAction.setMainImage(new MaxNativeAd.MaxNativeAdImage(drawable));
}
if (i2 >= 11040000) {
callToAction.setMediaContentAspectRatio(f2);
}
if (i2 >= 11070000) {
callToAction.setStarRating(nativeAd.getStarRating());
}
MaxGoogleAdManagerNativeAd maxGoogleAdManagerNativeAd = GoogleAdManagerMediationAdapter.this.new MaxGoogleAdManagerNativeAd(callToAction);
ResponseInfo responseInfo = nativeAd.getResponseInfo();
String responseId = responseInfo != null ? responseInfo.getResponseId() : null;
Bundle bundle = new Bundle(1);
bundle.putString("creative_id", responseId);
NativeAdListener.this.listener.onNativeAdLoaded(maxGoogleAdManagerNativeAd, bundle);
}
});
return;
}
GoogleAdManagerMediationAdapter.this.e("Native ad (" + nativeAd + ") does not have required assets.");
this.listener.onNativeAdLoadFailed(new MaxAdapterError(MaxAdapterError.ERROR_CODE_MISSING_REQUIRED_NATIVE_AD_ASSETS, "Missing Native Ad Assets"));
}
}
public class NativeAdViewListener extends AdListener implements NativeAd.OnNativeAdLoadedListener {
final WeakReference<Activity> activityRef;
final MaxAdFormat adFormat;
final MaxAdViewAdapterListener listener;
final String placementId;
final Bundle serverParameters;
public NativeAdViewListener(MaxAdapterResponseParameters maxAdapterResponseParameters, MaxAdFormat maxAdFormat, Activity activity, MaxAdViewAdapterListener maxAdViewAdapterListener) {
this.placementId = maxAdapterResponseParameters.getThirdPartyAdPlacementId();
this.serverParameters = maxAdapterResponseParameters.getServerParameters();
this.activityRef = new WeakReference<>(activity);
this.adFormat = maxAdFormat;
this.listener = maxAdViewAdapterListener;
}
public void onAdClicked() {
GoogleAdManagerMediationAdapter.this.log("Native " + this.adFormat.getLabel() + " ad clicked");
this.listener.onAdViewAdClicked();
}
public void onAdClosed() {
GoogleAdManagerMediationAdapter.this.log("Native " + this.adFormat.getLabel() + " ad closed");
this.listener.onAdViewAdCollapsed();
}
public void onAdFailedToLoad(@NonNull LoadAdError loadAdError) {
MaxAdapterError maxError = GoogleAdManagerMediationAdapter.toMaxError(loadAdError);
GoogleAdManagerMediationAdapter googleAdManagerMediationAdapter = GoogleAdManagerMediationAdapter.this;
StringBuilder sb = new StringBuilder("Native ");
android.support.v4.media.b.u(this.adFormat, sb, " ad (");
sb.append(this.placementId);
sb.append(") failed to load with error: ");
sb.append(maxError);
googleAdManagerMediationAdapter.log(sb.toString());
this.listener.onAdViewAdLoadFailed(maxError);
}
public void onAdImpression() {
GoogleAdManagerMediationAdapter.this.log("Native " + this.adFormat.getLabel() + " ad shown");
this.listener.onAdViewAdDisplayed();
}
public void onAdOpened() {
GoogleAdManagerMediationAdapter.this.log("Native " + this.adFormat.getLabel() + " ad opened");
this.listener.onAdViewAdExpanded();
}
public void onNativeAdLoaded(@NonNull final NativeAd nativeAd) {
GoogleAdManagerMediationAdapter googleAdManagerMediationAdapter = GoogleAdManagerMediationAdapter.this;
StringBuilder sb = new StringBuilder("Native ");
android.support.v4.media.b.u(this.adFormat, sb, " ad loaded: ");
sb.append(this.placementId);
googleAdManagerMediationAdapter.log(sb.toString());
if (TextUtils.isEmpty(nativeAd.getHeadline())) {
GoogleAdManagerMediationAdapter.this.log("Native " + this.adFormat.getLabel() + " ad failed to load: Google native ad is missing one or more required assets");
this.listener.onAdViewAdLoadFailed(MaxAdapterError.INVALID_CONFIGURATION);
nativeAd.destroy();
return;
}
GoogleAdManagerMediationAdapter.this.nativeAd = nativeAd;
final Activity activity = this.activityRef.get();
final Context context = GoogleAdManagerMediationAdapter.this.getContext(activity);
final View mediaView = new MediaView(context);
MediaContent mediaContent = nativeAd.getMediaContent();
if (mediaContent != null) {
mediaView.setMediaContent(mediaContent);
}
NativeAd.Image icon = nativeAd.getIcon();
final MaxNativeAd build = new MaxNativeAd.Builder().setAdFormat(this.adFormat).setIcon(icon != null ? icon.getDrawable() != null ? new MaxNativeAd.MaxNativeAdImage(icon.getDrawable()) : new MaxNativeAd.MaxNativeAdImage(icon.getUri()) : null).setTitle(nativeAd.getHeadline()).setBody(nativeAd.getBody()).setMediaView(mediaView).setCallToAction(nativeAd.getCallToAction()).build();
final String string = BundleUtils.getString("template", "", this.serverParameters);
if (string.contains("vertical") && AppLovinSdk.VERSION_CODE < 9140500) {
GoogleAdManagerMediationAdapter.this.log("Vertical native banners are only supported on MAX SDK 9.14.5 and above. Default native template will be used.");
}
AppLovinSdkUtils.runOnUiThread(new Runnable() {
@Override
public void run() {
MaxNativeAdView maxNativeAdView;
int i2 = AppLovinSdk.VERSION_CODE;
if (i2 < 9140000) {
GoogleAdManagerMediationAdapter.this.log("Native ads with media views are only supported on MAX SDK version 9.14.0 and above. Default native template will be used.");
maxNativeAdView = new MaxNativeAdView(build, activity);
} else {
maxNativeAdView = i2 >= 11010000 ? new MaxNativeAdView(build, string, context) : new MaxNativeAdView(build, string, activity);
}
GoogleAdManagerMediationAdapter.this.nativeAdView = new NativeAdView(context);
GoogleAdManagerMediationAdapter.this.nativeAdView.setIconView(maxNativeAdView.getIconContentView());
GoogleAdManagerMediationAdapter.this.nativeAdView.setHeadlineView(maxNativeAdView.getTitleTextView());
GoogleAdManagerMediationAdapter.this.nativeAdView.setBodyView(maxNativeAdView.getBodyTextView());
GoogleAdManagerMediationAdapter.this.nativeAdView.setMediaView(mediaView);
GoogleAdManagerMediationAdapter.this.nativeAdView.setCallToActionView(maxNativeAdView.getCallToActionButton());
GoogleAdManagerMediationAdapter.this.nativeAdView.setNativeAd(nativeAd);
GoogleAdManagerMediationAdapter.this.nativeAdView.addView(maxNativeAdView);
ResponseInfo responseInfo = nativeAd.getResponseInfo();
String responseId = responseInfo != null ? responseInfo.getResponseId() : null;
if (i2 < 9150000 || !AppLovinSdkUtils.isValidString(responseId)) {
NativeAdViewListener nativeAdViewListener = NativeAdViewListener.this;
nativeAdViewListener.listener.onAdViewAdLoaded(GoogleAdManagerMediationAdapter.this.nativeAdView);
} else {
Bundle bundle = new Bundle(1);
bundle.putString("creative_id", responseId);
NativeAdViewListener nativeAdViewListener2 = NativeAdViewListener.this;
nativeAdViewListener2.listener.onAdViewAdLoaded(GoogleAdManagerMediationAdapter.this.nativeAdView, bundle);
}
}
});
}
}
public class RewardedAdListener extends FullScreenContentCallback {
private boolean hasGrantedReward;
private final MaxRewardedAdapterListener listener;
private final String placementId;
public RewardedAdListener(String str, MaxRewardedAdapterListener maxRewardedAdapterListener) {
this.placementId = str;
this.listener = maxRewardedAdapterListener;
}
public void onAdClicked() {
android.support.v4.media.a.z(new StringBuilder("Rewarded ad clicked: "), this.placementId, GoogleAdManagerMediationAdapter.this);
this.listener.onRewardedAdClicked();
}
public void onAdDismissedFullScreenContent() {
this.listener.onRewardedAdVideoCompleted();
if (this.hasGrantedReward || GoogleAdManagerMediationAdapter.this.shouldAlwaysRewardUser()) {
MaxReward reward = GoogleAdManagerMediationAdapter.this.getReward();
GoogleAdManagerMediationAdapter.this.log("Rewarded user with reward: " + reward);
this.listener.onUserRewarded(reward);
}
android.support.v4.media.a.z(new StringBuilder("Rewarded ad hidden: "), this.placementId, GoogleAdManagerMediationAdapter.this);
this.listener.onRewardedAdHidden();
}
public void onAdFailedToShowFullScreenContent(@NonNull AdError adError) {
MaxAdapterError maxAdapterError = new MaxAdapterError(MaxAdapterError.ERROR_CODE_AD_DISPLAY_FAILED, "Ad Display Failed", adError.getCode(), adError.getMessage());
GoogleAdManagerMediationAdapter.this.log("Rewarded ad (" + this.placementId + ") failed to show with error: " + maxAdapterError);
this.listener.onRewardedAdDisplayFailed(maxAdapterError);
}
public void onAdImpression() {
android.support.v4.media.a.z(new StringBuilder("Rewarded ad impression recorded: "), this.placementId, GoogleAdManagerMediationAdapter.this);
this.listener.onRewardedAdDisplayed();
}
public void onAdShowedFullScreenContent() {
android.support.v4.media.a.z(new StringBuilder("Rewarded ad shown: "), this.placementId, GoogleAdManagerMediationAdapter.this);
this.listener.onRewardedAdVideoStarted();
}
}
public class RewardedInterstitialAdListener extends FullScreenContentCallback {
private boolean hasGrantedReward;
private final MaxRewardedInterstitialAdapterListener listener;
private final String placementId;
public void onAdClicked() {
android.support.v4.media.a.z(new StringBuilder("Rewarded interstitial ad clicked"), this.placementId, GoogleAdManagerMediationAdapter.this);
this.listener.onRewardedInterstitialAdClicked();
}
public void onAdDismissedFullScreenContent() {
this.listener.onRewardedInterstitialAdVideoCompleted();
if (this.hasGrantedReward || GoogleAdManagerMediationAdapter.this.shouldAlwaysRewardUser()) {
MaxReward reward = GoogleAdManagerMediationAdapter.this.getReward();
GoogleAdManagerMediationAdapter.this.log("Rewarded interstitial ad rewarded user with reward: " + reward);
this.listener.onUserRewarded(reward);
}
android.support.v4.media.a.z(new StringBuilder("Rewarded interstitial ad hidden: "), this.placementId, GoogleAdManagerMediationAdapter.this);
this.listener.onRewardedInterstitialAdHidden();
}
public void onAdFailedToShowFullScreenContent(@NonNull AdError adError) {
MaxAdapterError maxAdapterError = new MaxAdapterError(MaxAdapterError.ERROR_CODE_AD_DISPLAY_FAILED, "Ad Display Failed", adError.getCode(), adError.getMessage());
GoogleAdManagerMediationAdapter.this.log("Rewarded interstitial ad (" + this.placementId + ") failed to show with error: " + maxAdapterError);
this.listener.onRewardedInterstitialAdDisplayFailed(maxAdapterError);
}
public void onAdImpression() {
android.support.v4.media.a.z(new StringBuilder("Rewarded interstitial ad impression recorded: "), this.placementId, GoogleAdManagerMediationAdapter.this);
this.listener.onRewardedInterstitialAdDisplayed();
}
public void onAdShowedFullScreenContent() {
android.support.v4.media.a.z(new StringBuilder("Rewarded interstitial ad shown: "), this.placementId, GoogleAdManagerMediationAdapter.this);
this.listener.onRewardedInterstitialAdVideoStarted();
}
private RewardedInterstitialAdListener(String str, MaxRewardedInterstitialAdapterListener maxRewardedInterstitialAdapterListener) {
this.placementId = str;
this.listener = maxRewardedInterstitialAdapterListener;
}
}
public GoogleAdManagerMediationAdapter(AppLovinSdk appLovinSdk) {
super(appLovinSdk);
}
private AdManagerAdRequest createAdRequestWithParameters(MaxAdapterParameters maxAdapterParameters, Context context) {
Boolean privacySetting;
AdManagerAdRequest.Builder builder = new AdManagerAdRequest.Builder();
Bundle serverParameters = maxAdapterParameters.getServerParameters();
if (serverParameters.getBoolean("set_mediation_identifier", true)) {
builder.setRequestAgent(MediationAdapterBase.mediationTag());
}
Bundle bundle = new Bundle();
String string = BundleUtils.getString("event_id", serverParameters);
if (AppLovinSdkUtils.isValidString(string)) {
bundle.putString("placement_req_id", string);
}
Boolean privacySetting2 = getPrivacySetting("hasUserConsent", maxAdapterParameters);
if (privacySetting2 != null && !privacySetting2.booleanValue()) {
bundle.putString("npa", "1");
}
int i2 = AppLovinSdk.VERSION_CODE;
if (i2 >= 91100 && (privacySetting = getPrivacySetting("isDoNotSell", maxAdapterParameters)) != null && privacySetting.booleanValue()) {
bundle.putInt("rdp", 1);
PreferenceManager.getDefaultSharedPreferences(context).edit().putInt("gad_rdp", 1).commit();
}
if (i2 >= 11000000) {
Map<String, Object> localExtraParameters = maxAdapterParameters.getLocalExtraParameters();
Object obj = localExtraParameters.get("google_max_ad_content_rating");
if (obj instanceof String) {
bundle.putString("max_ad_content_rating", (String) obj);
}
Object obj2 = localExtraParameters.get("google_content_url");
if (obj2 instanceof String) {
builder.setContentUrl((String) obj2);
}
Object obj3 = localExtraParameters.get("google_neighbouring_content_url_strings");
if (obj3 instanceof List) {
try {
builder.setNeighboringContentUrls((List) obj3);
} catch (Throwable th) {
e("Neighbouring content URL strings extra param needs to be of type List<String>.", th);
}
}
Object obj4 = localExtraParameters.get("ppid");
if (obj4 instanceof String) {
builder.setPublisherProvidedId((String) obj4);
}
Object obj5 = localExtraParameters.get("custom_targeting");
if (obj5 instanceof Map) {
try {
Map map = (Map) obj5;
for (String str : map.keySet()) {
Object obj6 = map.get(str);
if (obj6 instanceof String) {
builder.addCustomTargeting(str, (String) obj6);
} else if (obj6 instanceof List) {
builder.addCustomTargeting(str, (List) obj6);
} else {
e("Object in the map needs to be either of type String or List<String>.");
}
}
} catch (Throwable th2) {
e("Custom targeting extra param value needs to be of type Map<String, Object>.", th2);
}
}
}
builder.addNetworkExtrasBundle(AdMobAdapter.class, bundle);
return builder.build();
}
private int getAdChoicesPlacement(MaxAdapterResponseParameters maxAdapterResponseParameters) {
if (AppLovinSdk.VERSION_CODE < 11000000) {
return 1;
}
Map<String, Object> localExtraParameters = maxAdapterResponseParameters.getLocalExtraParameters();
Object obj = localExtraParameters != null ? localExtraParameters.get("gam_ad_choices_placement") : null;
if (isValidAdChoicesPlacement(obj)) {
return ((Integer) obj).intValue();
}
return 1;
}
private int getAdaptiveBannerWidth(MaxAdapterParameters maxAdapterParameters, Context context) {
if (AppLovinSdk.VERSION_CODE >= 11000000) {
Object obj = maxAdapterParameters.getLocalExtraParameters().get("adaptive_banner_width");
if (obj instanceof Integer) {
return ((Integer) obj).intValue();
}
if (obj != null) {
e("Expected parameter \"adaptive_banner_width\" to be of type Integer, received: " + obj.getClass());
}
}
Display defaultDisplay = ((WindowManager) context.getSystemService("window")).getDefaultDisplay();
DisplayMetrics displayMetrics = new DisplayMetrics();
defaultDisplay.getMetrics(displayMetrics);
return AppLovinSdkUtils.pxToDp(context, displayMetrics.widthPixels);
}
public Context getContext(@Nullable Activity activity) {
return activity != null ? activity.getApplicationContext() : getApplicationContext();
}
private Boolean getPrivacySetting(String str, MaxAdapterParameters maxAdapterParameters) {
try {
return (Boolean) maxAdapterParameters.getClass().getMethod(str, new Class[0]).invoke(maxAdapterParameters, new Object[0]);
} catch (Exception e2) {
log("Error getting privacy setting " + str + " with exception: ", e2);
if (AppLovinSdk.VERSION_CODE >= 9140000) {
return null;
}
return Boolean.FALSE;
}
}
private boolean isValidAdChoicesPlacement(Object obj) {
if (obj instanceof Integer) {
Integer num = (Integer) obj;
if (num.intValue() == 0 || num.intValue() == 1 || num.intValue() == 3 || num.intValue() == 2) {
return true;
}
}
return false;
}
private void setRequestConfiguration(MaxAdapterParameters maxAdapterParameters) {
RequestConfiguration.Builder builder = MobileAds.getRequestConfiguration().toBuilder();
Boolean privacySetting = getPrivacySetting("isAgeRestrictedUser", maxAdapterParameters);
if (privacySetting != null) {
builder.setTagForChildDirectedTreatment(privacySetting.booleanValue() ? 1 : 0);
}
String string = maxAdapterParameters.getServerParameters().getString("test_device_ids", null);
if (!TextUtils.isEmpty(string)) {
builder.setTestDeviceIds(Arrays.asList(string.split(",")));
}
MobileAds.setRequestConfiguration(builder.build());
}
private AdSize toAdSize(MaxAdFormat maxAdFormat, boolean z, MaxAdapterParameters maxAdapterParameters, Context context) {
MaxAdFormat maxAdFormat2 = MaxAdFormat.BANNER;
if (maxAdFormat == maxAdFormat2 || maxAdFormat == MaxAdFormat.LEADER) {
return z ? AdSize.getCurrentOrientationAnchoredAdaptiveBannerAdSize(context, getAdaptiveBannerWidth(maxAdapterParameters, context)) : maxAdFormat == maxAdFormat2 ? AdSize.BANNER : AdSize.LEADERBOARD;
}
if (maxAdFormat == MaxAdFormat.MREC) {
return AdSize.MEDIUM_RECTANGLE;
}
throw new IllegalArgumentException("Unsupported ad format: " + maxAdFormat);
}
public static MaxAdapterError toMaxError(AdError adError) {
int code = adError.getCode();
MaxAdapterError maxAdapterError = MaxAdapterError.UNSPECIFIED;
if (code != 0) {
if (code != 1) {
if (code != 2) {
if (code != 3) {
switch (code) {
case 8:
case 11:
maxAdapterError = MaxAdapterError.INVALID_CONFIGURATION;
break;
}
}
maxAdapterError = MaxAdapterError.NO_FILL;
} else {
maxAdapterError = MaxAdapterError.NO_CONNECTION;
}
}
maxAdapterError = MaxAdapterError.BAD_REQUEST;
} else {
maxAdapterError = MaxAdapterError.INTERNAL_ERROR;
}
return new MaxAdapterError(maxAdapterError.getErrorCode(), maxAdapterError.getErrorMessage(), code, adError.getMessage());
}
private static void updateMuteState(MaxAdapterResponseParameters maxAdapterResponseParameters) {
Bundle serverParameters = maxAdapterResponseParameters.getServerParameters();
if (serverParameters.containsKey("is_muted")) {
MobileAds.setAppMuted(serverParameters.getBoolean("is_muted"));
}
}
@Override
public String getAdapterVersion() {
return "21.5.0.2";
}
@Override
public String getSdkVersion() {
return getAdapterVersion().substring(0, getAdapterVersion().lastIndexOf(46));
}
@Override
@SuppressLint({"MissingPermission"})
public void initialize(MaxAdapterInitializationParameters maxAdapterInitializationParameters, Activity activity, MaxAdapter.OnCompletionListener onCompletionListener) {
log("Initializing Google Ad Manager SDK...");
if (initialized.compareAndSet(false, true)) {
MobileAds.initialize(getContext(activity));
}
onCompletionListener.onCompletion(MaxAdapter.InitializationStatus.DOES_NOT_APPLY, null);
}
@Override
@SuppressLint({"MissingPermission"})
public void loadAdViewAd(MaxAdapterResponseParameters maxAdapterResponseParameters, MaxAdFormat maxAdFormat, Activity activity, MaxAdViewAdapterListener maxAdViewAdapterListener) {
String thirdPartyAdPlacementId = maxAdapterResponseParameters.getThirdPartyAdPlacementId();
boolean z = maxAdapterResponseParameters.getServerParameters().getBoolean("is_native");
StringBuilder sb = new StringBuilder("Loading ");
sb.append(z ? "native " : "");
sb.append(maxAdFormat.getLabel());
sb.append(" ad for placement id: ");
sb.append(thirdPartyAdPlacementId);
android.support.v4.media.a.z(sb, "...", this);
setRequestConfiguration(maxAdapterResponseParameters);
Context context = getContext(activity);
AdManagerAdRequest createAdRequestWithParameters = createAdRequestWithParameters(maxAdapterResponseParameters, context);
if (z) {
NativeAdOptions.Builder builder = new NativeAdOptions.Builder();
builder.setAdChoicesPlacement(getAdChoicesPlacement(maxAdapterResponseParameters));
builder.setRequestMultipleImages(maxAdFormat == MaxAdFormat.MREC);
NativeAdViewListener nativeAdViewListener = new NativeAdViewListener(maxAdapterResponseParameters, maxAdFormat, activity, maxAdViewAdapterListener);
new AdLoader.Builder(context, thirdPartyAdPlacementId).withNativeAdOptions(builder.build()).forNativeAd(nativeAdViewListener).withAdListener(nativeAdViewListener).build().loadAd(createAdRequestWithParameters);
return;
}
AdManagerAdView adManagerAdView = new AdManagerAdView(context);
this.adView = adManagerAdView;
adManagerAdView.setAdUnitId(thirdPartyAdPlacementId);
this.adView.setAdListener(new AdViewListener(thirdPartyAdPlacementId, maxAdFormat, maxAdViewAdapterListener));
this.adView.setAdSize(toAdSize(maxAdFormat, maxAdapterResponseParameters.getServerParameters().getBoolean(AppLovinSdkExtraParameterKey.IS_ADAPTIVE_BANNER, false), maxAdapterResponseParameters, context));
this.adView.loadAd(createAdRequestWithParameters);
}
@Override
public void loadAppOpenAd(MaxAdapterResponseParameters maxAdapterResponseParameters, @Nullable Activity activity, final MaxAppOpenAdapterListener maxAppOpenAdapterListener) {
final String thirdPartyAdPlacementId = maxAdapterResponseParameters.getThirdPartyAdPlacementId();
log("Loading app open ad: " + thirdPartyAdPlacementId + "...");
updateMuteState(maxAdapterResponseParameters);
setRequestConfiguration(maxAdapterResponseParameters);
AdManagerAdRequest createAdRequestWithParameters = createAdRequestWithParameters(maxAdapterResponseParameters, activity);
Context context = getContext(activity);
AppOpenAd.load(context, thirdPartyAdPlacementId, createAdRequestWithParameters, AppLovinSdkUtils.getOrientation(context), new AppOpenAd.AppOpenAdLoadCallback() {
public void onAdFailedToLoad(LoadAdError loadAdError) {
MaxAdapterError maxError = GoogleAdManagerMediationAdapter.toMaxError(loadAdError);
GoogleAdManagerMediationAdapter.this.log("App open ad (" + thirdPartyAdPlacementId + ") failed to load with error: " + maxError);
maxAppOpenAdapterListener.onAppOpenAdLoadFailed(maxError);
}
public void onAdLoaded(AppOpenAd appOpenAd) {
GoogleAdManagerMediationAdapter.this.log("App open ad loaded: " + thirdPartyAdPlacementId + "...");
GoogleAdManagerMediationAdapter.this.appOpenAd = appOpenAd;
GoogleAdManagerMediationAdapter googleAdManagerMediationAdapter = GoogleAdManagerMediationAdapter.this;
googleAdManagerMediationAdapter.appOpenAdListener = googleAdManagerMediationAdapter.new AppOpenAdListener(thirdPartyAdPlacementId, maxAppOpenAdapterListener);
appOpenAd.setFullScreenContentCallback(GoogleAdManagerMediationAdapter.this.appOpenAdListener);
ResponseInfo responseInfo = GoogleAdManagerMediationAdapter.this.appOpenAd.getResponseInfo();
String responseId = responseInfo != null ? responseInfo.getResponseId() : null;
if (!AppLovinSdkUtils.isValidString(responseId)) {
maxAppOpenAdapterListener.onAppOpenAdLoaded();
return;
}
Bundle bundle = new Bundle(1);
bundle.putString("creative_id", responseId);
maxAppOpenAdapterListener.onAppOpenAdLoaded(bundle);
}
});
}
@Override
public void loadInterstitialAd(MaxAdapterResponseParameters maxAdapterResponseParameters, Activity activity, final MaxInterstitialAdapterListener maxInterstitialAdapterListener) {
final String thirdPartyAdPlacementId = maxAdapterResponseParameters.getThirdPartyAdPlacementId();
log("Loading interstitial ad: " + thirdPartyAdPlacementId + "...");
updateMuteState(maxAdapterResponseParameters);
setRequestConfiguration(maxAdapterResponseParameters);
AdManagerInterstitialAd.load(activity, thirdPartyAdPlacementId, createAdRequestWithParameters(maxAdapterResponseParameters, activity), new AdManagerInterstitialAdLoadCallback() {
public void onAdFailedToLoad(@NonNull LoadAdError loadAdError) {
MaxAdapterError maxError = GoogleAdManagerMediationAdapter.toMaxError(loadAdError);
GoogleAdManagerMediationAdapter.this.log("Interstitial ad (" + thirdPartyAdPlacementId + ") failed to load with error: " + maxError);
maxInterstitialAdapterListener.onInterstitialAdLoadFailed(maxError);
}
public void onAdLoaded(@NonNull AdManagerInterstitialAd adManagerInterstitialAd) {
GoogleAdManagerMediationAdapter.this.log("Interstitial ad loaded: " + thirdPartyAdPlacementId + "...");
GoogleAdManagerMediationAdapter.this.interstitialAd = adManagerInterstitialAd;
GoogleAdManagerMediationAdapter.this.interstitialAd.setFullScreenContentCallback(GoogleAdManagerMediationAdapter.this.new InterstitialAdListener(thirdPartyAdPlacementId, maxInterstitialAdapterListener));
ResponseInfo responseInfo = GoogleAdManagerMediationAdapter.this.interstitialAd.getResponseInfo();
String responseId = responseInfo != null ? responseInfo.getResponseId() : null;
if (AppLovinSdk.VERSION_CODE < 9150000 || !AppLovinSdkUtils.isValidString(responseId)) {
maxInterstitialAdapterListener.onInterstitialAdLoaded();
return;
}
Bundle bundle = new Bundle(1);
bundle.putString("creative_id", responseId);
maxInterstitialAdapterListener.onInterstitialAdLoaded(bundle);
}
});
}
@Override
@SuppressLint({"MissingPermission"})
public void loadNativeAd(MaxAdapterResponseParameters maxAdapterResponseParameters, Activity activity, MaxNativeAdAdapterListener maxNativeAdAdapterListener) {
String thirdPartyAdPlacementId = maxAdapterResponseParameters.getThirdPartyAdPlacementId();
log("Loading native ad for placement id: " + thirdPartyAdPlacementId + "...");
setRequestConfiguration(maxAdapterResponseParameters);
Context context = getContext(activity);
AdManagerAdRequest createAdRequestWithParameters = createAdRequestWithParameters(maxAdapterResponseParameters, context);
NativeAdOptions.Builder builder = new NativeAdOptions.Builder();
builder.setAdChoicesPlacement(getAdChoicesPlacement(maxAdapterResponseParameters));
builder.setRequestMultipleImages(BundleUtils.getString("template", "", maxAdapterResponseParameters.getServerParameters()).contains(Constants.MEDIUM));
NativeAdListener nativeAdListener = new NativeAdListener(maxAdapterResponseParameters, context, maxNativeAdAdapterListener);
new AdLoader.Builder(context, thirdPartyAdPlacementId).withNativeAdOptions(builder.build()).forNativeAd(nativeAdListener).withAdListener(nativeAdListener).build().loadAd(createAdRequestWithParameters);
}
@Override
public void loadRewardedAd(MaxAdapterResponseParameters maxAdapterResponseParameters, Activity activity, final MaxRewardedAdapterListener maxRewardedAdapterListener) {
final String thirdPartyAdPlacementId = maxAdapterResponseParameters.getThirdPartyAdPlacementId();
log("Loading rewarded ad: " + thirdPartyAdPlacementId + "...");
updateMuteState(maxAdapterResponseParameters);
setRequestConfiguration(maxAdapterResponseParameters);
RewardedAd.load(activity, thirdPartyAdPlacementId, createAdRequestWithParameters(maxAdapterResponseParameters, activity), new RewardedAdLoadCallback() {
public void onAdFailedToLoad(@NonNull LoadAdError loadAdError) {
MaxAdapterError maxError = GoogleAdManagerMediationAdapter.toMaxError(loadAdError);
GoogleAdManagerMediationAdapter.this.log("Rewarded ad (" + thirdPartyAdPlacementId + ") failed to load with error: " + maxError);
maxRewardedAdapterListener.onRewardedAdLoadFailed(maxError);
}
public void onAdLoaded(@NonNull RewardedAd rewardedAd) {
GoogleAdManagerMediationAdapter.this.log("Rewarded ad loaded: " + thirdPartyAdPlacementId + "...");
GoogleAdManagerMediationAdapter.this.rewardedAd = rewardedAd;
GoogleAdManagerMediationAdapter googleAdManagerMediationAdapter = GoogleAdManagerMediationAdapter.this;
googleAdManagerMediationAdapter.rewardedAdListener = googleAdManagerMediationAdapter.new RewardedAdListener(thirdPartyAdPlacementId, maxRewardedAdapterListener);
GoogleAdManagerMediationAdapter.this.rewardedAd.setFullScreenContentCallback(GoogleAdManagerMediationAdapter.this.rewardedAdListener);
ResponseInfo responseInfo = GoogleAdManagerMediationAdapter.this.rewardedAd.getResponseInfo();
String responseId = responseInfo != null ? responseInfo.getResponseId() : null;
if (AppLovinSdk.VERSION_CODE < 9150000 || !AppLovinSdkUtils.isValidString(responseId)) {
maxRewardedAdapterListener.onRewardedAdLoaded();
return;
}
Bundle bundle = new Bundle(1);
bundle.putString("creative_id", responseId);
maxRewardedAdapterListener.onRewardedAdLoaded(bundle);
}
});
}
@Override
public void loadRewardedInterstitialAd(MaxAdapterResponseParameters maxAdapterResponseParameters, Activity activity, final MaxRewardedInterstitialAdapterListener maxRewardedInterstitialAdapterListener) {
final String thirdPartyAdPlacementId = maxAdapterResponseParameters.getThirdPartyAdPlacementId();
log("Loading rewarded interstitial ad: " + thirdPartyAdPlacementId + "...");
updateMuteState(maxAdapterResponseParameters);
setRequestConfiguration(maxAdapterResponseParameters);
RewardedInterstitialAd.load(activity, thirdPartyAdPlacementId, createAdRequestWithParameters(maxAdapterResponseParameters, activity), new RewardedInterstitialAdLoadCallback() {
public void onAdFailedToLoad(@NonNull LoadAdError loadAdError) {
MaxAdapterError maxError = GoogleAdManagerMediationAdapter.toMaxError(loadAdError);
GoogleAdManagerMediationAdapter.this.log("Rewarded interstitial ad (" + thirdPartyAdPlacementId + ") failed to load with error: " + maxError);
maxRewardedInterstitialAdapterListener.onRewardedInterstitialAdLoadFailed(maxError);
}
public void onAdLoaded(@NonNull RewardedInterstitialAd rewardedInterstitialAd) {
android.support.v4.media.a.z(new StringBuilder("Rewarded interstitial ad loaded: "), thirdPartyAdPlacementId, GoogleAdManagerMediationAdapter.this);
GoogleAdManagerMediationAdapter.this.rewardedInterstitialAd = rewardedInterstitialAd;
GoogleAdManagerMediationAdapter googleAdManagerMediationAdapter = GoogleAdManagerMediationAdapter.this;
googleAdManagerMediationAdapter.rewardedInterstitialAdListener = new RewardedInterstitialAdListener(thirdPartyAdPlacementId, maxRewardedInterstitialAdapterListener);
GoogleAdManagerMediationAdapter.this.rewardedInterstitialAd.setFullScreenContentCallback(GoogleAdManagerMediationAdapter.this.rewardedInterstitialAdListener);
ResponseInfo responseInfo = GoogleAdManagerMediationAdapter.this.rewardedInterstitialAd.getResponseInfo();
String responseId = responseInfo != null ? responseInfo.getResponseId() : null;
if (AppLovinSdk.VERSION_CODE <= 9150000 || !AppLovinSdkUtils.isValidString(responseId)) {
maxRewardedInterstitialAdapterListener.onRewardedInterstitialAdLoaded();
return;
}
Bundle bundle = new Bundle(1);
bundle.putString("creative_id", responseId);
maxRewardedInterstitialAdapterListener.onRewardedInterstitialAdLoaded(bundle);
}
});
}
@Override
public void onDestroy() {
log("Destroy called for adapter " + this);
AdManagerInterstitialAd adManagerInterstitialAd = this.interstitialAd;
if (adManagerInterstitialAd != null) {
adManagerInterstitialAd.setFullScreenContentCallback((FullScreenContentCallback) null);
this.interstitialAd = null;
}
AppOpenAd appOpenAd = this.appOpenAd;
if (appOpenAd != null) {
appOpenAd.setFullScreenContentCallback((FullScreenContentCallback) null);
this.appOpenAd = null;
this.appOpenAdListener = null;
}
RewardedInterstitialAd rewardedInterstitialAd = this.rewardedInterstitialAd;
if (rewardedInterstitialAd != null) {
rewardedInterstitialAd.setFullScreenContentCallback((FullScreenContentCallback) null);
this.rewardedInterstitialAd = null;
this.rewardedInterstitialAdListener = null;
}
RewardedAd rewardedAd = this.rewardedAd;
if (rewardedAd != null) {
rewardedAd.setFullScreenContentCallback((FullScreenContentCallback) null);
this.rewardedAd = null;
this.rewardedAdListener = null;
}
AdManagerAdView adManagerAdView = this.adView;
if (adManagerAdView != null) {
adManagerAdView.destroy();
this.adView = null;
}
NativeAd nativeAd = this.nativeAd;
if (nativeAd != null) {
nativeAd.destroy();
this.nativeAd = null;
}
NativeAdView nativeAdView = this.nativeAdView;
if (nativeAdView != null) {
nativeAdView.destroy();
this.nativeAdView = null;
}
}
@Override
public void showAppOpenAd(MaxAdapterResponseParameters maxAdapterResponseParameters, @Nullable Activity activity, MaxAppOpenAdapterListener maxAppOpenAdapterListener) {
String thirdPartyAdPlacementId = maxAdapterResponseParameters.getThirdPartyAdPlacementId();
log("Showing app open ad: " + thirdPartyAdPlacementId + "...");
AppOpenAd appOpenAd = this.appOpenAd;
if (appOpenAd != null) {
appOpenAd.show(activity);
return;
}
log("App open ad failed to show: " + thirdPartyAdPlacementId);
maxAppOpenAdapterListener.onAppOpenAdDisplayFailed(new MaxAdapterError(MaxAdapterError.ERROR_CODE_AD_DISPLAY_FAILED, "Ad Display Failed", 0, "App open ad not ready"));
}
@Override
public void showInterstitialAd(MaxAdapterResponseParameters maxAdapterResponseParameters, Activity activity, MaxInterstitialAdapterListener maxInterstitialAdapterListener) {
String thirdPartyAdPlacementId = maxAdapterResponseParameters.getThirdPartyAdPlacementId();
log("Showing interstitial ad: " + thirdPartyAdPlacementId + "...");
AdManagerInterstitialAd adManagerInterstitialAd = this.interstitialAd;
if (adManagerInterstitialAd != null) {
adManagerInterstitialAd.show(activity);
return;
}
log("Interstitial ad failed to show: " + thirdPartyAdPlacementId);
maxInterstitialAdapterListener.onInterstitialAdDisplayFailed(new MaxAdapterError(MaxAdapterError.ERROR_CODE_AD_DISPLAY_FAILED, "Ad Display Failed", 0, "Interstitial ad not ready"));
}
@Override
public void showRewardedAd(MaxAdapterResponseParameters maxAdapterResponseParameters, Activity activity, MaxRewardedAdapterListener maxRewardedAdapterListener) {
final String thirdPartyAdPlacementId = maxAdapterResponseParameters.getThirdPartyAdPlacementId();
log("Showing rewarded ad: " + thirdPartyAdPlacementId + "...");
if (this.rewardedAd != null) {
configureReward(maxAdapterResponseParameters);
this.rewardedAd.show(activity, new OnUserEarnedRewardListener() {
public void onUserEarnedReward(@NonNull RewardItem rewardItem) {
android.support.v4.media.a.z(new StringBuilder("Rewarded ad user earned reward: "), thirdPartyAdPlacementId, GoogleAdManagerMediationAdapter.this);
GoogleAdManagerMediationAdapter.this.rewardedAdListener.hasGrantedReward = true;
}
});
} else {
log("Rewarded ad failed to show: " + thirdPartyAdPlacementId);
maxRewardedAdapterListener.onRewardedAdDisplayFailed(new MaxAdapterError(MaxAdapterError.ERROR_CODE_AD_DISPLAY_FAILED, "Ad Display Failed", 0, "Rewarded ad not ready"));
}
}
@Override
public void showRewardedInterstitialAd(MaxAdapterResponseParameters maxAdapterResponseParameters, Activity activity, MaxRewardedInterstitialAdapterListener maxRewardedInterstitialAdapterListener) {
final String thirdPartyAdPlacementId = maxAdapterResponseParameters.getThirdPartyAdPlacementId();
log("Showing rewarded interstitial ad: " + thirdPartyAdPlacementId + "...");
if (this.rewardedInterstitialAd != null) {
configureReward(maxAdapterResponseParameters);
this.rewardedInterstitialAd.show(activity, new OnUserEarnedRewardListener() {
public void onUserEarnedReward(@NonNull RewardItem rewardItem) {
android.support.v4.media.a.z(new StringBuilder("Rewarded interstitial ad user earned reward: "), thirdPartyAdPlacementId, GoogleAdManagerMediationAdapter.this);
GoogleAdManagerMediationAdapter.this.rewardedInterstitialAdListener.hasGrantedReward = true;
}
});
} else {
log("Rewarded interstitial ad failed to show: " + thirdPartyAdPlacementId);
maxRewardedInterstitialAdapterListener.onRewardedInterstitialAdDisplayFailed(new MaxAdapterError(MaxAdapterError.ERROR_CODE_AD_DISPLAY_FAILED, "Ad Display Failed", 0, "Rewarded Interstitial ad not ready"));
}
}
}