Idle Egg Factory v2.1.5版本的 MD5 值为:7d2ba6677008ca521af0101bb927d72a
以下内容为反编译后的 d.java 源代码,内容仅作参考
package com.safedk.android.internal;
import android.os.Bundle;
import com.safedk.android.SafeDK;
import com.safedk.android.analytics.AppLovinBridge;
import com.safedk.android.analytics.brandsafety.BrandSafetyUtils;
import com.safedk.android.analytics.brandsafety.creatives.AdNetworkConfiguration;
import com.safedk.android.analytics.brandsafety.creatives.CreativeInfoManager;
import com.safedk.android.utils.Logger;
import com.safedk.android.utils.SdksMapping;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Set;
import org.json.JSONException;
import org.json.JSONObject;
public class d {
public static final String A = "imageMimeTypesList";
public static final String B = "videoMimeTypesList";
public static final String C = "audioMimeTypesList";
public static final String D = "maxBannerUniformPixelsPercentageToStopSampling";
public static final String E = "minBannerUniformPixelsPercentageForUniformImage";
public static final String F = "maxAttemptsToCaptureBannerImage";
public static final String G = "bannerImageSamplingInterval";
public static final String H = "bannerDimensionsMaxSize";
public static final String I = "isBannersEnabled";
public static final String J = "https://edge.safedk.com";
public static final String K = "https://edge.safedk.com";
public static final long L = 1200000;
public static final int M = 50;
public static final String N = "apng;bmp;gif;x-icon;x-icon;png;svg+xml;tiff";
public static final String O = "wave;wav;x-wav;x-pn-wav;webm;ogg;";
private static final String P = "SafeDKConfiguration";
private static final String Q = "settings";
private static final String R = "android";
private static final String S = "images";
private static final String T = "banners";
private static final String U = "adCaching";
private static final String V = "general";
private static final String W = "timers";
private static final String X = "redirectClickTimeout";
private static final String Y = "sdkSpecificMinUniformPixelsPercentageForUniformImage";
private static final String Z = "sdkSpecificCachedCIMaxAge";
public static final int f6873a = 300;
private static final int aA = 25000;
private static final boolean aC = false;
private static final int aE = 10000;
private static final int aG = 15000;
private static final int aI = 15000;
private static final int aS = 5;
private static final int aU = 100;
private static final float aX = 40.0f;
private static final float aZ = 90.0f;
private static final String aa = "sdkSpecificCachedCIExpiration";
private static final int ab = 30000;
private static final int aq = 8192;
private static final int as = 540;
private static final float au = 40.0f;
private static final float aw = 90.0f;
private static final int ay = 5;
public static final int b = 5000;
private static final int bb = 5;
private static final int bd = 1;
private static final int bf = 480;
private static final boolean bh = true;
public static final int c = 500;
public static final String d = "minValidImageSize";
public static final String e = "interstitialDimensionsMaxSize";
public static final String f = "maxUniformPixelsPercentageToStopSampling";
public static final String g = "maxImagesToStoreOnDevice";
public static final String h = "minImageSizeToStopSampling";
public static final String i = "minUniformPixelsPercentageForUniformImage";
public static final String j = "awsUploadTimeout";
public static final String k = "resolveUrlTimeout";
public static final String l = "clickValidityTimeout";
public static final String m = "interstitialActivitiesToInclude";
public static final String n = "interstitialActivitiesToExclude";
public static final String o = "edgeServerUrl";
public static final String p = "backupEdgeServerUrl";
public static final String q = "devicesWithDebugLog";
public static final String r = "cachedCreativeInfoMaxAge";
public static final String s = "cachedMaxNumberOfItems";
public static final String t = "cachedNumberOfItemsThreshold";
public static final String u = "cacheSupportingSdkUUIDs";
public static final String v = "safeDKDeactivation";
public static final String w = "activePercentage";
public static final String x = "deactivated";
public static final String y = "alwaysTakeScreenshot";
public static final String z = "disableWebViewTracking";
private boolean ac = false;
private int ad = 300;
private boolean ae = false;
private int af = 5000;
private int ag = 500;
private int ah = 30000;
private boolean ai = false;
private boolean aj = true;
private boolean ak = false;
private boolean al = false;
private JSONObject am = new JSONObject();
private JSONObject an = new JSONObject();
private ArrayList<String> ao = new ArrayList<>(Arrays.asList(com.safedk.android.utils.f.d, com.safedk.android.utils.f.b, com.safedk.android.utils.f.u, com.safedk.android.utils.f.z, com.safedk.android.utils.f.o));
private boolean ap = false;
private int ar = 8192;
private int at = as;
private float av = 40.0f;
private float ax = 90.0f;
private int az = 5;
private long aB = 25000;
private boolean aD = false;
private int aF = 10000;
private int aH = 15000;
private int aJ = 15000;
private ArrayList<String> aK = new ArrayList<>();
private ArrayList<String> aL = new ArrayList<>();
private String aM = "https://edge.safedk.com";
private String aN = "https://edge.safedk.com";
private ArrayList<String> aO = new ArrayList<>();
private ArrayList<String> aP = new ArrayList<>();
private long aQ = L;
private int aR = 50;
private int aT = 5;
private int aV = 100;
private final boolean aW = false;
private float aY = 40.0f;
private float ba = 90.0f;
private int bc = 5;
private int be = 1;
private int bg = bf;
private boolean bi = true;
private List<String> bj = Arrays.asList(N.split(";"));
private List<String> bk = Arrays.asList(O.split(";"));
private boolean bl = false;
public int a() {
return this.ah;
}
public boolean b() {
return this.ap;
}
public int c() {
return this.ar;
}
public int d() {
return this.at;
}
public float e() {
return this.av;
}
public float f() {
return this.ax;
}
public boolean g() {
return this.aD;
}
public int h() {
return this.az;
}
public long i() {
return this.aB;
}
public int j() {
return this.aF;
}
public int k() {
return this.aH;
}
public int l() {
return this.aJ;
}
public float m() {
return this.aY;
}
public float n() {
return this.ba;
}
public int o() {
return this.bc;
}
public int p() {
return this.be;
}
public int q() {
return this.bg;
}
public boolean r() {
return this.bi;
}
public List<String> s() {
return this.bj;
}
public List<String> t() {
return this.bk;
}
public void a(boolean z2) {
this.bl = z2;
}
public boolean u() {
return this.al;
}
public boolean v() {
return !this.bl;
}
public void b(boolean z2) {
this.ac = z2;
}
public boolean w() {
return this.ac;
}
public int x() {
return this.ad;
}
public void a(int i2) {
this.af = i2;
}
public void b(int i2) {
this.ag = i2;
}
public boolean y() {
return this.ai;
}
public boolean z() {
return this.ae;
}
public int A() {
return this.af;
}
public int B() {
return this.ag;
}
public JSONObject C() {
return this.am;
}
public JSONObject D() {
return this.an;
}
public Set<String> E() {
return new HashSet(this.aO);
}
public boolean F() {
return this.ak;
}
public int G() {
return this.aV;
}
public boolean a(Bundle bundle, boolean z2) {
Logger.d(P, "parseSettings started , bundle : " + (bundle == null ? "null" : bundle.toString()));
Bundle bundle2 = bundle.getBundle(Q);
if (bundle2 == null) {
if (z2) {
Logger.e(P, "Settings bundle is null, cannot parse settings. Saved settings will be used");
}
return false;
}
Logger.d(P, "parseSettings starting DEACTIVATION");
if (bundle2.containsKey(v)) {
Bundle bundle3 = bundle2.getBundle(v);
if (bundle3.containsKey(x)) {
this.bl = bundle3.getBoolean(x, false);
Logger.d(P, "parseSettings deactivated " + this.bl);
} else {
this.bl = false;
}
if (bundle3.containsKey(w)) {
this.aV = (int) bundle3.getDouble(w, 100.0d);
Logger.d(P, "parseSettings activePercentage " + this.aV);
} else {
this.aV = 100;
}
if (!this.bl && this.aV != 100) {
Logger.d(P, "Checking active percentage");
this.bl = !a(Double.valueOf((double) this.aV), SafeDK.getInstance().getUserId());
Logger.d(P, "After active percentage deactivated=" + this.bl);
}
} else {
this.bl = false;
this.aV = 100;
Logger.d(P, "parseSettings SAFE_DK_DEACTIVATION settings block does not exist. Default configuration values will be used.");
}
if (bundle2 != null && bundle2.containsKey(S)) {
Bundle bundle4 = bundle2.getBundle(S);
Logger.d(P, "parseSettings starting IMAGES : " + bundle4.toString());
if (bundle4.containsKey(d)) {
this.ar = bundle4.getInt(d, 8192);
Logger.d(P, "parseSettings minValidImageSize " + this.ar);
} else {
this.ar = 8192;
}
if (bundle4.containsKey(e)) {
this.at = bundle4.getInt(e, as);
Logger.d(P, "parseSettings interstitialDimensionsMaxSize " + this.at);
} else {
this.at = as;
}
if (bundle4.containsKey(f)) {
this.av = (float) bundle4.getDouble(f, 40.0d);
Logger.d(P, "parseSettings maxUniformPixelsPercentageToStopSampling " + this.av);
} else {
this.av = 40.0f;
}
if (bundle4.containsKey(g)) {
this.az = bundle4.getInt(g, 5);
Logger.d(P, "parseSettings maxImagesToStoreOnDevice " + this.az);
} else {
this.az = 5;
}
if (bundle4.containsKey(h)) {
this.aB = bundle4.getInt(h, 25000);
Logger.d(P, "parseSettings minImageSizeToStopSampling " + this.aB);
} else {
this.aB = 25000L;
}
if (bundle4.containsKey(i)) {
this.ax = (float) bundle4.getDouble(i, 90.0d);
Logger.d(P, "parseSettings minUniformPixelsPercentageForUniformImage " + this.ax);
CreativeInfoManager.a(AdNetworkConfiguration.SDK_SPECIFIC_MIN_UNIFORM_PIXELS_PERCENTAGE_FOR_UNIFORM_IMAGE, this.ax);
}
if (bundle4.containsKey(y)) {
this.aD = bundle4.getBoolean(y, false);
Logger.d(P, "parseSettings alwaysTakeScreenshot " + this.aD);
} else {
this.aD = false;
}
try {
if (bundle4.containsKey(Y)) {
Logger.d(P, "parseSettings sdkSpecificMinUniformPixelsPercentageForUniformImage " + bundle4.getBundle(Y));
Bundle bundle5 = bundle4.getBundle(Y);
for (String str : bundle5.keySet()) {
Logger.d(P, "parseSettings sdkSpecificMinUniformPixelsPercentageForUniformImage key = " + str + ", value = " + bundle5.getDouble(str));
double d2 = bundle5.getDouble(str);
String sdkPackageByPackageUUID = SdksMapping.getSdkPackageByPackageUUID(str);
if (sdkPackageByPackageUUID != null) {
Logger.d(P, "parseSettings sdkSpecificMinUniformPixelsPercentageForUniformImage identified UUID = " + str + ", sdkPackageName = " + sdkPackageByPackageUUID + ", value = " + d2);
com.safedk.android.analytics.brandsafety.creatives.a g2 = CreativeInfoManager.g(sdkPackageByPackageUUID);
if (g2 != null) {
g2.a(AdNetworkConfiguration.SDK_SPECIFIC_MIN_UNIFORM_PIXELS_PERCENTAGE_FOR_UNIFORM_IMAGE, (float) d2);
Logger.d(P, "parseSettings sdkSpecificMinUniformPixelsPercentageForUniformImage UUID = " + str + ", sdkPackageName = " + sdkPackageByPackageUUID + ", value = " + ((float) d2));
}
}
}
}
} catch (Throwable th) {
Logger.d(P, "parseSettings sdkSpecificMinUniformPixelsPercentageForUniformImage Exception : " + th.getMessage(), th);
}
} else {
this.ar = 8192;
this.at = as;
this.av = 40.0f;
this.az = 5;
this.aB = 25000L;
Logger.d(P, "minUniformPixelsPercentageForUniformImage set to " + this.ax);
this.aD = false;
Logger.d(P, "parseSettings IMAGES settings block does not exist. Default configuration values will be used.");
}
Logger.d(P, "parseSettings starting BANNERS");
if (bundle2 != null && bundle2.containsKey(T)) {
Bundle bundle6 = bundle2.getBundle(T);
if (bundle6.containsKey(D)) {
this.aY = (float) bundle6.getDouble(D, 40.0d);
Logger.d(P, "parseSettings maxBannerUniformPixelsPercentageToStopSampling " + this.aY);
} else {
this.aY = 40.0f;
}
if (bundle6.containsKey(E)) {
this.ba = (float) bundle6.getDouble(E, 90.0d);
Logger.d(P, "parseSettings minBannerUniformPixelsPercentageForUniformImage " + this.ba);
} else {
this.ba = 90.0f;
}
if (bundle6.containsKey(F)) {
this.bc = bundle6.getInt(F, 5);
Logger.d(P, "parseSettings maxAttemptsToCaptureBannerImage " + this.bc);
} else {
this.bc = 5;
}
if (bundle6.containsKey(G)) {
this.be = bundle6.getInt(G, 1);
Logger.d(P, "parseSettings bannerImageSamplingInterval " + this.be);
} else {
this.be = 1;
}
if (bundle6.containsKey(H)) {
this.bg = bundle6.getInt(H, bf);
Logger.d(P, "parseSettings bannerDimensionsMaxSize " + this.bg);
} else {
this.bg = bf;
}
if (bundle6.containsKey(I)) {
this.bi = bundle6.getBoolean(I, true);
Logger.d(P, "parseSettings bannerIsEnabled " + this.bi);
} else {
this.bi = true;
}
} else {
this.aY = 40.0f;
this.ba = 90.0f;
this.bc = 5;
this.be = 1;
this.bg = bf;
this.bi = true;
Logger.d(P, "parseSettings BANNERS settings block does not exist. Default configuration values will be used.");
}
Logger.d(P, "parseSettings starting TIMERS");
if (bundle2.containsKey(W)) {
Bundle bundle7 = bundle2.getBundle(W);
if (bundle7.containsKey(j)) {
this.aF = (int) bundle7.getDouble(j, 10000.0d);
if (z2) {
this.aF *= 1000;
}
Logger.d(P, "parseSettings awsUploadTimeout (ms) " + this.aF);
} else {
this.aF = 10000;
}
if (bundle7.containsKey(k)) {
this.aH = (int) bundle7.getDouble(k, 15000.0d);
if (z2) {
this.aH *= 1000;
}
Logger.d(P, "parseSettings resolveUrlTimeout (ms) " + this.aH);
} else {
this.aH = 15000;
}
if (bundle7.containsKey(l)) {
this.aJ = ((int) bundle7.getDouble(l, 15000.0d)) * 1000;
if (z2) {
this.aJ *= 1000;
}
Logger.d(P, "parseSettings clickValidityTimeout (ms) " + this.aJ);
} else {
this.aJ = 15000;
}
if (bundle7.containsKey(X)) {
this.ah = bundle7.getInt(X, 30) * 1000;
Logger.d(P, "parseSettings redirectClickTimeout (ms) value is " + this.ah + ", isFromServer=" + z2);
} else {
this.ah = 30000;
}
} else {
this.aF = 10000;
this.aH = 15000;
this.aJ = 15000;
this.ah = 30000;
Logger.d(P, "parseSettings TIMERS settings block does not exist. Default configuration values will be used.");
}
Logger.d(P, "parseSettings starting ANDROID");
if (bundle2.containsKey("android")) {
Bundle bundle8 = bundle2.getBundle("android");
if (bundle8.containsKey(m)) {
this.aK = bundle8.getStringArrayList(m);
Logger.d(P, "parseSettings interstitialActivitiesToInclude " + this.aK);
}
if (bundle8.containsKey(n)) {
this.aL = bundle8.getStringArrayList(n);
Logger.d(P, "parseSettings interstitialActivitiesToExclude " + this.aL);
}
if ((this.aK != null && this.aK.size() > 0) || (this.aL != null && this.aL.size() > 0)) {
Iterator<String> it = this.aK.iterator();
while (it.hasNext()) {
BrandSafetyUtils.h(it.next());
}
Iterator<String> it2 = this.aL.iterator();
while (it2.hasNext()) {
BrandSafetyUtils.i(it2.next());
}
}
if (bundle8.containsKey(z)) {
this.ap = bundle8.getBoolean(z, false);
Logger.d(P, "parseSettings disableWebViewTracking " + this.ap);
}
} else {
Logger.d(P, "parseSettings ANDROID settings block does not exist. Default configuration values will be used.");
}
Logger.d(P, "parseSettings starting GENERAL");
if (bundle2.containsKey(V)) {
Bundle bundle9 = bundle2.getBundle(V);
if (bundle9.containsKey(o)) {
this.aM = bundle9.getString(o, "https://edge.safedk.com");
this.aM = a(this.aM);
Logger.d(P, "parseSettings edgeServerUrl " + this.aM);
} else {
this.aM = "https://edge.safedk.com";
}
if (bundle9.containsKey(p)) {
this.aN = bundle9.getString(p, "https://edge.safedk.com");
this.aN = a(this.aN);
Logger.d(P, "parseSettings backupEdgeServerUrl " + this.aN);
} else {
this.aN = "https://edge.safedk.com";
}
AppLovinBridge.receiveEdgeUrls(this.aM, this.aN);
if (bundle9.containsKey(q)) {
this.aO = bundle9.getStringArrayList(q);
Logger.d(P, "parseSettings devicesWithDebugLog " + this.aO);
}
} else {
Logger.d(P, "parseSettings GENERAL settings block does not exist. Default configuration values will be used.");
}
Logger.d(P, "parseSettings starting Ad CACHING");
if (bundle2.containsKey(U)) {
Bundle bundle10 = bundle2.getBundle(U);
if (bundle10.containsKey(r)) {
this.aQ = (int) bundle10.getDouble(r, 1200000.0d);
Logger.d(P, "parseSettings cachedCreativeInfoMaxAge " + this.aQ);
} else {
this.aQ = L;
}
CreativeInfoManager.a(AdNetworkConfiguration.SDK_SPECIFIC_CACHED_CI_MAX_AGE, this.aQ);
if (bundle10.containsKey(s)) {
this.aR = bundle10.getInt(s);
Logger.d(P, "parseSettings cachedMaxNumberOfItems " + this.aR);
} else {
this.aR = 50;
}
if (bundle10.containsKey(t)) {
this.aT = bundle10.getInt(t);
Logger.d(P, "parseSettings cachedNumberOfItemsThreshold " + this.aT);
} else {
this.aT = 5;
}
if (bundle10.containsKey(u)) {
this.aP = bundle10.getStringArrayList(u);
Logger.d(P, "parseSettings cacheSupportingSdkUUIDs " + this.aP);
}
if (this.aP != null && this.aP.size() > 0) {
a(this.aP);
}
try {
if (bundle10.containsKey(Z)) {
Logger.d(P, "parseSettings sdkSpecificCachedCIMaxAge " + bundle10.getBundle(Z));
Bundle bundle11 = bundle10.getBundle(Z);
for (String str2 : bundle11.keySet()) {
Logger.d(P, "parseSettings sdkSpecificCachedCIMaxAge key = " + str2 + ", value = " + bundle11.getDouble(str2));
long j2 = (long) bundle11.getDouble(str2);
String sdkPackageByPackageUUID2 = SdksMapping.getSdkPackageByPackageUUID(str2);
if (sdkPackageByPackageUUID2 != null) {
Logger.d(P, "parseSettings sdkSpecificCachedCIMaxAge identified UUID = " + str2 + ", sdkPackageName = " + sdkPackageByPackageUUID2 + ", value = " + j2);
com.safedk.android.analytics.brandsafety.creatives.a g3 = CreativeInfoManager.g(sdkPackageByPackageUUID2);
if (g3 != null) {
g3.a(AdNetworkConfiguration.SDK_SPECIFIC_CACHED_CI_MAX_AGE, j2);
Logger.d(P, "parseSettings sdkSpecificCachedCIMaxAge UUID = " + str2 + ", sdkPackageName = " + sdkPackageByPackageUUID2 + ", value = " + j2);
}
}
}
}
} catch (Throwable th2) {
Logger.d(P, "parseSettings sdkSpecificCachedCreativeInfoMaxAge Exception : " + th2.getMessage(), th2);
}
try {
if (bundle10.containsKey(aa)) {
Logger.d(P, "parseSettings sdkSpecificCachedCreativeInfoMaxAge " + bundle10.getBundle(aa));
Bundle bundle12 = bundle10.getBundle(aa);
for (String str3 : bundle12.keySet()) {
Logger.d(P, "parseSettings sdkSpecificCachedCIExpirationBundle key = " + str3 + ", value = " + bundle12.getBoolean(str3));
boolean z3 = bundle12.getBoolean(str3);
String sdkPackageByPackageUUID3 = SdksMapping.getSdkPackageByPackageUUID(str3);
if (sdkPackageByPackageUUID3 != null) {
Logger.d(P, "parseSettings sdkSpecificCachedCIExpirationBundle identified UUID = " + str3 + ", sdkPackageName = " + sdkPackageByPackageUUID3 + ", value = " + z3);
com.safedk.android.analytics.brandsafety.creatives.a g4 = CreativeInfoManager.g(sdkPackageByPackageUUID3);
if (g4 != null) {
g4.b(AdNetworkConfiguration.SDK_SPECIFIC_CACHED_CI_EXPIRATION, z3);
Logger.d(P, "parseSettings sdkSpecificCachedCIExpirationBundle UUID = " + str3 + ", sdkPackageName = " + sdkPackageByPackageUUID3 + ", value = " + z3);
}
}
}
}
} catch (Throwable th3) {
Logger.d(P, "parseSettings sdkSpecificCachedCIExpirationBundle Exception : " + th3.getMessage(), th3);
}
} else {
this.aQ = L;
this.aR = 50;
this.aT = 5;
Logger.d(P, "parseSettings AD_CACHING settings block does not exist. Default configuration values will be used.");
}
return true;
}
private void a(JSONObject jSONObject) throws JSONException {
Logger.d(P, "Attempting to parse sdk specific uniformity threshold. setting : " + jSONObject);
if (jSONObject != null) {
Iterator<String> keys = jSONObject.keys();
while (keys.hasNext()) {
String next = keys.next();
int i2 = jSONObject.getInt(next);
String sdkPackageByPackageUUID = SdksMapping.getSdkPackageByPackageUUID(next);
if (sdkPackageByPackageUUID != null) {
Logger.d(P, "Parse sdk specific uniformity threshold setting identified, UUID = " + next + ", sdkPackageName = " + sdkPackageByPackageUUID + ", value = " + i2);
com.safedk.android.analytics.brandsafety.creatives.a g2 = CreativeInfoManager.g(sdkPackageByPackageUUID);
if (g2 != null) {
g2.a(AdNetworkConfiguration.SDK_SPECIFIC_MIN_UNIFORM_PIXELS_PERCENTAGE_FOR_UNIFORM_IMAGE, i2);
Logger.d(P, "Parse sdk specific uniformity threshold set, UUID = " + next + ", sdkPackageName = " + sdkPackageByPackageUUID + ", value = " + i2);
}
}
}
return;
}
Logger.d(P, "Cannot parse sdk specific uniformity setting, json is null");
}
private void a(Bundle bundle) {
Logger.d(P, "processSdkVersionsBundle started, bundle=" + bundle.toString());
}
private void a(ArrayList<String> arrayList) {
this.ao.clear();
Iterator<String> it = arrayList.iterator();
while (it.hasNext()) {
String next = it.next();
Logger.d(P, "Adding cacheSupportingSDKUUID " + next + " to cacheSupportedSdk List");
this.ao.add(next);
}
}
private String a(String str) {
if (str != null && str.length() > 0) {
try {
URL url = new URL(str);
String protocol = url.getProtocol();
String host = url.getHost();
int port = url.getPort();
if (port == -1) {
str = String.format("%s://%s", protocol, host);
} else {
str = String.format("%s://%s:%d", protocol, host, Integer.valueOf(port));
}
} catch (MalformedURLException e2) {
Logger.e(P, "Exception sanitizing server url:" + e2.getMessage(), e2);
}
}
return str;
}
private boolean a(Double d2, String str) {
Logger.d(P, "checkActivePercent started, activePercent=" + d2 + ", userId=" + str);
float a2 = DeviceData.a("", str);
Logger.d(P, "checkActivePercent hashValue ==" + a2);
return ((double) a2) <= d2.doubleValue();
}
public long H() {
return this.aQ;
}
public int I() {
return this.aR;
}
public int J() {
return this.aT;
}
public ArrayList<String> K() {
return this.ao;
}
}