Files
rr3-apk/decompiled-community/sources/com/singular/sdk/internal/OfflineEventsMigrator.java
Daniel Elliott c080f0d97f Add Discord community version (64-bit only)
- Added realracing3-community.apk (71.57 MB)
- Removed 32-bit support (armeabi-v7a)
- Only includes arm64-v8a libraries
- Decompiled source code included
- Added README-community.md with analysis
2026-02-18 15:48:36 -08:00

145 lines
6.1 KiB
Java

package com.singular.sdk.internal;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import com.applovin.sdk.AppLovinEventTypes;
import com.glu.plugins.gluanalytics.AnalyticsData;
import com.ironsource.mediationsdk.impressionData.ImpressionData;
import com.ironsource.nb;
import com.ironsource.v8;
import com.mbridge.msdk.foundation.download.core.DownloadCommon;
import com.mbridge.msdk.foundation.entity.CampaignEx;
import com.mbridge.msdk.foundation.same.report.i;
import com.mbridge.msdk.playercommon.exoplayer2.text.ttml.TtmlNode;
import csdk.gluads.Consts;
import java.io.File;
import java.io.IOException;
import java.util.HashMap;
import org.json.JSONObject;
/* loaded from: classes4.dex */
public class OfflineEventsMigrator {
public static final SingularLog logger = SingularLog.getLogger("OfflineEventsMigrator");
public String aifa;
public String andi;
public String apiKey;
public String apid;
public String bmac;
public String canonicalDeviceId;
public String canonicalKeyspace;
public Context ctx;
public SQLiteDatabase database;
public String databaseName;
public String imei;
public String mac1;
public OfflineEventsMigrator(Context context) {
this.databaseName = "";
this.ctx = context;
try {
File databasePath = context.getDatabasePath("Apsalar.sqlite_" + context.getSharedPreferences("ApsalarAppPrefs", 0).getString("HASH", ""));
if (databasePath.exists()) {
String path = databasePath.getPath();
this.databaseName = path;
this.database = SQLiteDatabase.openDatabase(path, null, 0);
}
} catch (Exception e) {
logger.error("Error in OfflineEventsMigrator", e);
}
}
public void deleteDatabase() {
if (this.database != null) {
this.ctx.deleteDatabase(this.databaseName);
}
}
public void migrate() {
SQLiteDatabase sQLiteDatabase = this.database;
if (sQLiteDatabase == null) {
logger.debug("No database found; skipping.");
return;
}
Cursor rawQuery = sQLiteDatabase.rawQuery("SELECT * FROM config", null);
if (rawQuery == null || rawQuery.getCount() == 0) {
return;
}
while (rawQuery.moveToNext()) {
this.apiKey = rawQuery.getString(0);
this.andi = rawQuery.getString(5);
this.aifa = rawQuery.getString(6);
this.imei = rawQuery.getString(7);
this.apid = rawQuery.getString(10);
this.canonicalDeviceId = rawQuery.getString(12);
this.canonicalKeyspace = rawQuery.getString(11);
this.mac1 = rawQuery.getString(8);
this.bmac = rawQuery.getString(9);
}
rawQuery.close();
Cursor rawQuery2 = this.database.rawQuery("SELECT * FROM events", null);
if (rawQuery2 == null || rawQuery2.getCount() == 0) {
return;
}
int i = 0;
while (rawQuery2.moveToNext()) {
try {
HashMap hashMap = new HashMap();
hashMap.put("__TIMESTAMP__", rawQuery2.getString(1));
String string = rawQuery2.getString(4);
if (!Utils.isEmptyOrNull(string)) {
hashMap.put(nb.q, string);
}
String string2 = rawQuery2.getString(5);
if (!Utils.isEmptyOrNull(string2)) {
hashMap.put("e", string2);
}
JSONObject jSONObject = new JSONObject(rawQuery2.getString(2));
int i2 = rawQuery2.getInt(3);
if (i2 == 1) {
hashMap.put("__TYPE__", "SESSION_START");
hashMap.put(nb.q, jSONObject.getString("appName"));
} else if (i2 == 3) {
hashMap.put("__TYPE__", "EVENT");
} else if (i2 == 5) {
hashMap.put("__TYPE__", "RESOLVE");
}
hashMap.put("s", jSONObject.getString("sessionId"));
hashMap.put("a", jSONObject.getString("apiKey"));
hashMap.put(ImpressionData.IMPRESSION_DATA_KEY_ABTEST, jSONObject.getString("abi"));
hashMap.put(TtmlNode.TAG_P, jSONObject.getString("platform"));
hashMap.put(i.a, jSONObject.getString("clsPackage"));
hashMap.put("av", jSONObject.getString(v8.i.W));
hashMap.put("sdk", jSONObject.getString("sdkVersion"));
hashMap.put("ma", jSONObject.getString("manufacturer"));
hashMap.put(TtmlNode.TAG_BR, jSONObject.getString("brand"));
hashMap.put("mo", jSONObject.getString("model"));
hashMap.put(Consts.KEY_TAPJOY_USER_ID_VERSION, jSONObject.getString(AnalyticsData.S_OS_VERSION));
hashMap.put("c", jSONObject.getString("connType"));
hashMap.put("pr", jSONObject.getString(AppLovinEventTypes.USER_VIEWED_PRODUCT));
hashMap.put(DownloadCommon.DOWNLOAD_REPORT_DOWNLOAD_ERROR, jSONObject.getString("device"));
if (!Utils.isEmptyOrNull(this.aifa)) {
hashMap.put("aifa", this.aifa);
hashMap.put(CampaignEx.JSON_KEY_AD_K, "AIFA");
hashMap.put("u", this.canonicalDeviceId);
} else {
hashMap.put(CampaignEx.JSON_KEY_AD_K, "ANDI");
hashMap.put("u", this.andi);
}
try {
SingularInstance.getInstance().getApiManager().enqueue(BaseApi.from(new JSONObject(hashMap).toString()));
this.database.delete("events", "id=" + rawQuery2.getString(0), null);
i++;
} catch (IOException e) {
logger.error("Error in JSON serialization", e);
}
} catch (Exception e2) {
logger.debug(e2.getMessage());
}
}
rawQuery2.close();
deleteDatabase();
logger.debug("Migrated " + i + " events!");
}
}