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;
}
}