Step Record v1.1.5版本的 MD5 值为:5797275f89198878d2f00ee92d534382
以下内容为反编译后的 v0.java 源代码,内容仅作参考
package com.chartboost.sdk.impl;
import android.text.TextUtils;
import android.util.Base64;
import com.applovin.sdk.AppLovinEventParameters;
import com.applovin.sdk.AppLovinEventTypes;
import com.applovin.sdk.R;
import com.chartboost.heliumsdk.impl.SKS;
import com.chartboost.heliumsdk.impl.ttHtzKt;
import com.chartboost.heliumsdk.impl.tzz1tK1HS;
import com.chartboost.sdk.Analytics;
import java.util.Arrays;
import java.util.Locale;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import kotlin.Metadata;
import kotlin.jvm.internal.StringCompanionObject;
import org.json.JSONArray;
import org.json.JSONObject;
@Metadata(d1 = {"\u0000\\\n\u0002\u0018\u0002\n\u0002\u0010\u0000\n\u0002\u0010\u000e\n\u0000\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010\b\n\u0002\b\u0003\n\u0002\u0010\t\n\u0000\n\u0002\u0010\u0002\n\u0002\b\t\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010\u000b\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010\u0007\n\u0000\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\b\u0002\n\u0002\u0018\u0002\n\u0002\b\u0002\n\u0002\u0018\u0002\n\u0002\b\u0006\u0018\u00002\u00020\u0001B\u001f\u0012\u0006\u0010 \u001a\u00020\u001e\u0012\u0006\u0010#\u001a\u00020!\u0012\u0006\u0010'\u001a\u00020$¢\u0006\u0004\b(\u0010)J6\u0010\r\u001a\u00020\f2\u0006\u0010\u0003\u001a\u00020\u00022\u0006\u0010\u0005\u001a\u00020\u00042\u0006\u0010\u0007\u001a\u00020\u00062\u0006\u0010\b\u001a\u00020\u00062\u0006\u0010\t\u001a\u00020\u00022\u0006\u0010\u000b\u001a\u00020\nJ^\u0010\r\u001a\u00020\f2\u0006\u0010\u000e\u001a\u00020\u00022\u0006\u0010\u000f\u001a\u00020\u00022\u0006\u0010\t\u001a\u00020\u00022\u0006\u0010\u0010\u001a\u00020\u00022\u0006\u0010\u0011\u001a\u00020\u00022\b\u0010\u0012\u001a\u0004\u0018\u00010\u00022\b\u0010\u0013\u001a\u0004\u0018\u00010\u00022\b\u0010\u0014\u001a\u0004\u0018\u00010\u00022\b\u0010\u0015\u001a\u0004\u0018\u00010\u00022\u0006\u0010\u0017\u001a\u00020\u0016J\b\u0010\r\u001a\u00020\u0018H\u0002J\u001c\u0010\u001a\u001a\u00020\u00192\b\u0010\u0012\u001a\u0004\u0018\u00010\u00022\b\u0010\u0013\u001a\u0004\u0018\u00010\u0002H\u0002J\u001c\u0010\r\u001a\u00020\u00192\b\u0010\u0014\u001a\u0004\u0018\u00010\u00022\b\u0010\u0015\u001a\u0004\u0018\u00010\u0002H\u0002J\u0010\u0010\r\u001a\u00020\u001b2\u0006\u0010\u0010\u001a\u00020\u0002H\u0002J\u0010\u0010\r\u001a\u00020\f2\u0006\u0010\u001c\u001a\u00020\u0019H\u0002J\u0010\u0010\r\u001a\u00020\f2\u0006\u0010\u001c\u001a\u00020\u001dH\u0002R\u0014\u0010 \u001a\u00020\u001e8\u0002X\u0082\u0004¢\u0006\u0006\n\u0004\b\r\u0010\u001fR\u0014\u0010#\u001a\u00020!8\u0002X\u0082\u0004¢\u0006\u0006\n\u0004\b\u001a\u0010\"R\u0014\u0010'\u001a\u00020$8\u0002X\u0082\u0004¢\u0006\u0006\n\u0004\b%\u0010&¨\u0006*"}, d2 = {"Lcom/chartboost/sdk/impl/v0;", "", "", "eventLabel", "Lcom/chartboost/sdk/Analytics$LevelType;", "type", "", "mainLevel", "subLevel", "description", "", "timestamp", "", "a", "productID", "title", "price", AppLovinEventParameters.REVENUE_CURRENCY, "purchaseData", "purchaseSignature", "userID", "purchaseToken", "Lcom/chartboost/sdk/Analytics$IAPType;", "iapType", "", "Lorg/json/JSONObject;", "b", "", "requestData", "Lorg/json/JSONArray;", "Lcom/chartboost/sdk/impl/q9;", "Lcom/chartboost/sdk/impl/q9;", "sdkInitializer", "Lcom/chartboost/sdk/impl/g2;", "Lcom/chartboost/sdk/impl/g2;", "networkService", "Lcom/chartboost/sdk/impl/d9;", "c", "Lcom/chartboost/sdk/impl/d9;", "requestBodyBuilder", "<init>", "(Lcom/chartboost/sdk/impl/q9;Lcom/chartboost/sdk/impl/g2;Lcom/chartboost/sdk/impl/d9;)V", "Chartboost-9.5.0_productionRelease"}, k = 1, mv = {1, 8, 0})
public final class v0 {
public final q9 sdkInitializer;
public final g2 networkService;
public final d9 requestBodyBuilder;
@Metadata(k = 3, mv = {1, 8, 0}, xi = R.styleable.AppCompatTheme_checkboxStyle)
public class a {
public static final int[] a;
static {
int[] iArr = new int[Analytics.IAPType.values().length];
try {
iArr[Analytics.IAPType.GOOGLE_PLAY.ordinal()] = 1;
} catch (NoSuchFieldError unused) {
}
try {
iArr[Analytics.IAPType.AMAZON.ordinal()] = 2;
} catch (NoSuchFieldError unused2) {
}
a = iArr;
}
}
public v0(q9 q9Var, g2 g2Var, d9 d9Var) {
ttHtzKt.tzttS1SS1(q9Var, "sdkInitializer");
ttHtzKt.tzttS1SS1(g2Var, "networkService");
ttHtzKt.tzttS1SS1(d9Var, "requestBodyBuilder");
this.sdkInitializer = q9Var;
this.networkService = g2Var;
this.requestBodyBuilder = d9Var;
}
public final void a(String eventLabel, Analytics.LevelType type, int mainLevel, int subLevel, String description, long timestamp) {
ttHtzKt.tzttS1SS1(eventLabel, "eventLabel");
ttHtzKt.tzttS1SS1(type, "type");
ttHtzKt.tzttS1SS1(description, "description");
try {
if (!a()) {
z6.b("AnalyticsApi", "You need call Chartboost.startWithAppId() before tracking in-app purchases");
return;
}
boolean z = true;
if (eventLabel.length() == 0) {
z6.b("AnalyticsApi", "Invalid value: event label cannot be empty or null");
return;
}
if (mainLevel >= 0 && subLevel >= 0) {
if (description.length() != 0) {
z = false;
}
if (z) {
z6.b("AnalyticsApi", "Invalid value: description cannot be empty or null");
return;
}
JSONArray jSONArray = new JSONArray();
JSONObject jSONObject = new JSONObject();
jSONObject.put("event_label", eventLabel);
jSONObject.put("event_field", type.getLevelType());
jSONObject.put("main_level", mainLevel);
jSONObject.put("sub_level", subLevel);
jSONObject.put("description", description);
jSONObject.put("timestamp", timestamp);
jSONObject.put("data_type", "level_info");
jSONArray.put(jSONObject);
a(jSONArray);
return;
}
z6.b("AnalyticsApi", "Invalid value: Level number should be > 0");
} catch (Exception e) {
z6.b("AnalyticsApi", e.toString());
}
}
public final JSONObject b(String purchaseData, String purchaseSignature) {
boolean z;
boolean z2 = false;
if (purchaseData != null && purchaseData.length() != 0) {
z = false;
} else {
z = true;
}
if (!z) {
if (purchaseSignature == null || purchaseSignature.length() == 0) {
z2 = true;
}
if (!z2) {
JSONObject jSONObject = new JSONObject();
jSONObject.put("purchaseData", purchaseData);
jSONObject.put("purchaseSignature", purchaseSignature);
jSONObject.put("type", Analytics.IAPType.GOOGLE_PLAY.ordinal());
return jSONObject;
}
}
z6.b("AnalyticsApi", "Null object is passed for for purchase data or purchase signature");
return new JSONObject();
}
public final void a(String productID, String title, String description, String price, String currency, String purchaseData, String purchaseSignature, String userID, String purchaseToken, Analytics.IAPType iapType) {
JSONObject b;
ttHtzKt.tzttS1SS1(productID, "productID");
ttHtzKt.tzttS1SS1(title, "title");
ttHtzKt.tzttS1SS1(description, "description");
ttHtzKt.tzttS1SS1(price, "price");
ttHtzKt.tzttS1SS1(currency, AppLovinEventParameters.REVENUE_CURRENCY);
ttHtzKt.tzttS1SS1(iapType, "iapType");
try {
if (!a()) {
z6.b("AnalyticsApi", "You need call Chartboost.startWithAppId() before tracking in-app purchases");
return;
}
float a2 = a(price);
if (a2 == -1.0f) {
return;
}
int i = a.a[iapType.ordinal()];
if (i == 1) {
b = b(purchaseData, purchaseSignature);
} else {
if (i != 2) {
throw new SKS();
}
b = a(userID, purchaseToken);
}
if (b.length() == 0) {
z6.b("AnalyticsApi", "Error while parsing the receipt to a JSON Object, ");
return;
}
String jSONObject = b.toString();
ttHtzKt.tz(jSONObject, "receipt.toString()");
byte[] bytes = jSONObject.getBytes(tzz1tK1HS.t1H1KH1K);
ttHtzKt.tz(bytes, "this as java.lang.String).getBytes(charset)");
String encodeToString = Base64.encodeToString(bytes, 2);
JSONObject jSONObject2 = new JSONObject();
jSONObject2.put("localized-title", title);
jSONObject2.put("localized-description", description);
jSONObject2.put("price", Float.valueOf(a2));
jSONObject2.put(AppLovinEventParameters.REVENUE_CURRENCY, currency);
jSONObject2.put("productID", productID);
jSONObject2.put("receipt", encodeToString);
a(jSONObject2);
} catch (Exception e) {
z6.b("AnalyticsApi", e.toString());
}
}
public final boolean a() {
return this.sdkInitializer.getIsSDKInitialized();
}
public final JSONObject a(String userID, String purchaseToken) {
if (!(userID == null || userID.length() == 0)) {
if (!(purchaseToken == null || purchaseToken.length() == 0)) {
JSONObject jSONObject = new JSONObject();
jSONObject.put("userID", userID);
jSONObject.put("purchaseToken", purchaseToken);
jSONObject.put("type", Analytics.IAPType.AMAZON.ordinal());
return jSONObject;
}
}
z6.b("AnalyticsApi", "Null object is passed for for amazon user id or amazon purchase token");
return new JSONObject();
}
public final float a(String price) {
try {
Matcher matcher = Pattern.compile("(\\d+\\.\\d+)|(\\d+)").matcher(price);
matcher.find();
String group = matcher.group();
if (TextUtils.isEmpty(group)) {
z6.b("AnalyticsApi", "Invalid price object");
return -1.0f;
}
ttHtzKt.tz(group, com.anythink.expressad.foundation.d.t.ah);
return Float.parseFloat(group);
} catch (IllegalStateException unused) {
z6.b("AnalyticsApi", "Invalid price object");
return -1.0f;
}
}
public final void a(JSONObject requestData) {
StringCompanionObject stringCompanionObject = StringCompanionObject.SKHKzK;
String format = String.format(Locale.US, "%s%s", Arrays.copyOf(new Object[]{"/post-install-event/", AppLovinEventTypes.USER_COMPLETED_IN_APP_PURCHASE}, 2));
ttHtzKt.tz(format, "format(locale, format, *args)");
j2 j2Var = new j2("https://live.chartboost.com", format, this.requestBodyBuilder.build(), k8.NORMAL, AppLovinEventTypes.USER_COMPLETED_IN_APP_PURCHASE, null);
j2Var.a(AppLovinEventTypes.USER_COMPLETED_IN_APP_PURCHASE, requestData);
j2Var.p = true;
this.networkService.a(j2Var);
}
public final void a(JSONArray requestData) {
j2 j2Var = new j2("https://live.chartboost.com", "/post-install-event/tracking", this.requestBodyBuilder.build(), k8.NORMAL, "tracking", null);
j2Var.a("track_info", requestData);
j2Var.p = true;
this.networkService.a(j2Var);
}
}