atsameip v0.1版本的 MD5 值为:28547cf98b0a2d02acb37969dcfb83e9

以下内容为反编译后的 AdColonyAdapter.java 源代码,内容仅作参考


package io.bidmachine.ads.networks.adcolony;

import android.app.Application;
import android.content.Context;
import android.text.TextUtils;
import com.adcolony.sdk.AdColony;
import com.adcolony.sdk.AdColonyAppOptions;
import com.adcolony.sdk.AdColonySignalsListener;
import com.applovin.sdk.AppLovinEventParameters;
import io.bidmachine.AdsFormat;
import io.bidmachine.AdsType;
import io.bidmachine.ContextProvider;
import io.bidmachine.GeneralParams;
import io.bidmachine.HeaderBiddingAdRequestParams;
import io.bidmachine.HeaderBiddingAdapter;
import io.bidmachine.HeaderBiddingCollectParamsCallback;
import io.bidmachine.InitializationParams;
import io.bidmachine.NetworkConfigParams;
import io.bidmachine.core.Utils;
import io.bidmachine.models.DataRestrictions;
import io.bidmachine.models.TargetingInfo;
import io.bidmachine.unified.UnifiedAdRequestParams;
import io.bidmachine.unified.UnifiedFullscreenAd;
import io.bidmachine.utils.BMError;
import java.util.EnumMap;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
class AdColonyAdapter extends HeaderBiddingAdapter {
    static final boolean $assertionsDisabled = false;
    private static final HashSet<String> zonesCache = new HashSet<>();

    public AdColonyAdapter() {
        super("adcolony", BuildConfig.ADAPTER_SDK_VERSION_NAME, "1.9.3.10", 1, new AdsType[]{AdsType.Interstitial, AdsType.Rewarded});
    }

    @Override
    public UnifiedFullscreenAd createInterstitial() {
        return new AdColonyFullscreenAd(false);
    }

    @Override
    public UnifiedFullscreenAd createRewarded() {
        return new AdColonyFullscreenAd(true);
    }

    @Override
    public boolean onInitialize(ContextProvider contextProvider, InitializationParams initializationParams, NetworkConfigParams networkConfigParams) throws Throwable {
        super.onInitialize(contextProvider, initializationParams, networkConfigParams);
        EnumMap<AdsFormat, List<Map<String, String>>> obtainNetworkMediationConfigs = networkConfigParams.obtainNetworkMediationConfigs(AdsFormat.values());
        if (obtainNetworkMediationConfigs != null) {
            for (List<Map<String, String>> list : obtainNetworkMediationConfigs.values()) {
                if (list != null) {
                    for (Map<String, String> map : list) {
                        String str = map.get("zone_id");
                        if (!TextUtils.isEmpty(str)) {
                            zonesCache.add(str);
                        }
                    }
                }
            }
        }
        if (zonesCache.isEmpty()) {
            logError("Initialize failed: ZoneIds not found");
            return false;
        }
        Map<String, String> obtainNetworkParams = networkConfigParams.obtainNetworkParams();
        if (obtainNetworkParams == null) {
            logError("Initialize failed: network parameters not found");
            return false;
        }
        String str2 = obtainNetworkParams.get("app_id");
        if (TextUtils.isEmpty(str2)) {
            logError(String.format("Initialize failed: %s not provided", "app_id"));
            return false;
        }
        String str3 = obtainNetworkParams.get(AppLovinEventParameters.IN_APP_PURCHASE_TRANSACTION_IDENTIFIER);
        if (TextUtils.isEmpty(str3)) {
            logError(String.format("Initialize failed: %s not provided", AppLovinEventParameters.IN_APP_PURCHASE_TRANSACTION_IDENTIFIER));
            return false;
        }
        Context applicationContext = contextProvider.getApplicationContext();
        AdColony.configure((Application) applicationContext, createAppOptions(applicationContext, initializationParams, str3), str2, (String[]) zonesCache.toArray(new String[0]));
        return true;
    }

    @Override
    protected boolean isNetworkInitialized(Context context) throws Throwable {
        return !TextUtils.isEmpty(AdColony.getSDKVersion());
    }

    @Override
    protected void onCollectHeaderBiddingParams(ContextProvider contextProvider, UnifiedAdRequestParams unifiedAdRequestParams, HeaderBiddingAdRequestParams headerBiddingAdRequestParams, final HeaderBiddingCollectParamsCallback headerBiddingCollectParamsCallback, Map<String, String> map) throws Throwable {
        final String str = map.get("app_id");
        if (TextUtils.isEmpty(str)) {
            headerBiddingCollectParamsCallback.onCollectFail(BMError.adapterGetsParameter("app_id"));
            return;
        }
        final String str2 = map.get("zone_id");
        if (TextUtils.isEmpty(str2)) {
            headerBiddingCollectParamsCallback.onCollectFail(BMError.adapterGetsParameter("zone_id"));
            return;
        }
        String str3 = map.get(AppLovinEventParameters.IN_APP_PURCHASE_TRANSACTION_IDENTIFIER);
        if (TextUtils.isEmpty(str3)) {
            headerBiddingCollectParamsCallback.onCollectFail(BMError.adapterGetsParameter(AppLovinEventParameters.IN_APP_PURCHASE_TRANSACTION_IDENTIFIER));
            return;
        }
        synchronized (AdColonyAdapter.class) {
            AdColony.setAppOptions(createAppOptions(contextProvider.getContext(), unifiedAdRequestParams, str3));
            AdColony.collectSignals(new AdColonySignalsListener() {
                @Override
                public void onSuccess(String str4) {
                    HashMap hashMap = new HashMap();
                    hashMap.put("app_id", str);
                    hashMap.put("zone_id", str2);
                    hashMap.put("data", str4);
                    headerBiddingCollectParamsCallback.onCollectFinished(hashMap);
                }
            });
        }
    }

    private static AdColonyAppOptions createAppOptions(Context context, GeneralParams generalParams, String str) {
        DataRestrictions dataRestrictions = generalParams.getDataRestrictions();
        TargetingInfo targetingInfo = generalParams.getTargetingInfo();
        AdColonyAppOptions adColonyAppOptions = new AdColonyAppOptions();
        String userId = targetingInfo.getUserId();
        if (userId != null) {
            adColonyAppOptions.setUserID(userId);
        }
        adColonyAppOptions.setOriginStore(str);
        String appVersion = Utils.getAppVersion(context);
        if (!TextUtils.isEmpty(appVersion)) {
            adColonyAppOptions.setAppVersion(appVersion);
        }
        adColonyAppOptions.setPrivacyFrameworkRequired(AdColonyAppOptions.COPPA, dataRestrictions.isUserAgeRestricted());
        adColonyAppOptions.setPrivacyFrameworkRequired(AdColonyAppOptions.GDPR, dataRestrictions.isUserInGdprScope());
        adColonyAppOptions.setPrivacyConsentString(AdColonyAppOptions.GDPR, dataRestrictions.getIABGDPRString());
        String uSPrivacyString = dataRestrictions.getUSPrivacyString();
        if (!TextUtils.isEmpty(uSPrivacyString)) {
            adColonyAppOptions.setPrivacyFrameworkRequired(AdColonyAppOptions.CCPA, dataRestrictions.isUserInCcpaScope());
            adColonyAppOptions.setPrivacyConsentString(AdColonyAppOptions.CCPA, uSPrivacyString);
        }
        adColonyAppOptions.setTestModeEnabled(generalParams.isTestMode());
        return adColonyAppOptions;
    }
}