168 lines
7.1 KiB
Java
168 lines
7.1 KiB
Java
package com.ubtrobot.analytics;
|
|
|
|
import android.database.Cursor;
|
|
import android.util.Log;
|
|
import com.google.gson.Gson;
|
|
import com.google.gson.JsonSyntaxException;
|
|
import com.google.gson.reflect.TypeToken;
|
|
import com.ubt.jimu.controller.data.widget.JockstickDataConverter;
|
|
import com.ubtrobot.analytics.Event;
|
|
import com.unity3d.ads.metadata.MediationMetaData;
|
|
import java.util.HashMap;
|
|
import java.util.List;
|
|
import java.util.Map;
|
|
|
|
/* loaded from: classes2.dex */
|
|
public class EventScheme {
|
|
public static void a(AnalyticsDBHelper analyticsDBHelper) {
|
|
Log.i("dance", "Create table: event");
|
|
StringBuffer stringBuffer = new StringBuffer();
|
|
stringBuffer.append("CREATE TABLE IF NOT EXISTS ");
|
|
stringBuffer.append("event");
|
|
stringBuffer.append("(");
|
|
stringBuffer.append(JockstickDataConverter.ID);
|
|
stringBuffer.append(" INTEGER PRIMARY KEY AUTOINCREMENT,");
|
|
stringBuffer.append("event_id");
|
|
stringBuffer.append(" VARCHAR NOT NULL,");
|
|
stringBuffer.append("user_id");
|
|
stringBuffer.append(" VARCHAR DEFAULT '',");
|
|
stringBuffer.append("duration");
|
|
stringBuffer.append(" INTEGER DEFAULT 0,");
|
|
stringBuffer.append("category");
|
|
stringBuffer.append(" VARCHAR(32) NOT NULL,");
|
|
stringBuffer.append(MediationMetaData.KEY_VERSION);
|
|
stringBuffer.append(" VARCHAR(32) DEFAULT '',");
|
|
stringBuffer.append("recorded_at");
|
|
stringBuffer.append(" INTEGER DEFAULT 0,");
|
|
stringBuffer.append("segmentation");
|
|
stringBuffer.append(" VARCHAR DEFAULT '',");
|
|
stringBuffer.append("custom_segmentation");
|
|
stringBuffer.append(" VARCHAR DEFAULT ''");
|
|
stringBuffer.append(")");
|
|
analyticsDBHelper.a(stringBuffer.toString());
|
|
}
|
|
|
|
public static void b(AnalyticsDBHelper analyticsDBHelper) {
|
|
Log.i("dance", "Running upgradeToVersion2 ...");
|
|
if (analyticsDBHelper.a("event", "duration")) {
|
|
return;
|
|
}
|
|
analyticsDBHelper.b(String.format("ALTER TABLE %s ADD COLUMN %s INTEGER DEFAULT 0", "event", "duration"));
|
|
}
|
|
|
|
public static void c(AnalyticsDBHelper analyticsDBHelper) {
|
|
Log.i("dance", "Running upgradeToVersion3 ...");
|
|
if (analyticsDBHelper.a("event", "user_id")) {
|
|
return;
|
|
}
|
|
analyticsDBHelper.b(String.format("ALTER TABLE %s ADD COLUMN %s VARCHAR DEFAULT ''", "event", "user_id"));
|
|
}
|
|
|
|
public static void d(AnalyticsDBHelper analyticsDBHelper) {
|
|
Log.i("dance", "Running upgradeToVersion4 ...");
|
|
if (analyticsDBHelper.a("event", MediationMetaData.KEY_VERSION)) {
|
|
return;
|
|
}
|
|
analyticsDBHelper.b(String.format("ALTER TABLE %s ADD COLUMN %s VARCHAR DEFAULT ''", "event", MediationMetaData.KEY_VERSION));
|
|
}
|
|
|
|
public static class Converters {
|
|
private static final Gson a = new Gson();
|
|
|
|
static String a(List<Event> list) {
|
|
StringBuffer stringBuffer = new StringBuffer();
|
|
stringBuffer.append("INSERT INTO ");
|
|
stringBuffer.append("event");
|
|
stringBuffer.append("(");
|
|
stringBuffer.append("event_id");
|
|
stringBuffer.append(", ");
|
|
stringBuffer.append("user_id");
|
|
stringBuffer.append(", ");
|
|
stringBuffer.append("category");
|
|
stringBuffer.append(", ");
|
|
stringBuffer.append(MediationMetaData.KEY_VERSION);
|
|
stringBuffer.append(", ");
|
|
stringBuffer.append("duration");
|
|
stringBuffer.append(", ");
|
|
stringBuffer.append("recorded_at");
|
|
stringBuffer.append(", ");
|
|
stringBuffer.append("segmentation");
|
|
stringBuffer.append(", ");
|
|
stringBuffer.append("custom_segmentation");
|
|
stringBuffer.append(") ");
|
|
stringBuffer.append("values");
|
|
StringBuffer stringBuffer2 = new StringBuffer();
|
|
for (Event event : list) {
|
|
String userId = event.getUserId();
|
|
String str = "";
|
|
if (userId == null) {
|
|
userId = "";
|
|
}
|
|
String version = event.getVersion();
|
|
if (version != null) {
|
|
str = version;
|
|
}
|
|
stringBuffer2.append("(");
|
|
stringBuffer2.append("'");
|
|
stringBuffer2.append(event.getEventId());
|
|
stringBuffer2.append("', ");
|
|
stringBuffer2.append("'");
|
|
stringBuffer2.append(userId);
|
|
stringBuffer2.append("', ");
|
|
stringBuffer2.append("'");
|
|
stringBuffer2.append(event.getCategory());
|
|
stringBuffer2.append("', ");
|
|
stringBuffer2.append("'");
|
|
stringBuffer2.append(str);
|
|
stringBuffer2.append("', ");
|
|
stringBuffer2.append("'");
|
|
stringBuffer2.append(event.getDuration());
|
|
stringBuffer2.append("', ");
|
|
stringBuffer2.append("'");
|
|
stringBuffer2.append(event.getRecordedAt());
|
|
stringBuffer2.append("', ");
|
|
stringBuffer2.append("'");
|
|
stringBuffer2.append(a.toJson(event.getSegmentation()));
|
|
stringBuffer2.append("', ");
|
|
stringBuffer2.append("'");
|
|
stringBuffer2.append(a.toJson(event.getCustomSegmentation()));
|
|
stringBuffer2.append("'");
|
|
stringBuffer2.append(")");
|
|
stringBuffer2.append(", ");
|
|
}
|
|
stringBuffer2.delete(stringBuffer2.length() - 2, stringBuffer2.length() - 1);
|
|
stringBuffer.append(stringBuffer2.toString());
|
|
return stringBuffer.toString();
|
|
}
|
|
|
|
static Event a(Cursor cursor) {
|
|
String string = cursor.getString(cursor.getColumnIndex("event_id"));
|
|
String string2 = cursor.getString(cursor.getColumnIndex("user_id"));
|
|
String string3 = cursor.getString(cursor.getColumnIndex("category"));
|
|
String string4 = cursor.getString(cursor.getColumnIndex(MediationMetaData.KEY_VERSION));
|
|
long j = cursor.getLong(cursor.getColumnIndex("duration"));
|
|
long j2 = cursor.getLong(cursor.getColumnIndex("recorded_at"));
|
|
String string5 = cursor.getString(cursor.getColumnIndex("segmentation"));
|
|
String string6 = cursor.getString(cursor.getColumnIndex("custom_segmentation"));
|
|
Event.Builder builder = new Event.Builder(string, string3);
|
|
builder.a(string2);
|
|
builder.b(string4);
|
|
builder.a(j);
|
|
builder.b(j2 * 1000);
|
|
builder.b(a(string5));
|
|
builder.a(a(string6));
|
|
return builder.a();
|
|
}
|
|
|
|
private static Map<String, String> a(String str) {
|
|
try {
|
|
return (Map) a.fromJson(str, new TypeToken<Map<String, String>>() { // from class: com.ubtrobot.analytics.EventScheme.Converters.1
|
|
}.getType());
|
|
} catch (JsonSyntaxException unused) {
|
|
Log.e("dance", "Converters to map failed:" + str);
|
|
return new HashMap();
|
|
}
|
|
}
|
|
}
|
|
}
|