Primer paso de la investigacion. Se aportan el .apk, las carpetas con el apk extraido y el apk descompilado. El archivo API_DOCUMENTATION.md es un archivo donde se anotaran los descubrimientos del funcionamiento de la API, y los .py son scripts para probar la funcionalidad de la API con los métodos que vayamos encontrando. Finalmente, los archivos .js son scripts de Frida para extraer informacion de la APP durante la ejecucion.

This commit is contained in:
2025-12-04 13:59:54 +01:00
parent f2fd1c3bf5
commit e0133d2ca2
10432 changed files with 1019085 additions and 1 deletions

View File

@@ -0,0 +1,14 @@
package com.google.firebase.crashlytics.internal;
import com.google.firebase.crashlytics.internal.model.StaticSessionData;
/* loaded from: classes3.dex */
public interface CrashlyticsNativeComponent {
NativeSessionFileProvider getSessionFileProvider(String str);
boolean hasCrashDataForCurrentSession();
boolean hasCrashDataForSession(String str);
void prepareNativeSession(String str, String str2, long j4, StaticSessionData staticSessionData);
}

View File

@@ -0,0 +1,109 @@
package com.google.firebase.crashlytics.internal;
import I2.k;
import c2.h;
import com.google.firebase.crashlytics.internal.model.CrashlyticsReport;
import com.google.firebase.crashlytics.internal.model.StaticSessionData;
import com.google.firebase.inject.Deferred;
import com.google.firebase.inject.Provider;
import java.io.File;
import java.util.concurrent.atomic.AtomicReference;
/* loaded from: classes3.dex */
public final class CrashlyticsNativeComponentDeferredProxy implements CrashlyticsNativeComponent {
private static final NativeSessionFileProvider MISSING_NATIVE_SESSION_FILE_PROVIDER = new MissingNativeSessionFileProvider();
private final AtomicReference<CrashlyticsNativeComponent> availableNativeComponent = new AtomicReference<>(null);
private final Deferred<CrashlyticsNativeComponent> deferredNativeComponent;
/* loaded from: classes3.dex */
public static final class MissingNativeSessionFileProvider implements NativeSessionFileProvider {
private MissingNativeSessionFileProvider() {
}
@Override // com.google.firebase.crashlytics.internal.NativeSessionFileProvider
public File getAppFile() {
return null;
}
@Override // com.google.firebase.crashlytics.internal.NativeSessionFileProvider
public CrashlyticsReport.ApplicationExitInfo getApplicationExitInto() {
return null;
}
@Override // com.google.firebase.crashlytics.internal.NativeSessionFileProvider
public File getBinaryImagesFile() {
return null;
}
@Override // com.google.firebase.crashlytics.internal.NativeSessionFileProvider
public File getDeviceFile() {
return null;
}
@Override // com.google.firebase.crashlytics.internal.NativeSessionFileProvider
public File getMetadataFile() {
return null;
}
@Override // com.google.firebase.crashlytics.internal.NativeSessionFileProvider
public File getMinidumpFile() {
return null;
}
@Override // com.google.firebase.crashlytics.internal.NativeSessionFileProvider
public File getOsFile() {
return null;
}
@Override // com.google.firebase.crashlytics.internal.NativeSessionFileProvider
public File getSessionFile() {
return null;
}
public /* synthetic */ MissingNativeSessionFileProvider(AnonymousClass1 anonymousClass1) {
this();
}
}
public CrashlyticsNativeComponentDeferredProxy(Deferred<CrashlyticsNativeComponent> deferred) {
this.deferredNativeComponent = deferred;
deferred.whenAvailable(new k(this, 15));
}
public static /* synthetic */ void b(CrashlyticsNativeComponentDeferredProxy crashlyticsNativeComponentDeferredProxy, Provider provider) {
crashlyticsNativeComponentDeferredProxy.lambda$new$0(provider);
}
public /* synthetic */ void lambda$new$0(Provider provider) {
Logger.getLogger().d("Crashlytics native component now available.");
this.availableNativeComponent.set((CrashlyticsNativeComponent) provider.get());
}
public static /* synthetic */ void lambda$prepareNativeSession$1(String str, String str2, long j4, StaticSessionData staticSessionData, Provider provider) {
((CrashlyticsNativeComponent) provider.get()).prepareNativeSession(str, str2, j4, staticSessionData);
}
@Override // com.google.firebase.crashlytics.internal.CrashlyticsNativeComponent
public NativeSessionFileProvider getSessionFileProvider(String str) {
CrashlyticsNativeComponent crashlyticsNativeComponent = this.availableNativeComponent.get();
return crashlyticsNativeComponent == null ? MISSING_NATIVE_SESSION_FILE_PROVIDER : crashlyticsNativeComponent.getSessionFileProvider(str);
}
@Override // com.google.firebase.crashlytics.internal.CrashlyticsNativeComponent
public boolean hasCrashDataForCurrentSession() {
CrashlyticsNativeComponent crashlyticsNativeComponent = this.availableNativeComponent.get();
return crashlyticsNativeComponent != null && crashlyticsNativeComponent.hasCrashDataForCurrentSession();
}
@Override // com.google.firebase.crashlytics.internal.CrashlyticsNativeComponent
public boolean hasCrashDataForSession(String str) {
CrashlyticsNativeComponent crashlyticsNativeComponent = this.availableNativeComponent.get();
return crashlyticsNativeComponent != null && crashlyticsNativeComponent.hasCrashDataForSession(str);
}
@Override // com.google.firebase.crashlytics.internal.CrashlyticsNativeComponent
public void prepareNativeSession(String str, String str2, long j4, StaticSessionData staticSessionData) {
Logger.getLogger().v("Deferring native open session: " + str);
this.deferredNativeComponent.whenAvailable(new h(str, str2, j4, staticSessionData));
}
}

View File

@@ -0,0 +1,38 @@
package com.google.firebase.crashlytics.internal;
import com.google.firebase.crashlytics.internal.metadata.UserMetadata;
import com.google.firebase.remoteconfig.interop.rollouts.RolloutAssignment;
import com.google.firebase.remoteconfig.interop.rollouts.RolloutsState;
import com.google.firebase.remoteconfig.interop.rollouts.RolloutsStateSubscriber;
import java.util.ArrayList;
import java.util.Set;
import kotlin.Metadata;
import kotlin.collections.CollectionsKt__IterablesKt;
import kotlin.jvm.internal.Intrinsics;
@Metadata(d1 = {"\u0000\u001e\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\b\u0002\n\u0002\u0010\u0002\n\u0000\n\u0002\u0018\u0002\n\u0000\u0018\u00002\u00020\u0001B\r\u0012\u0006\u0010\u0002\u001a\u00020\u0003¢\u0006\u0002\u0010\u0004J\u0010\u0010\u0005\u001a\u00020\u00062\u0006\u0010\u0007\u001a\u00020\bH\u0016R\u000e\u0010\u0002\u001a\u00020\u0003X\u0082\u0004¢\u0006\u0002\n\u0000¨\u0006\t"}, d2 = {"Lcom/google/firebase/crashlytics/internal/CrashlyticsRemoteConfigListener;", "Lcom/google/firebase/remoteconfig/interop/rollouts/RolloutsStateSubscriber;", "userMetadata", "Lcom/google/firebase/crashlytics/internal/metadata/UserMetadata;", "(Lcom/google/firebase/crashlytics/internal/metadata/UserMetadata;)V", "onRolloutsStateChanged", "", "rolloutsState", "Lcom/google/firebase/remoteconfig/interop/rollouts/RolloutsState;", "com.google.firebase-firebase-crashlytics"}, k = 1, mv = {1, 7, 1}, xi = 48)
/* loaded from: classes3.dex */
public final class CrashlyticsRemoteConfigListener implements RolloutsStateSubscriber {
private final UserMetadata userMetadata;
public CrashlyticsRemoteConfigListener(UserMetadata userMetadata) {
Intrinsics.checkNotNullParameter(userMetadata, "userMetadata");
this.userMetadata = userMetadata;
}
@Override // com.google.firebase.remoteconfig.interop.rollouts.RolloutsStateSubscriber
public void onRolloutsStateChanged(RolloutsState rolloutsState) {
int collectionSizeOrDefault;
Intrinsics.checkNotNullParameter(rolloutsState, "rolloutsState");
UserMetadata userMetadata = this.userMetadata;
Set<RolloutAssignment> rolloutAssignments = rolloutsState.getRolloutAssignments();
Intrinsics.checkNotNullExpressionValue(rolloutAssignments, "rolloutsState.rolloutAssignments");
collectionSizeOrDefault = CollectionsKt__IterablesKt.collectionSizeOrDefault(rolloutAssignments, 10);
ArrayList arrayList = new ArrayList(collectionSizeOrDefault);
for (RolloutAssignment rolloutAssignment : rolloutAssignments) {
arrayList.add(com.google.firebase.crashlytics.internal.metadata.RolloutAssignment.create(rolloutAssignment.getRolloutId(), rolloutAssignment.getParameterKey(), rolloutAssignment.getParameterValue(), rolloutAssignment.getVariantId(), rolloutAssignment.getTemplateVersion()));
}
userMetadata.updateRolloutsState(arrayList);
Logger.getLogger().d("Updated Crashlytics Rollout State");
}
}

View File

@@ -0,0 +1,80 @@
package com.google.firebase.crashlytics.internal;
import android.content.Context;
import com.google.firebase.crashlytics.internal.common.CommonUtils;
import java.io.IOException;
import java.io.InputStream;
/* loaded from: classes3.dex */
public class DevelopmentPlatformProvider {
private static final String FLUTTER_ASSET_FILE = "flutter_assets/NOTICES.Z";
private static final String FLUTTER_PLATFORM = "Flutter";
private static final String UNITY_PLATFORM = "Unity";
private static final String UNITY_VERSION_FIELD = "com.google.firebase.crashlytics.unity_version";
private final Context context;
private DevelopmentPlatform developmentPlatform = null;
/* loaded from: classes3.dex */
public class DevelopmentPlatform {
private final String developmentPlatform;
private final String developmentPlatformVersion;
private DevelopmentPlatform() {
int resourcesIdentifier = CommonUtils.getResourcesIdentifier(DevelopmentPlatformProvider.this.context, DevelopmentPlatformProvider.UNITY_VERSION_FIELD, "string");
if (resourcesIdentifier != 0) {
this.developmentPlatform = DevelopmentPlatformProvider.UNITY_PLATFORM;
String string = DevelopmentPlatformProvider.this.context.getResources().getString(resourcesIdentifier);
this.developmentPlatformVersion = string;
Logger.getLogger().v("Unity Editor version is: " + string);
return;
}
if (DevelopmentPlatformProvider.this.assetFileExists(DevelopmentPlatformProvider.FLUTTER_ASSET_FILE)) {
this.developmentPlatform = DevelopmentPlatformProvider.FLUTTER_PLATFORM;
this.developmentPlatformVersion = null;
Logger.getLogger().v("Development platform is: Flutter");
} else {
this.developmentPlatform = null;
this.developmentPlatformVersion = null;
}
}
}
public DevelopmentPlatformProvider(Context context) {
this.context = context;
}
/* JADX INFO: Access modifiers changed from: private */
public boolean assetFileExists(String str) {
if (this.context.getAssets() == null) {
return false;
}
try {
InputStream open = this.context.getAssets().open(str);
if (open != null) {
open.close();
}
return true;
} catch (IOException unused) {
return false;
}
}
private DevelopmentPlatform initDevelopmentPlatform() {
if (this.developmentPlatform == null) {
this.developmentPlatform = new DevelopmentPlatform();
}
return this.developmentPlatform;
}
public static boolean isUnity(Context context) {
return CommonUtils.getResourcesIdentifier(context, UNITY_VERSION_FIELD, "string") != 0;
}
public String getDevelopmentPlatform() {
return initDevelopmentPlatform().developmentPlatform;
}
public String getDevelopmentPlatformVersion() {
return initDevelopmentPlatform().developmentPlatformVersion;
}
}

View File

@@ -0,0 +1,83 @@
package com.google.firebase.crashlytics.internal;
import android.util.Log;
/* loaded from: classes3.dex */
public class Logger {
private int logLevel = 4;
private final String tag;
public static final String TAG = "FirebaseCrashlytics";
static final Logger DEFAULT_LOGGER = new Logger(TAG);
public Logger(String str) {
this.tag = str;
}
private boolean canLog(int i) {
return this.logLevel <= i || Log.isLoggable(this.tag, i);
}
public static Logger getLogger() {
return DEFAULT_LOGGER;
}
public void d(String str, Throwable th) {
if (canLog(3)) {
Log.d(this.tag, str, th);
}
}
public void e(String str, Throwable th) {
if (canLog(6)) {
Log.e(this.tag, str, th);
}
}
public void i(String str, Throwable th) {
if (canLog(4)) {
Log.i(this.tag, str, th);
}
}
public void log(int i, String str) {
log(i, str, false);
}
public void v(String str, Throwable th) {
if (canLog(2)) {
Log.v(this.tag, str, th);
}
}
public void w(String str, Throwable th) {
if (canLog(5)) {
Log.w(this.tag, str, th);
}
}
public void log(int i, String str, boolean z3) {
if (z3 || canLog(i)) {
Log.println(i, this.tag, str);
}
}
public void d(String str) {
d(str, null);
}
public void e(String str) {
e(str, null);
}
public void i(String str) {
i(str, null);
}
public void v(String str) {
v(str, null);
}
public void w(String str) {
w(str, null);
}
}

View File

@@ -0,0 +1,23 @@
package com.google.firebase.crashlytics.internal;
import com.google.firebase.crashlytics.internal.model.CrashlyticsReport;
import java.io.File;
/* loaded from: classes3.dex */
public interface NativeSessionFileProvider {
File getAppFile();
CrashlyticsReport.ApplicationExitInfo getApplicationExitInto();
File getBinaryImagesFile();
File getDeviceFile();
File getMetadataFile();
File getMinidumpFile();
File getOsFile();
File getSessionFile();
}

View File

@@ -0,0 +1,122 @@
package com.google.firebase.crashlytics.internal;
import android.app.ActivityManager;
import android.app.Application;
import android.content.Context;
import android.os.Build;
import android.os.Process;
import com.google.firebase.crashlytics.internal.model.CrashlyticsReport;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import kotlin.Metadata;
import kotlin.collections.CollectionsKt;
import kotlin.collections.CollectionsKt__IterablesKt;
import kotlin.jvm.JvmOverloads;
import kotlin.jvm.internal.Intrinsics;
@Metadata(d1 = {"\u00004\n\u0002\u0018\u0002\n\u0002\u0010\u0000\n\u0002\b\u0002\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010\u000e\n\u0000\n\u0002\u0010\b\n\u0002\b\u0002\n\u0002\u0010\u000b\n\u0000\n\u0002\u0010 \n\u0000\n\u0002\u0018\u0002\n\u0002\b\u0003\bÀ\u0002\u0018\u00002\u00020\u0001B\u0007\b\u0002¢\u0006\u0002\u0010\u0002J.\u0010\u0003\u001a\u00020\u00042\u0006\u0010\u0005\u001a\u00020\u00062\b\b\u0002\u0010\u0007\u001a\u00020\b2\b\b\u0002\u0010\t\u001a\u00020\b2\b\b\u0002\u0010\n\u001a\u00020\u000bH\u0007J\u0014\u0010\f\u001a\b\u0012\u0004\u0012\u00020\u00040\r2\u0006\u0010\u000e\u001a\u00020\u000fJ\u000e\u0010\u0010\u001a\u00020\u00042\u0006\u0010\u000e\u001a\u00020\u000fJ\b\u0010\u0011\u001a\u00020\u0006H\u0002¨\u0006\u0012"}, d2 = {"Lcom/google/firebase/crashlytics/internal/ProcessDetailsProvider;", "", "()V", "buildProcessDetails", "Lcom/google/firebase/crashlytics/internal/model/CrashlyticsReport$Session$Event$Application$ProcessDetails;", "processName", "", "pid", "", "importance", "isDefaultProcess", "", "getAppProcessDetails", "", "context", "Landroid/content/Context;", "getCurrentProcessDetails", "getProcessName", "com.google.firebase-firebase-crashlytics"}, k = 1, mv = {1, 7, 1}, xi = 48)
/* loaded from: classes3.dex */
public final class ProcessDetailsProvider {
public static final ProcessDetailsProvider INSTANCE = new ProcessDetailsProvider();
private ProcessDetailsProvider() {
}
public static /* synthetic */ CrashlyticsReport.Session.Event.Application.ProcessDetails buildProcessDetails$default(ProcessDetailsProvider processDetailsProvider, String str, int i, int i4, boolean z3, int i5, Object obj) {
if ((i5 & 2) != 0) {
i = 0;
}
if ((i5 & 4) != 0) {
i4 = 0;
}
if ((i5 & 8) != 0) {
z3 = false;
}
return processDetailsProvider.buildProcessDetails(str, i, i4, z3);
}
private final String getProcessName() {
String myProcessName;
if (Build.VERSION.SDK_INT < 33) {
String processName = Application.getProcessName();
return processName == null ? "" : processName;
}
myProcessName = Process.myProcessName();
Intrinsics.checkNotNullExpressionValue(myProcessName, "{\n Process.myProcessName()\n }");
return myProcessName;
}
@JvmOverloads
public final CrashlyticsReport.Session.Event.Application.ProcessDetails buildProcessDetails(String processName) {
Intrinsics.checkNotNullParameter(processName, "processName");
return buildProcessDetails$default(this, processName, 0, 0, false, 14, null);
}
public final List<CrashlyticsReport.Session.Event.Application.ProcessDetails> getAppProcessDetails(Context context) {
int collectionSizeOrDefault;
Intrinsics.checkNotNullParameter(context, "context");
int i = context.getApplicationInfo().uid;
String str = context.getApplicationInfo().processName;
Object systemService = context.getSystemService("activity");
ActivityManager activityManager = systemService instanceof ActivityManager ? (ActivityManager) systemService : null;
List<ActivityManager.RunningAppProcessInfo> runningAppProcesses = activityManager != null ? activityManager.getRunningAppProcesses() : null;
if (runningAppProcesses == null) {
runningAppProcesses = CollectionsKt.emptyList();
}
List filterNotNull = CollectionsKt.filterNotNull(runningAppProcesses);
ArrayList arrayList = new ArrayList();
for (Object obj : filterNotNull) {
if (((ActivityManager.RunningAppProcessInfo) obj).uid == i) {
arrayList.add(obj);
}
}
collectionSizeOrDefault = CollectionsKt__IterablesKt.collectionSizeOrDefault(arrayList, 10);
ArrayList arrayList2 = new ArrayList(collectionSizeOrDefault);
Iterator it = arrayList.iterator();
while (it.hasNext()) {
ActivityManager.RunningAppProcessInfo runningAppProcessInfo = (ActivityManager.RunningAppProcessInfo) it.next();
arrayList2.add(CrashlyticsReport.Session.Event.Application.ProcessDetails.builder().setProcessName(runningAppProcessInfo.processName).setPid(runningAppProcessInfo.pid).setImportance(runningAppProcessInfo.importance).setDefaultProcess(Intrinsics.areEqual(runningAppProcessInfo.processName, str)).build());
}
return arrayList2;
}
public final CrashlyticsReport.Session.Event.Application.ProcessDetails getCurrentProcessDetails(Context context) {
Object obj;
Intrinsics.checkNotNullParameter(context, "context");
int myPid = Process.myPid();
Iterator<T> it = getAppProcessDetails(context).iterator();
while (true) {
if (!it.hasNext()) {
obj = null;
break;
}
obj = it.next();
if (((CrashlyticsReport.Session.Event.Application.ProcessDetails) obj).getPid() == myPid) {
break;
}
}
CrashlyticsReport.Session.Event.Application.ProcessDetails processDetails = (CrashlyticsReport.Session.Event.Application.ProcessDetails) obj;
return processDetails == null ? buildProcessDetails$default(this, getProcessName(), myPid, 0, false, 12, null) : processDetails;
}
@JvmOverloads
public final CrashlyticsReport.Session.Event.Application.ProcessDetails buildProcessDetails(String processName, int i) {
Intrinsics.checkNotNullParameter(processName, "processName");
return buildProcessDetails$default(this, processName, i, 0, false, 12, null);
}
@JvmOverloads
public final CrashlyticsReport.Session.Event.Application.ProcessDetails buildProcessDetails(String processName, int i, int i4) {
Intrinsics.checkNotNullParameter(processName, "processName");
return buildProcessDetails$default(this, processName, i, i4, false, 8, null);
}
@JvmOverloads
public final CrashlyticsReport.Session.Event.Application.ProcessDetails buildProcessDetails(String processName, int pid, int importance, boolean isDefaultProcess) {
Intrinsics.checkNotNullParameter(processName, "processName");
CrashlyticsReport.Session.Event.Application.ProcessDetails build = CrashlyticsReport.Session.Event.Application.ProcessDetails.builder().setProcessName(processName).setPid(pid).setImportance(importance).setDefaultProcess(isDefaultProcess).build();
Intrinsics.checkNotNullExpressionValue(build, "builder()\n .setProc…ltProcess)\n .build()");
return build;
}
}

View File

@@ -0,0 +1,34 @@
package com.google.firebase.crashlytics.internal;
import I2.k;
import com.google.firebase.crashlytics.internal.metadata.UserMetadata;
import com.google.firebase.inject.Deferred;
import com.google.firebase.inject.Provider;
import com.google.firebase.remoteconfig.RemoteConfigComponent;
import com.google.firebase.remoteconfig.interop.FirebaseRemoteConfigInterop;
/* loaded from: classes3.dex */
public class RemoteConfigDeferredProxy {
private final Deferred<FirebaseRemoteConfigInterop> remoteConfigInteropDeferred;
public RemoteConfigDeferredProxy(Deferred<FirebaseRemoteConfigInterop> deferred) {
this.remoteConfigInteropDeferred = deferred;
}
public static /* synthetic */ void a(CrashlyticsRemoteConfigListener crashlyticsRemoteConfigListener, Provider provider) {
lambda$setupListener$0(crashlyticsRemoteConfigListener, provider);
}
public static /* synthetic */ void lambda$setupListener$0(CrashlyticsRemoteConfigListener crashlyticsRemoteConfigListener, Provider provider) {
((FirebaseRemoteConfigInterop) provider.get()).registerRolloutsStateSubscriber(RemoteConfigComponent.DEFAULT_NAMESPACE, crashlyticsRemoteConfigListener);
Logger.getLogger().d("Registering RemoteConfig Rollouts subscriber");
}
public void setupListener(UserMetadata userMetadata) {
if (userMetadata == null) {
Logger.getLogger().w("Didn't successfully register with UserMetadata for rollouts listener");
} else {
this.remoteConfigInteropDeferred.whenAvailable(new k(new CrashlyticsRemoteConfigListener(userMetadata), 16));
}
}
}

View File

@@ -0,0 +1,8 @@
package com.google.firebase.crashlytics.internal.analytics;
import android.os.Bundle;
/* loaded from: classes3.dex */
public interface AnalyticsEventLogger {
void logEvent(String str, Bundle bundle);
}

View File

@@ -0,0 +1,8 @@
package com.google.firebase.crashlytics.internal.analytics;
import android.os.Bundle;
/* loaded from: classes3.dex */
public interface AnalyticsEventReceiver {
void onEvent(String str, Bundle bundle);
}

View File

@@ -0,0 +1,61 @@
package com.google.firebase.crashlytics.internal.analytics;
import android.os.Bundle;
import com.google.firebase.crashlytics.internal.Logger;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.TimeUnit;
/* loaded from: classes3.dex */
public class BlockingAnalyticsEventLogger implements AnalyticsEventReceiver, AnalyticsEventLogger {
static final String APP_EXCEPTION_EVENT_NAME = "_ae";
private final CrashlyticsOriginAnalyticsEventLogger baseAnalyticsEventLogger;
private CountDownLatch eventLatch;
private final TimeUnit timeUnit;
private final int timeout;
private final Object latchLock = new Object();
private boolean callbackReceived = false;
public BlockingAnalyticsEventLogger(CrashlyticsOriginAnalyticsEventLogger crashlyticsOriginAnalyticsEventLogger, int i, TimeUnit timeUnit) {
this.baseAnalyticsEventLogger = crashlyticsOriginAnalyticsEventLogger;
this.timeout = i;
this.timeUnit = timeUnit;
}
public boolean isCallbackReceived() {
return this.callbackReceived;
}
@Override // com.google.firebase.crashlytics.internal.analytics.AnalyticsEventLogger
public void logEvent(String str, Bundle bundle) {
synchronized (this.latchLock) {
try {
Logger.getLogger().v("Logging event " + str + " to Firebase Analytics with params " + bundle);
this.eventLatch = new CountDownLatch(1);
this.callbackReceived = false;
this.baseAnalyticsEventLogger.logEvent(str, bundle);
Logger.getLogger().v("Awaiting app exception callback from Analytics...");
try {
if (this.eventLatch.await(this.timeout, this.timeUnit)) {
this.callbackReceived = true;
Logger.getLogger().v("App exception callback received from Analytics listener.");
} else {
Logger.getLogger().w("Timeout exceeded while awaiting app exception callback from Analytics listener.");
}
} catch (InterruptedException unused) {
Logger.getLogger().e("Interrupted while awaiting app exception callback from Analytics listener.");
}
this.eventLatch = null;
} catch (Throwable th) {
throw th;
}
}
}
@Override // com.google.firebase.crashlytics.internal.analytics.AnalyticsEventReceiver
public void onEvent(String str, Bundle bundle) {
CountDownLatch countDownLatch = this.eventLatch;
if (countDownLatch != null && APP_EXCEPTION_EVENT_NAME.equals(str)) {
countDownLatch.countDown();
}
}
}

View File

@@ -0,0 +1,45 @@
package com.google.firebase.crashlytics.internal.analytics;
import android.os.Bundle;
import com.google.firebase.crashlytics.internal.Logger;
import com.google.firebase.crashlytics.internal.breadcrumbs.BreadcrumbHandler;
import com.google.firebase.crashlytics.internal.breadcrumbs.BreadcrumbSource;
import org.json.JSONException;
import org.json.JSONObject;
/* loaded from: classes3.dex */
public class BreadcrumbAnalyticsEventReceiver implements AnalyticsEventReceiver, BreadcrumbSource {
private static final String BREADCRUMB_NAME_KEY = "name";
private static final String BREADCRUMB_PARAMS_KEY = "parameters";
private static final String BREADCRUMB_PREFIX = "$A$:";
private BreadcrumbHandler breadcrumbHandler;
private static String serializeEvent(String str, Bundle bundle) throws JSONException {
JSONObject jSONObject = new JSONObject();
JSONObject jSONObject2 = new JSONObject();
for (String str2 : bundle.keySet()) {
jSONObject2.put(str2, bundle.get(str2));
}
jSONObject.put("name", str);
jSONObject.put("parameters", jSONObject2);
return jSONObject.toString();
}
@Override // com.google.firebase.crashlytics.internal.analytics.AnalyticsEventReceiver
public void onEvent(String str, Bundle bundle) {
BreadcrumbHandler breadcrumbHandler = this.breadcrumbHandler;
if (breadcrumbHandler != null) {
try {
breadcrumbHandler.handleBreadcrumb(BREADCRUMB_PREFIX + serializeEvent(str, bundle));
} catch (JSONException unused) {
Logger.getLogger().w("Unable to serialize Firebase Analytics event to breadcrumb.");
}
}
}
@Override // com.google.firebase.crashlytics.internal.breadcrumbs.BreadcrumbSource
public void registerBreadcrumbHandler(BreadcrumbHandler breadcrumbHandler) {
this.breadcrumbHandler = breadcrumbHandler;
Logger.getLogger().d("Registered Firebase Analytics event receiver for breadcrumbs");
}
}

View File

@@ -0,0 +1,19 @@
package com.google.firebase.crashlytics.internal.analytics;
import android.os.Bundle;
import com.google.firebase.analytics.connector.AnalyticsConnector;
/* loaded from: classes3.dex */
public class CrashlyticsOriginAnalyticsEventLogger implements AnalyticsEventLogger {
static final String FIREBASE_ANALYTICS_ORIGIN_CRASHLYTICS = "clx";
private final AnalyticsConnector analyticsConnector;
public CrashlyticsOriginAnalyticsEventLogger(AnalyticsConnector analyticsConnector) {
this.analyticsConnector = analyticsConnector;
}
@Override // com.google.firebase.crashlytics.internal.analytics.AnalyticsEventLogger
public void logEvent(String str, Bundle bundle) {
this.analyticsConnector.logEvent(FIREBASE_ANALYTICS_ORIGIN_CRASHLYTICS, str, bundle);
}
}

View File

@@ -0,0 +1,12 @@
package com.google.firebase.crashlytics.internal.analytics;
import android.os.Bundle;
import com.google.firebase.crashlytics.internal.Logger;
/* loaded from: classes3.dex */
public class UnavailableAnalyticsEventLogger implements AnalyticsEventLogger {
@Override // com.google.firebase.crashlytics.internal.analytics.AnalyticsEventLogger
public void logEvent(String str, Bundle bundle) {
Logger.getLogger().d("Skipping logging Crashlytics event to Firebase, no Firebase Analytics");
}
}

View File

@@ -0,0 +1,6 @@
package com.google.firebase.crashlytics.internal.breadcrumbs;
/* loaded from: classes3.dex */
public interface BreadcrumbHandler {
void handleBreadcrumb(String str);
}

View File

@@ -0,0 +1,6 @@
package com.google.firebase.crashlytics.internal.breadcrumbs;
/* loaded from: classes3.dex */
public interface BreadcrumbSource {
void registerBreadcrumbHandler(BreadcrumbHandler breadcrumbHandler);
}

View File

@@ -0,0 +1,11 @@
package com.google.firebase.crashlytics.internal.breadcrumbs;
import com.google.firebase.crashlytics.internal.Logger;
/* loaded from: classes3.dex */
public class DisabledBreadcrumbSource implements BreadcrumbSource {
@Override // com.google.firebase.crashlytics.internal.breadcrumbs.BreadcrumbSource
public void registerBreadcrumbHandler(BreadcrumbHandler breadcrumbHandler) {
Logger.getLogger().d("Could not register handler for breadcrumbs events.");
}
}

View File

@@ -0,0 +1,46 @@
package com.google.firebase.crashlytics.internal.common;
import android.content.Context;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
import com.google.firebase.crashlytics.internal.DevelopmentPlatformProvider;
import java.util.List;
/* loaded from: classes3.dex */
public class AppData {
public final String buildId;
public final List<BuildIdInfo> buildIdInfoList;
public final DevelopmentPlatformProvider developmentPlatformProvider;
public final String googleAppId;
public final String installerPackageName;
public final String packageName;
public final String versionCode;
public final String versionName;
public AppData(String str, String str2, List<BuildIdInfo> list, String str3, String str4, String str5, String str6, DevelopmentPlatformProvider developmentPlatformProvider) {
this.googleAppId = str;
this.buildId = str2;
this.buildIdInfoList = list;
this.installerPackageName = str3;
this.packageName = str4;
this.versionCode = str5;
this.versionName = str6;
this.developmentPlatformProvider = developmentPlatformProvider;
}
public static AppData create(Context context, IdManager idManager, String str, String str2, List<BuildIdInfo> list, DevelopmentPlatformProvider developmentPlatformProvider) throws PackageManager.NameNotFoundException {
String packageName = context.getPackageName();
String installerPackageName = idManager.getInstallerPackageName();
PackageInfo packageInfo = context.getPackageManager().getPackageInfo(packageName, 0);
String appBuildVersion = getAppBuildVersion(packageInfo);
String str3 = packageInfo.versionName;
if (str3 == null) {
str3 = IdManager.DEFAULT_VERSION_NAME;
}
return new AppData(str, str2, list, installerPackageName, packageName, appBuildVersion, str3, developmentPlatformProvider);
}
private static String getAppBuildVersion(PackageInfo packageInfo) {
return Long.toString(packageInfo.getLongVersionCode());
}
}

View File

@@ -0,0 +1,63 @@
package com.google.firebase.crashlytics.internal.common;
import com.google.firebase.crashlytics.internal.model.CrashlyticsReport;
import java.io.File;
/* JADX INFO: Access modifiers changed from: package-private */
/* loaded from: classes3.dex */
public final class AutoValue_CrashlyticsReportWithSessionId extends CrashlyticsReportWithSessionId {
private final CrashlyticsReport report;
private final File reportFile;
private final String sessionId;
public AutoValue_CrashlyticsReportWithSessionId(CrashlyticsReport crashlyticsReport, String str, File file) {
if (crashlyticsReport == null) {
throw new NullPointerException("Null report");
}
this.report = crashlyticsReport;
if (str == null) {
throw new NullPointerException("Null sessionId");
}
this.sessionId = str;
if (file == null) {
throw new NullPointerException("Null reportFile");
}
this.reportFile = file;
}
public boolean equals(Object obj) {
if (obj == this) {
return true;
}
if (obj instanceof CrashlyticsReportWithSessionId) {
CrashlyticsReportWithSessionId crashlyticsReportWithSessionId = (CrashlyticsReportWithSessionId) obj;
if (this.report.equals(crashlyticsReportWithSessionId.getReport()) && this.sessionId.equals(crashlyticsReportWithSessionId.getSessionId()) && this.reportFile.equals(crashlyticsReportWithSessionId.getReportFile())) {
return true;
}
}
return false;
}
@Override // com.google.firebase.crashlytics.internal.common.CrashlyticsReportWithSessionId
public CrashlyticsReport getReport() {
return this.report;
}
@Override // com.google.firebase.crashlytics.internal.common.CrashlyticsReportWithSessionId
public File getReportFile() {
return this.reportFile;
}
@Override // com.google.firebase.crashlytics.internal.common.CrashlyticsReportWithSessionId
public String getSessionId() {
return this.sessionId;
}
public int hashCode() {
return this.reportFile.hashCode() ^ ((((this.report.hashCode() ^ 1000003) * 1000003) ^ this.sessionId.hashCode()) * 1000003);
}
public String toString() {
return "CrashlyticsReportWithSessionId{report=" + this.report + ", sessionId=" + this.sessionId + ", reportFile=" + this.reportFile + "}";
}
}

View File

@@ -0,0 +1,55 @@
package com.google.firebase.crashlytics.internal.common;
import C.w;
import com.google.firebase.crashlytics.internal.common.InstallIdProvider;
/* loaded from: classes3.dex */
final class AutoValue_InstallIdProvider_InstallIds extends InstallIdProvider.InstallIds {
private final String crashlyticsInstallId;
private final String firebaseInstallationId;
public AutoValue_InstallIdProvider_InstallIds(String str, String str2) {
if (str == null) {
throw new NullPointerException("Null crashlyticsInstallId");
}
this.crashlyticsInstallId = str;
this.firebaseInstallationId = str2;
}
public boolean equals(Object obj) {
String str;
if (obj == this) {
return true;
}
if (obj instanceof InstallIdProvider.InstallIds) {
InstallIdProvider.InstallIds installIds = (InstallIdProvider.InstallIds) obj;
if (this.crashlyticsInstallId.equals(installIds.getCrashlyticsInstallId()) && ((str = this.firebaseInstallationId) != null ? str.equals(installIds.getFirebaseInstallationId()) : installIds.getFirebaseInstallationId() == null)) {
return true;
}
}
return false;
}
@Override // com.google.firebase.crashlytics.internal.common.InstallIdProvider.InstallIds
public String getCrashlyticsInstallId() {
return this.crashlyticsInstallId;
}
@Override // com.google.firebase.crashlytics.internal.common.InstallIdProvider.InstallIds
public String getFirebaseInstallationId() {
return this.firebaseInstallationId;
}
public int hashCode() {
int hashCode = (this.crashlyticsInstallId.hashCode() ^ 1000003) * 1000003;
String str = this.firebaseInstallationId;
return (str == null ? 0 : str.hashCode()) ^ hashCode;
}
public String toString() {
StringBuilder sb = new StringBuilder("InstallIds{crashlyticsInstallId=");
sb.append(this.crashlyticsInstallId);
sb.append(", firebaseInstallationId=");
return w.r(sb, this.firebaseInstallationId, "}");
}
}

View File

@@ -0,0 +1,14 @@
package com.google.firebase.crashlytics.internal.common;
import android.os.Process;
/* loaded from: classes3.dex */
public abstract class BackgroundPriorityRunnable implements Runnable {
public abstract void onRun();
@Override // java.lang.Runnable
public final void run() {
Process.setThreadPriority(10);
onRun();
}
}

View File

@@ -0,0 +1,69 @@
package com.google.firebase.crashlytics.internal.common;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import com.google.firebase.analytics.FirebaseAnalytics;
import com.google.firebase.crashlytics.internal.Logger;
/* loaded from: classes3.dex */
class BatteryState {
static final int VELOCITY_CHARGING = 2;
static final int VELOCITY_FULL = 3;
static final int VELOCITY_UNPLUGGED = 1;
private final Float level;
private final boolean powerConnected;
private BatteryState(Float f2, boolean z3) {
this.powerConnected = z3;
this.level = f2;
}
public static BatteryState get(Context context) {
boolean z3 = false;
Float f2 = null;
try {
Intent registerReceiver = context.registerReceiver(null, new IntentFilter("android.intent.action.BATTERY_CHANGED"));
if (registerReceiver != null) {
z3 = isPowerConnected(registerReceiver);
f2 = getLevel(registerReceiver);
}
} catch (IllegalStateException e4) {
Logger.getLogger().e("An error occurred getting battery state.", e4);
}
return new BatteryState(f2, z3);
}
private static Float getLevel(Intent intent) {
int intExtra = intent.getIntExtra(FirebaseAnalytics.Param.LEVEL, -1);
int intExtra2 = intent.getIntExtra("scale", -1);
if (intExtra == -1 || intExtra2 == -1) {
return null;
}
return Float.valueOf(intExtra / intExtra2);
}
public Float getBatteryLevel() {
return this.level;
}
public int getBatteryVelocity() {
Float f2;
if (!this.powerConnected || (f2 = this.level) == null) {
return 1;
}
return ((double) f2.floatValue()) < 0.99d ? 2 : 3;
}
public boolean isPowerConnected() {
return this.powerConnected;
}
private static boolean isPowerConnected(Intent intent) {
int intExtra = intent.getIntExtra("status", -1);
if (intExtra == -1) {
return false;
}
return intExtra == 2 || intExtra == 5;
}
}

View File

@@ -0,0 +1,26 @@
package com.google.firebase.crashlytics.internal.common;
/* loaded from: classes3.dex */
public class BuildIdInfo {
private final String arch;
private final String buildId;
private final String libraryName;
public BuildIdInfo(String str, String str2, String str3) {
this.libraryName = str;
this.arch = str2;
this.buildId = str3;
}
public String getArch() {
return this.arch;
}
public String getBuildId() {
return this.buildId;
}
public String getLibraryName() {
return this.libraryName;
}
}

View File

@@ -0,0 +1,79 @@
package com.google.firebase.crashlytics.internal.common;
import com.google.firebase.crashlytics.internal.model.CrashlyticsReport;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.zip.GZIPOutputStream;
/* JADX INFO: Access modifiers changed from: package-private */
/* loaded from: classes3.dex */
public class BytesBackedNativeSessionFile implements NativeSessionFile {
private final byte[] bytes;
private final String dataTransportFilename;
private final String reportsEndpointFilename;
public BytesBackedNativeSessionFile(String str, String str2, byte[] bArr) {
this.dataTransportFilename = str;
this.reportsEndpointFilename = str2;
this.bytes = bArr;
}
private byte[] asGzippedBytes() {
if (isEmpty()) {
return null;
}
try {
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
try {
GZIPOutputStream gZIPOutputStream = new GZIPOutputStream(byteArrayOutputStream);
try {
gZIPOutputStream.write(this.bytes);
gZIPOutputStream.finish();
byte[] byteArray = byteArrayOutputStream.toByteArray();
gZIPOutputStream.close();
byteArrayOutputStream.close();
return byteArray;
} finally {
}
} catch (Throwable th) {
try {
byteArrayOutputStream.close();
} catch (Throwable th2) {
th.addSuppressed(th2);
}
throw th;
}
} catch (IOException unused) {
return null;
}
}
private boolean isEmpty() {
byte[] bArr = this.bytes;
return bArr == null || bArr.length == 0;
}
@Override // com.google.firebase.crashlytics.internal.common.NativeSessionFile
public CrashlyticsReport.FilesPayload.File asFilePayload() {
byte[] asGzippedBytes = asGzippedBytes();
if (asGzippedBytes == null) {
return null;
}
return CrashlyticsReport.FilesPayload.File.builder().setContents(asGzippedBytes).setFilename(this.dataTransportFilename).build();
}
@Override // com.google.firebase.crashlytics.internal.common.NativeSessionFile
public String getReportsEndpointFilename() {
return this.reportsEndpointFilename;
}
@Override // com.google.firebase.crashlytics.internal.common.NativeSessionFile
public InputStream getStream() {
if (isEmpty()) {
return null;
}
return new ByteArrayInputStream(this.bytes);
}
}

View File

@@ -0,0 +1,70 @@
package com.google.firebase.crashlytics.internal.common;
import android.os.Process;
import java.nio.ByteBuffer;
import java.nio.ByteOrder;
import java.util.Date;
import java.util.Locale;
import java.util.concurrent.atomic.AtomicLong;
/* JADX INFO: Access modifiers changed from: package-private */
/* loaded from: classes3.dex */
public class CLSUUID {
private static String _clsId;
private static final AtomicLong _sequenceNumber = new AtomicLong(0);
public CLSUUID(IdManager idManager) {
byte[] bArr = new byte[10];
populateTime(bArr);
populateSequenceNumber(bArr);
populatePID(bArr);
String sha1 = CommonUtils.sha1(idManager.getInstallIds().getCrashlyticsInstallId());
String hexify = CommonUtils.hexify(bArr);
Locale locale = Locale.US;
_clsId = String.format(locale, "%s%s%s%s", hexify.substring(0, 12), hexify.substring(12, 16), hexify.subSequence(16, 20), sha1.substring(0, 12)).toUpperCase(locale);
}
private static byte[] convertLongToFourByteBuffer(long j4) {
ByteBuffer allocate = ByteBuffer.allocate(4);
allocate.putInt((int) j4);
allocate.order(ByteOrder.BIG_ENDIAN);
allocate.position(0);
return allocate.array();
}
private static byte[] convertLongToTwoByteBuffer(long j4) {
ByteBuffer allocate = ByteBuffer.allocate(2);
allocate.putShort((short) j4);
allocate.order(ByteOrder.BIG_ENDIAN);
allocate.position(0);
return allocate.array();
}
private void populatePID(byte[] bArr) {
byte[] convertLongToTwoByteBuffer = convertLongToTwoByteBuffer(Integer.valueOf(Process.myPid()).shortValue());
bArr[8] = convertLongToTwoByteBuffer[0];
bArr[9] = convertLongToTwoByteBuffer[1];
}
private void populateSequenceNumber(byte[] bArr) {
byte[] convertLongToTwoByteBuffer = convertLongToTwoByteBuffer(_sequenceNumber.incrementAndGet());
bArr[6] = convertLongToTwoByteBuffer[0];
bArr[7] = convertLongToTwoByteBuffer[1];
}
private void populateTime(byte[] bArr) {
long time = new Date().getTime();
byte[] convertLongToFourByteBuffer = convertLongToFourByteBuffer(time / 1000);
bArr[0] = convertLongToFourByteBuffer[0];
bArr[1] = convertLongToFourByteBuffer[1];
bArr[2] = convertLongToFourByteBuffer[2];
bArr[3] = convertLongToFourByteBuffer[3];
byte[] convertLongToTwoByteBuffer = convertLongToTwoByteBuffer(time % 1000);
bArr[4] = convertLongToTwoByteBuffer[0];
bArr[5] = convertLongToTwoByteBuffer[1];
}
public String toString() {
return _clsId;
}
}

View File

@@ -0,0 +1,340 @@
package com.google.firebase.crashlytics.internal.common;
import android.annotation.SuppressLint;
import android.app.ActivityManager;
import android.content.Context;
import android.content.SharedPreferences;
import android.content.res.Resources;
import android.hardware.SensorManager;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.os.Build;
import android.os.Debug;
import android.os.StatFs;
import android.text.TextUtils;
import com.google.firebase.crashlytics.internal.Logger;
import java.io.Closeable;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Locale;
import java.util.Map;
import java.util.Scanner;
import kotlin.UByte;
/* loaded from: classes3.dex */
public class CommonUtils {
static final String BUILD_IDS_ARCH_RESOURCE_NAME = "com.google.firebase.crashlytics.build_ids_arch";
static final String BUILD_IDS_BUILD_ID_RESOURCE_NAME = "com.google.firebase.crashlytics.build_ids_build_id";
static final String BUILD_IDS_LIB_NAMES_RESOURCE_NAME = "com.google.firebase.crashlytics.build_ids_lib";
public static final int DEVICE_STATE_BETAOS = 8;
public static final int DEVICE_STATE_COMPROMISEDLIBRARIES = 32;
public static final int DEVICE_STATE_DEBUGGERATTACHED = 4;
public static final int DEVICE_STATE_ISSIMULATOR = 1;
public static final int DEVICE_STATE_JAILBROKEN = 2;
public static final int DEVICE_STATE_VENDORINTERNAL = 16;
private static final String GOLDFISH = "goldfish";
private static final char[] HEX_VALUES = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f'};
static final String LEGACY_MAPPING_FILE_ID_RESOURCE_NAME = "com.crashlytics.android.build_id";
public static final String LEGACY_SHARED_PREFS_NAME = "com.crashlytics.prefs";
static final String MAPPING_FILE_ID_RESOURCE_NAME = "com.google.firebase.crashlytics.mapping_file_id";
private static final String RANCHU = "ranchu";
private static final String SDK = "sdk";
private static final String SHA1_INSTANCE = "SHA-1";
public static final String SHARED_PREFS_NAME = "com.google.firebase.crashlytics";
/* loaded from: classes3.dex */
public enum Architecture {
X86_32,
X86_64,
ARM_UNKNOWN,
PPC,
PPC64,
ARMV6,
ARMV7,
UNKNOWN,
ARMV7S,
ARM64;
private static final Map<String, Architecture> matcher;
static {
Architecture architecture = X86_32;
Architecture architecture2 = ARMV6;
Architecture architecture3 = ARMV7;
Architecture architecture4 = ARM64;
HashMap hashMap = new HashMap(4);
matcher = hashMap;
hashMap.put("armeabi-v7a", architecture3);
hashMap.put("armeabi", architecture2);
hashMap.put("arm64-v8a", architecture4);
hashMap.put("x86", architecture);
}
public static Architecture getValue() {
String str = Build.CPU_ABI;
if (TextUtils.isEmpty(str)) {
Logger.getLogger().v("Architecture#getValue()::Build.CPU_ABI returned null or empty");
return UNKNOWN;
}
Architecture architecture = matcher.get(str.toLowerCase(Locale.US));
return architecture == null ? UNKNOWN : architecture;
}
}
public static long calculateFreeRamInBytes(Context context) {
ActivityManager.MemoryInfo memoryInfo = new ActivityManager.MemoryInfo();
((ActivityManager) context.getSystemService("activity")).getMemoryInfo(memoryInfo);
return memoryInfo.availMem;
}
public static synchronized long calculateTotalRamInBytes(Context context) {
long j4;
synchronized (CommonUtils.class) {
ActivityManager.MemoryInfo memoryInfo = new ActivityManager.MemoryInfo();
((ActivityManager) context.getSystemService("activity")).getMemoryInfo(memoryInfo);
j4 = memoryInfo.totalMem;
}
return j4;
}
public static long calculateUsedDiskSpaceInBytes(String str) {
long blockSize = new StatFs(str).getBlockSize();
return (r0.getBlockCount() * blockSize) - (blockSize * r0.getAvailableBlocks());
}
@SuppressLint({"MissingPermission"})
public static boolean canTryConnection(Context context) {
if (!checkPermission(context, "android.permission.ACCESS_NETWORK_STATE")) {
return true;
}
NetworkInfo activeNetworkInfo = ((ConnectivityManager) context.getSystemService("connectivity")).getActiveNetworkInfo();
return activeNetworkInfo != null && activeNetworkInfo.isConnectedOrConnecting();
}
public static boolean checkPermission(Context context, String str) {
return context.checkCallingOrSelfPermission(str) == 0;
}
public static void closeOrLog(Closeable closeable, String str) {
if (closeable != null) {
try {
closeable.close();
} catch (IOException e4) {
Logger.getLogger().e(str, e4);
}
}
}
public static void closeQuietly(Closeable closeable) {
if (closeable != null) {
try {
closeable.close();
} catch (RuntimeException e4) {
throw e4;
} catch (Exception unused) {
}
}
}
public static String createInstanceIdFrom(String... strArr) {
if (strArr != null && strArr.length != 0) {
ArrayList arrayList = new ArrayList();
for (String str : strArr) {
if (str != null) {
arrayList.add(str.replace("-", "").toLowerCase(Locale.US));
}
}
Collections.sort(arrayList);
StringBuilder sb = new StringBuilder();
Iterator it = arrayList.iterator();
while (it.hasNext()) {
sb.append((String) it.next());
}
String sb2 = sb.toString();
if (sb2.length() > 0) {
return sha1(sb2);
}
}
return null;
}
public static boolean getBooleanResourceValue(Context context, String str, boolean z3) {
Resources resources;
if (context != null && (resources = context.getResources()) != null) {
int resourcesIdentifier = getResourcesIdentifier(context, str, "bool");
if (resourcesIdentifier > 0) {
return resources.getBoolean(resourcesIdentifier);
}
int resourcesIdentifier2 = getResourcesIdentifier(context, str, "string");
if (resourcesIdentifier2 > 0) {
return Boolean.parseBoolean(context.getString(resourcesIdentifier2));
}
}
return z3;
}
public static List<BuildIdInfo> getBuildIdInfo(Context context) {
ArrayList arrayList = new ArrayList();
int resourcesIdentifier = getResourcesIdentifier(context, BUILD_IDS_LIB_NAMES_RESOURCE_NAME, "array");
int resourcesIdentifier2 = getResourcesIdentifier(context, BUILD_IDS_ARCH_RESOURCE_NAME, "array");
int resourcesIdentifier3 = getResourcesIdentifier(context, BUILD_IDS_BUILD_ID_RESOURCE_NAME, "array");
if (resourcesIdentifier == 0 || resourcesIdentifier2 == 0 || resourcesIdentifier3 == 0) {
Logger.getLogger().d(String.format("Could not find resources: %d %d %d", Integer.valueOf(resourcesIdentifier), Integer.valueOf(resourcesIdentifier2), Integer.valueOf(resourcesIdentifier3)));
return arrayList;
}
String[] stringArray = context.getResources().getStringArray(resourcesIdentifier);
String[] stringArray2 = context.getResources().getStringArray(resourcesIdentifier2);
String[] stringArray3 = context.getResources().getStringArray(resourcesIdentifier3);
if (stringArray.length != stringArray3.length || stringArray2.length != stringArray3.length) {
Logger.getLogger().d(String.format("Lengths did not match: %d %d %d", Integer.valueOf(stringArray.length), Integer.valueOf(stringArray2.length), Integer.valueOf(stringArray3.length)));
return arrayList;
}
for (int i = 0; i < stringArray3.length; i++) {
arrayList.add(new BuildIdInfo(stringArray[i], stringArray2[i], stringArray3[i]));
}
return arrayList;
}
public static int getCpuArchitectureInt() {
return Architecture.getValue().ordinal();
}
/* JADX WARN: Multi-variable type inference failed */
/* JADX WARN: Type inference failed for: r0v1, types: [int] */
/* JADX WARN: Type inference failed for: r0v5 */
/* JADX WARN: Type inference failed for: r0v6 */
public static int getDeviceState() {
boolean isEmulator = isEmulator();
?? r02 = isEmulator;
if (isRooted()) {
r02 = (isEmulator ? 1 : 0) | 2;
}
return isDebuggerAttached() ? r02 | 4 : r02;
}
public static SharedPreferences getLegacySharedPrefs(Context context) {
return context.getSharedPreferences(LEGACY_SHARED_PREFS_NAME, 0);
}
public static String getMappingFileId(Context context) {
int resourcesIdentifier = getResourcesIdentifier(context, MAPPING_FILE_ID_RESOURCE_NAME, "string");
if (resourcesIdentifier == 0) {
resourcesIdentifier = getResourcesIdentifier(context, LEGACY_MAPPING_FILE_ID_RESOURCE_NAME, "string");
}
if (resourcesIdentifier != 0) {
return context.getResources().getString(resourcesIdentifier);
}
return null;
}
public static boolean getProximitySensorEnabled(Context context) {
return (isEmulator() || ((SensorManager) context.getSystemService("sensor")).getDefaultSensor(8) == null) ? false : true;
}
public static String getResourcePackageName(Context context) {
int i = context.getApplicationContext().getApplicationInfo().icon;
if (i <= 0) {
return context.getPackageName();
}
try {
String resourcePackageName = context.getResources().getResourcePackageName(i);
return "android".equals(resourcePackageName) ? context.getPackageName() : resourcePackageName;
} catch (Resources.NotFoundException unused) {
return context.getPackageName();
}
}
public static int getResourcesIdentifier(Context context, String str, String str2) {
return context.getResources().getIdentifier(str, str2, getResourcePackageName(context));
}
public static SharedPreferences getSharedPrefs(Context context) {
return context.getSharedPreferences("com.google.firebase.crashlytics", 0);
}
private static String hash(String str, String str2) {
return hash(str.getBytes(), str2);
}
public static String hexify(byte[] bArr) {
char[] cArr = new char[bArr.length * 2];
for (int i = 0; i < bArr.length; i++) {
byte b4 = bArr[i];
int i4 = b4 & UByte.MAX_VALUE;
int i5 = i * 2;
char[] cArr2 = HEX_VALUES;
cArr[i5] = cArr2[i4 >>> 4];
cArr[i5 + 1] = cArr2[b4 & 15];
}
return new String(cArr);
}
public static boolean isAppDebuggable(Context context) {
return (context.getApplicationInfo().flags & 2) != 0;
}
public static boolean isDebuggerAttached() {
return Debug.isDebuggerConnected() || Debug.waitingForDebugger();
}
public static boolean isEmulator() {
if (Build.PRODUCT.contains(SDK)) {
return true;
}
String str = Build.HARDWARE;
return str.contains(GOLDFISH) || str.contains(RANCHU);
}
@Deprecated
public static boolean isLoggingEnabled(Context context) {
return false;
}
public static boolean isRooted() {
boolean isEmulator = isEmulator();
String str = Build.TAGS;
if ((isEmulator || str == null || !str.contains("test-keys")) && !new File("/system/app/Superuser.apk").exists()) {
return !isEmulator && new File("/system/xbin/su").exists();
}
return true;
}
public static boolean nullSafeEquals(String str, String str2) {
return str == null ? str2 == null : str.equals(str2);
}
public static String padWithZerosToMaxIntWidth(int i) {
if (i >= 0) {
return String.format(Locale.US, "%1$10s", Integer.valueOf(i)).replace(' ', '0');
}
throw new IllegalArgumentException("value must be zero or greater");
}
public static String sha1(String str) {
return hash(str, SHA1_INSTANCE);
}
public static String streamToString(InputStream inputStream) {
Scanner useDelimiter = new Scanner(inputStream).useDelimiter("\\A");
return useDelimiter.hasNext() ? useDelimiter.next() : "";
}
private static String hash(byte[] bArr, String str) {
try {
MessageDigest messageDigest = MessageDigest.getInstance(str);
messageDigest.update(bArr);
return hexify(messageDigest.digest());
} catch (NoSuchAlgorithmException e4) {
Logger.getLogger().e("Could not create hashing algorithm: " + str + ", returning empty string.", e4);
return "";
}
}
}

View File

@@ -0,0 +1,74 @@
package com.google.firebase.crashlytics.internal.common;
import com.google.firebase.crashlytics.internal.Logger;
import com.google.firebase.crashlytics.internal.persistence.FileStore;
import java.io.File;
import java.io.FilenameFilter;
import java.io.IOException;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
import java.util.Objects;
/* loaded from: classes3.dex */
public class CrashlyticsAppQualitySessionsStore {
private static final String AQS_SESSION_ID_FILENAME_PREFIX = "aqs.";
private static final FilenameFilter AQS_SESSION_ID_FILE_FILTER = new a(0);
private static final Comparator<File> FILE_RECENCY_COMPARATOR = new b(0);
private final FileStore fileStore;
private String sessionId = null;
private String appQualitySessionId = null;
public CrashlyticsAppQualitySessionsStore(FileStore fileStore) {
this.fileStore = fileStore;
}
public static /* synthetic */ boolean lambda$static$0(File file, String str) {
return str.startsWith(AQS_SESSION_ID_FILENAME_PREFIX);
}
public static /* synthetic */ int lambda$static$1(File file, File file2) {
return Long.compare(file2.lastModified(), file.lastModified());
}
private static void persist(FileStore fileStore, String str, String str2) {
if (str == null || str2 == null) {
return;
}
try {
fileStore.getSessionFile(str, AQS_SESSION_ID_FILENAME_PREFIX.concat(str2)).createNewFile();
} catch (IOException e4) {
Logger.getLogger().w("Failed to persist App Quality Sessions session id.", e4);
}
}
public static String readAqsSessionIdFile(FileStore fileStore, String str) {
List<File> sessionFiles = fileStore.getSessionFiles(str, AQS_SESSION_ID_FILE_FILTER);
if (!sessionFiles.isEmpty()) {
return ((File) Collections.min(sessionFiles, FILE_RECENCY_COMPARATOR)).getName().substring(4);
}
Logger.getLogger().w("Unable to read App Quality Sessions session id.");
return null;
}
public synchronized String getAppQualitySessionId(String str) {
if (Objects.equals(this.sessionId, str)) {
return this.appQualitySessionId;
}
return readAqsSessionIdFile(this.fileStore, str);
}
public synchronized void rotateAppQualitySessionId(String str) {
if (!Objects.equals(this.appQualitySessionId, str)) {
persist(this.fileStore, this.sessionId, str);
this.appQualitySessionId = str;
}
}
public synchronized void rotateSessionId(String str) {
if (!Objects.equals(this.sessionId, str)) {
persist(this.fileStore, str, this.appQualitySessionId);
this.sessionId = str;
}
}
}

View File

@@ -0,0 +1,40 @@
package com.google.firebase.crashlytics.internal.common;
import com.google.firebase.crashlytics.internal.Logger;
import com.google.firebase.crashlytics.internal.persistence.FileStore;
import com.google.firebase.sessions.api.SessionSubscriber;
/* loaded from: classes3.dex */
public class CrashlyticsAppQualitySessionsSubscriber implements SessionSubscriber {
private final CrashlyticsAppQualitySessionsStore appQualitySessionsStore;
private final DataCollectionArbiter dataCollectionArbiter;
public CrashlyticsAppQualitySessionsSubscriber(DataCollectionArbiter dataCollectionArbiter, FileStore fileStore) {
this.dataCollectionArbiter = dataCollectionArbiter;
this.appQualitySessionsStore = new CrashlyticsAppQualitySessionsStore(fileStore);
}
public String getAppQualitySessionId(String str) {
return this.appQualitySessionsStore.getAppQualitySessionId(str);
}
@Override // com.google.firebase.sessions.api.SessionSubscriber
public SessionSubscriber.Name getSessionSubscriberName() {
return SessionSubscriber.Name.CRASHLYTICS;
}
@Override // com.google.firebase.sessions.api.SessionSubscriber
public boolean isDataCollectionEnabled() {
return this.dataCollectionArbiter.isAutomaticDataCollectionEnabled();
}
@Override // com.google.firebase.sessions.api.SessionSubscriber
public void onSessionChanged(SessionSubscriber.SessionDetails sessionDetails) {
Logger.getLogger().d("App Quality Sessions session changed: " + sessionDetails);
this.appQualitySessionsStore.rotateAppQualitySessionId(sessionDetails.getSessionId());
}
public void setSessionId(String str) {
this.appQualitySessionsStore.rotateSessionId(str);
}
}

View File

@@ -0,0 +1,85 @@
package com.google.firebase.crashlytics.internal.common;
import com.google.android.gms.tasks.Continuation;
import com.google.android.gms.tasks.Task;
import com.google.android.gms.tasks.Tasks;
import java.util.concurrent.Callable;
import java.util.concurrent.Executor;
/* loaded from: classes3.dex */
public class CrashlyticsBackgroundWorker {
private final Executor executor;
private Task<Void> tail = Tasks.forResult(null);
private final Object tailLock = new Object();
private final ThreadLocal<Boolean> isExecutorThread = new ThreadLocal<>();
public CrashlyticsBackgroundWorker(Executor executor) {
this.executor = executor;
executor.execute(new Runnable() { // from class: com.google.firebase.crashlytics.internal.common.CrashlyticsBackgroundWorker.1
@Override // java.lang.Runnable
public void run() {
CrashlyticsBackgroundWorker.this.isExecutorThread.set(Boolean.TRUE);
}
});
}
private <T> Task<Void> ignoreResult(Task<T> task) {
return task.continueWith(this.executor, new Continuation<T, Void>() { // from class: com.google.firebase.crashlytics.internal.common.CrashlyticsBackgroundWorker.4
@Override // com.google.android.gms.tasks.Continuation
public Void then(Task<T> task2) throws Exception {
return null;
}
});
}
private boolean isRunningOnThread() {
return Boolean.TRUE.equals(this.isExecutorThread.get());
}
private <T> Continuation<Void, T> newContinuation(final Callable<T> callable) {
return new Continuation<Void, T>() { // from class: com.google.firebase.crashlytics.internal.common.CrashlyticsBackgroundWorker.3
@Override // com.google.android.gms.tasks.Continuation
public T then(Task<Void> task) throws Exception {
return (T) callable.call();
}
};
}
public void checkRunningOnThread() {
if (!isRunningOnThread()) {
throw new IllegalStateException("Not running on background worker thread as intended.");
}
}
public Executor getExecutor() {
return this.executor;
}
public Task<Void> submit(final Runnable runnable) {
return submit(new Callable<Void>() { // from class: com.google.firebase.crashlytics.internal.common.CrashlyticsBackgroundWorker.2
@Override // java.util.concurrent.Callable
public Void call() throws Exception {
runnable.run();
return null;
}
});
}
public <T> Task<T> submitTask(Callable<Task<T>> callable) {
Task<T> continueWithTask;
synchronized (this.tailLock) {
continueWithTask = this.tail.continueWithTask(this.executor, newContinuation(callable));
this.tail = ignoreResult(continueWithTask);
}
return continueWithTask;
}
public <T> Task<T> submit(Callable<T> callable) {
Task<T> continueWith;
synchronized (this.tailLock) {
continueWith = this.tail.continueWith(this.executor, newContinuation(callable));
this.tail = ignoreResult(continueWith);
}
return continueWith;
}
}

View File

@@ -0,0 +1,996 @@
package com.google.firebase.crashlytics.internal.common;
import C.w;
import android.annotation.SuppressLint;
import android.app.ActivityManager;
import android.app.ApplicationExitInfo;
import android.content.Context;
import android.os.Build;
import android.os.Bundle;
import android.os.Environment;
import android.os.StatFs;
import android.util.Base64;
import com.google.android.gms.tasks.SuccessContinuation;
import com.google.android.gms.tasks.Task;
import com.google.android.gms.tasks.TaskCompletionSource;
import com.google.android.gms.tasks.Tasks;
import com.google.firebase.crashlytics.internal.CrashlyticsNativeComponent;
import com.google.firebase.crashlytics.internal.Logger;
import com.google.firebase.crashlytics.internal.NativeSessionFileProvider;
import com.google.firebase.crashlytics.internal.analytics.AnalyticsEventLogger;
import com.google.firebase.crashlytics.internal.common.CrashlyticsUncaughtExceptionHandler;
import com.google.firebase.crashlytics.internal.metadata.LogFileManager;
import com.google.firebase.crashlytics.internal.metadata.UserMetadata;
import com.google.firebase.crashlytics.internal.model.CrashlyticsReport;
import com.google.firebase.crashlytics.internal.model.StaticSessionData;
import com.google.firebase.crashlytics.internal.persistence.FileStore;
import com.google.firebase.crashlytics.internal.settings.Settings;
import com.google.firebase.crashlytics.internal.settings.SettingsProvider;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FilenameFilter;
import java.io.IOException;
import java.io.InputStream;
import java.lang.Thread;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Locale;
import java.util.Map;
import java.util.SortedSet;
import java.util.concurrent.Callable;
import java.util.concurrent.Executor;
import java.util.concurrent.ScheduledThreadPoolExecutor;
import java.util.concurrent.TimeoutException;
import java.util.concurrent.atomic.AtomicBoolean;
/* loaded from: classes3.dex */
public class CrashlyticsController {
static final FilenameFilter APP_EXCEPTION_MARKER_FILTER = new a(1);
static final String APP_EXCEPTION_MARKER_PREFIX = ".ae";
static final String FIREBASE_APPLICATION_EXCEPTION = "_ae";
static final String FIREBASE_CRASH_TYPE = "fatal";
static final int FIREBASE_CRASH_TYPE_FATAL = 1;
static final String FIREBASE_TIMESTAMP = "timestamp";
private static final String GENERATOR_FORMAT = "Crashlytics Android SDK/%s";
private static final String META_INF_FOLDER = "META-INF/";
static final String NATIVE_SESSION_DIR = "native-sessions";
private static final String VERSION_CONTROL_INFO_FILE = "version-control-info.textproto";
private static final String VERSION_CONTROL_INFO_KEY = "com.crashlytics.version-control-info";
private final AnalyticsEventLogger analyticsEventLogger;
private final AppData appData;
private final CrashlyticsBackgroundWorker backgroundWorker;
private final Context context;
private CrashlyticsUncaughtExceptionHandler crashHandler;
private final CrashlyticsFileMarker crashMarker;
private final DataCollectionArbiter dataCollectionArbiter;
private final FileStore fileStore;
private final IdManager idManager;
private final LogFileManager logFileManager;
private final CrashlyticsNativeComponent nativeComponent;
private final SessionReportingCoordinator reportingCoordinator;
private final CrashlyticsAppQualitySessionsSubscriber sessionsSubscriber;
private final UserMetadata userMetadata;
private SettingsProvider settingsProvider = null;
final TaskCompletionSource<Boolean> unsentReportsAvailable = new TaskCompletionSource<>();
final TaskCompletionSource<Boolean> reportActionProvided = new TaskCompletionSource<>();
final TaskCompletionSource<Void> unsentReportsHandled = new TaskCompletionSource<>();
final AtomicBoolean checkForUnsentReportsCalled = new AtomicBoolean(false);
/* renamed from: com.google.firebase.crashlytics.internal.common.CrashlyticsController$1 */
/* loaded from: classes3.dex */
public class AnonymousClass1 implements CrashlyticsUncaughtExceptionHandler.CrashListener {
public AnonymousClass1() {
}
@Override // com.google.firebase.crashlytics.internal.common.CrashlyticsUncaughtExceptionHandler.CrashListener
public void onUncaughtException(SettingsProvider settingsProvider, Thread thread, Throwable th) {
CrashlyticsController.this.handleUncaughtException(settingsProvider, thread, th);
}
}
/* renamed from: com.google.firebase.crashlytics.internal.common.CrashlyticsController$2 */
/* loaded from: classes3.dex */
public class AnonymousClass2 implements Callable<Task<Void>> {
final /* synthetic */ Throwable val$ex;
final /* synthetic */ boolean val$isOnDemand;
final /* synthetic */ SettingsProvider val$settingsProvider;
final /* synthetic */ Thread val$thread;
final /* synthetic */ long val$timestampMillis;
/* renamed from: com.google.firebase.crashlytics.internal.common.CrashlyticsController$2$1 */
/* loaded from: classes3.dex */
public class AnonymousClass1 implements SuccessContinuation<Settings, Void> {
final /* synthetic */ String val$currentSessionId;
final /* synthetic */ Executor val$executor;
public AnonymousClass1(Executor executor, String str) {
r2 = executor;
r3 = str;
}
@Override // com.google.android.gms.tasks.SuccessContinuation
public Task<Void> then(Settings settings) throws Exception {
if (settings == null) {
Logger.getLogger().w("Received null app settings, cannot send reports at crash time.");
return Tasks.forResult(null);
}
return Tasks.whenAll((Task<?>[]) new Task[]{CrashlyticsController.this.logAnalyticsAppExceptionEvents(), CrashlyticsController.this.reportingCoordinator.sendReports(r2, r7 ? r3 : null)});
}
}
public AnonymousClass2(long j4, Throwable th, Thread thread, SettingsProvider settingsProvider, boolean z3) {
r2 = j4;
r4 = th;
r5 = thread;
r6 = settingsProvider;
r7 = z3;
}
@Override // java.util.concurrent.Callable
public Task<Void> call() throws Exception {
long timestampSeconds = CrashlyticsController.getTimestampSeconds(r2);
String currentSessionId = CrashlyticsController.this.getCurrentSessionId();
if (currentSessionId == null) {
Logger.getLogger().e("Tried to write a fatal exception while no session was open.");
return Tasks.forResult(null);
}
CrashlyticsController.this.crashMarker.create();
CrashlyticsController.this.reportingCoordinator.persistFatalEvent(r4, r5, currentSessionId, timestampSeconds);
CrashlyticsController.this.doWriteAppExceptionMarker(r2);
CrashlyticsController.this.doCloseSessions(r6);
CrashlyticsController.this.doOpenSession(new CLSUUID(CrashlyticsController.this.idManager).toString(), Boolean.valueOf(r7));
if (!CrashlyticsController.this.dataCollectionArbiter.isAutomaticDataCollectionEnabled()) {
return Tasks.forResult(null);
}
Executor executor = CrashlyticsController.this.backgroundWorker.getExecutor();
return r6.getSettingsAsync().onSuccessTask(executor, new SuccessContinuation<Settings, Void>() { // from class: com.google.firebase.crashlytics.internal.common.CrashlyticsController.2.1
final /* synthetic */ String val$currentSessionId;
final /* synthetic */ Executor val$executor;
public AnonymousClass1(Executor executor2, String currentSessionId2) {
r2 = executor2;
r3 = currentSessionId2;
}
@Override // com.google.android.gms.tasks.SuccessContinuation
public Task<Void> then(Settings settings) throws Exception {
if (settings == null) {
Logger.getLogger().w("Received null app settings, cannot send reports at crash time.");
return Tasks.forResult(null);
}
return Tasks.whenAll((Task<?>[]) new Task[]{CrashlyticsController.this.logAnalyticsAppExceptionEvents(), CrashlyticsController.this.reportingCoordinator.sendReports(r2, r7 ? r3 : null)});
}
});
}
}
/* renamed from: com.google.firebase.crashlytics.internal.common.CrashlyticsController$3 */
/* loaded from: classes3.dex */
public class AnonymousClass3 implements SuccessContinuation<Void, Boolean> {
public AnonymousClass3() {
}
@Override // com.google.android.gms.tasks.SuccessContinuation
public Task<Boolean> then(Void r12) throws Exception {
return Tasks.forResult(Boolean.TRUE);
}
}
/* renamed from: com.google.firebase.crashlytics.internal.common.CrashlyticsController$4 */
/* loaded from: classes3.dex */
public class AnonymousClass4 implements SuccessContinuation<Boolean, Void> {
final /* synthetic */ Task val$settingsDataTask;
/* renamed from: com.google.firebase.crashlytics.internal.common.CrashlyticsController$4$1 */
/* loaded from: classes3.dex */
public class AnonymousClass1 implements Callable<Task<Void>> {
final /* synthetic */ Boolean val$send;
/* renamed from: com.google.firebase.crashlytics.internal.common.CrashlyticsController$4$1$1 */
/* loaded from: classes3.dex */
public class C00161 implements SuccessContinuation<Settings, Void> {
final /* synthetic */ Executor val$executor;
public C00161(Executor executor) {
r2 = executor;
}
@Override // com.google.android.gms.tasks.SuccessContinuation
public Task<Void> then(Settings settings) throws Exception {
if (settings == null) {
Logger.getLogger().w("Received null app settings at app startup. Cannot send cached reports");
return Tasks.forResult(null);
}
CrashlyticsController.this.logAnalyticsAppExceptionEvents();
CrashlyticsController.this.reportingCoordinator.sendReports(r2);
CrashlyticsController.this.unsentReportsHandled.trySetResult(null);
return Tasks.forResult(null);
}
}
public AnonymousClass1(Boolean bool) {
r2 = bool;
}
@Override // java.util.concurrent.Callable
public Task<Void> call() throws Exception {
if (!r2.booleanValue()) {
Logger.getLogger().v("Deleting cached crash reports...");
CrashlyticsController.deleteFiles(CrashlyticsController.this.listAppExceptionMarkerFiles());
CrashlyticsController.this.reportingCoordinator.removeAllReports();
CrashlyticsController.this.unsentReportsHandled.trySetResult(null);
return Tasks.forResult(null);
}
Logger.getLogger().d("Sending cached crash reports...");
CrashlyticsController.this.dataCollectionArbiter.grantDataCollectionPermission(r2.booleanValue());
Executor executor = CrashlyticsController.this.backgroundWorker.getExecutor();
return AnonymousClass4.this.val$settingsDataTask.onSuccessTask(executor, new SuccessContinuation<Settings, Void>() { // from class: com.google.firebase.crashlytics.internal.common.CrashlyticsController.4.1.1
final /* synthetic */ Executor val$executor;
public C00161(Executor executor2) {
r2 = executor2;
}
@Override // com.google.android.gms.tasks.SuccessContinuation
public Task<Void> then(Settings settings) throws Exception {
if (settings == null) {
Logger.getLogger().w("Received null app settings at app startup. Cannot send cached reports");
return Tasks.forResult(null);
}
CrashlyticsController.this.logAnalyticsAppExceptionEvents();
CrashlyticsController.this.reportingCoordinator.sendReports(r2);
CrashlyticsController.this.unsentReportsHandled.trySetResult(null);
return Tasks.forResult(null);
}
});
}
}
public AnonymousClass4(Task task) {
this.val$settingsDataTask = task;
}
@Override // com.google.android.gms.tasks.SuccessContinuation
public Task<Void> then(Boolean bool) throws Exception {
return CrashlyticsController.this.backgroundWorker.submitTask(new Callable<Task<Void>>() { // from class: com.google.firebase.crashlytics.internal.common.CrashlyticsController.4.1
final /* synthetic */ Boolean val$send;
/* renamed from: com.google.firebase.crashlytics.internal.common.CrashlyticsController$4$1$1 */
/* loaded from: classes3.dex */
public class C00161 implements SuccessContinuation<Settings, Void> {
final /* synthetic */ Executor val$executor;
public C00161(Executor executor2) {
r2 = executor2;
}
@Override // com.google.android.gms.tasks.SuccessContinuation
public Task<Void> then(Settings settings) throws Exception {
if (settings == null) {
Logger.getLogger().w("Received null app settings at app startup. Cannot send cached reports");
return Tasks.forResult(null);
}
CrashlyticsController.this.logAnalyticsAppExceptionEvents();
CrashlyticsController.this.reportingCoordinator.sendReports(r2);
CrashlyticsController.this.unsentReportsHandled.trySetResult(null);
return Tasks.forResult(null);
}
}
public AnonymousClass1(Boolean bool2) {
r2 = bool2;
}
@Override // java.util.concurrent.Callable
public Task<Void> call() throws Exception {
if (!r2.booleanValue()) {
Logger.getLogger().v("Deleting cached crash reports...");
CrashlyticsController.deleteFiles(CrashlyticsController.this.listAppExceptionMarkerFiles());
CrashlyticsController.this.reportingCoordinator.removeAllReports();
CrashlyticsController.this.unsentReportsHandled.trySetResult(null);
return Tasks.forResult(null);
}
Logger.getLogger().d("Sending cached crash reports...");
CrashlyticsController.this.dataCollectionArbiter.grantDataCollectionPermission(r2.booleanValue());
Executor executor2 = CrashlyticsController.this.backgroundWorker.getExecutor();
return AnonymousClass4.this.val$settingsDataTask.onSuccessTask(executor2, new SuccessContinuation<Settings, Void>() { // from class: com.google.firebase.crashlytics.internal.common.CrashlyticsController.4.1.1
final /* synthetic */ Executor val$executor;
public C00161(Executor executor22) {
r2 = executor22;
}
@Override // com.google.android.gms.tasks.SuccessContinuation
public Task<Void> then(Settings settings) throws Exception {
if (settings == null) {
Logger.getLogger().w("Received null app settings at app startup. Cannot send cached reports");
return Tasks.forResult(null);
}
CrashlyticsController.this.logAnalyticsAppExceptionEvents();
CrashlyticsController.this.reportingCoordinator.sendReports(r2);
CrashlyticsController.this.unsentReportsHandled.trySetResult(null);
return Tasks.forResult(null);
}
});
}
});
}
}
/* renamed from: com.google.firebase.crashlytics.internal.common.CrashlyticsController$5 */
/* loaded from: classes3.dex */
public class AnonymousClass5 implements Callable<Void> {
final /* synthetic */ String val$msg;
final /* synthetic */ long val$timestamp;
public AnonymousClass5(long j4, String str) {
r2 = j4;
r4 = str;
}
@Override // java.util.concurrent.Callable
public Void call() throws Exception {
if (CrashlyticsController.this.isHandlingException()) {
return null;
}
CrashlyticsController.this.logFileManager.writeToLog(r2, r4);
return null;
}
}
/* renamed from: com.google.firebase.crashlytics.internal.common.CrashlyticsController$6 */
/* loaded from: classes3.dex */
public class AnonymousClass6 implements Runnable {
final /* synthetic */ Throwable val$ex;
final /* synthetic */ Thread val$thread;
final /* synthetic */ long val$timestampMillis;
public AnonymousClass6(long j4, Throwable th, Thread thread) {
r2 = j4;
r4 = th;
r5 = thread;
}
@Override // java.lang.Runnable
public void run() {
if (CrashlyticsController.this.isHandlingException()) {
return;
}
long timestampSeconds = CrashlyticsController.getTimestampSeconds(r2);
String currentSessionId = CrashlyticsController.this.getCurrentSessionId();
if (currentSessionId == null) {
Logger.getLogger().w("Tried to write a non-fatal exception while no session was open.");
} else {
CrashlyticsController.this.reportingCoordinator.persistNonFatalEvent(r4, r5, currentSessionId, timestampSeconds);
}
}
}
/* renamed from: com.google.firebase.crashlytics.internal.common.CrashlyticsController$7 */
/* loaded from: classes3.dex */
public class AnonymousClass7 implements Callable<Void> {
final /* synthetic */ String val$sessionIdentifier;
public AnonymousClass7(String str) {
r2 = str;
}
@Override // java.util.concurrent.Callable
public Void call() throws Exception {
CrashlyticsController.this.doOpenSession(r2, Boolean.FALSE);
return null;
}
}
/* renamed from: com.google.firebase.crashlytics.internal.common.CrashlyticsController$8 */
/* loaded from: classes3.dex */
public class AnonymousClass8 implements Callable<Void> {
final /* synthetic */ long val$timestamp;
public AnonymousClass8(long j4) {
r2 = j4;
}
@Override // java.util.concurrent.Callable
public Void call() throws Exception {
Bundle bundle = new Bundle();
bundle.putInt(CrashlyticsController.FIREBASE_CRASH_TYPE, 1);
bundle.putLong(CrashlyticsController.FIREBASE_TIMESTAMP, r2);
CrashlyticsController.this.analyticsEventLogger.logEvent(CrashlyticsController.FIREBASE_APPLICATION_EXCEPTION, bundle);
return null;
}
}
public CrashlyticsController(Context context, CrashlyticsBackgroundWorker crashlyticsBackgroundWorker, IdManager idManager, DataCollectionArbiter dataCollectionArbiter, FileStore fileStore, CrashlyticsFileMarker crashlyticsFileMarker, AppData appData, UserMetadata userMetadata, LogFileManager logFileManager, SessionReportingCoordinator sessionReportingCoordinator, CrashlyticsNativeComponent crashlyticsNativeComponent, AnalyticsEventLogger analyticsEventLogger, CrashlyticsAppQualitySessionsSubscriber crashlyticsAppQualitySessionsSubscriber) {
this.context = context;
this.backgroundWorker = crashlyticsBackgroundWorker;
this.idManager = idManager;
this.dataCollectionArbiter = dataCollectionArbiter;
this.fileStore = fileStore;
this.crashMarker = crashlyticsFileMarker;
this.appData = appData;
this.userMetadata = userMetadata;
this.logFileManager = logFileManager;
this.nativeComponent = crashlyticsNativeComponent;
this.analyticsEventLogger = analyticsEventLogger;
this.sessionsSubscriber = crashlyticsAppQualitySessionsSubscriber;
this.reportingCoordinator = sessionReportingCoordinator;
}
private static StaticSessionData.AppData createAppData(IdManager idManager, AppData appData) {
return StaticSessionData.AppData.create(idManager.getAppIdentifier(), appData.versionCode, appData.versionName, idManager.getInstallIds().getCrashlyticsInstallId(), DeliveryMechanism.determineFrom(appData.installerPackageName).getId(), appData.developmentPlatformProvider);
}
private static StaticSessionData.DeviceData createDeviceData(Context context) {
StatFs statFs = new StatFs(Environment.getDataDirectory().getPath());
return StaticSessionData.DeviceData.create(CommonUtils.getCpuArchitectureInt(), Build.MODEL, Runtime.getRuntime().availableProcessors(), CommonUtils.calculateTotalRamInBytes(context), statFs.getBlockCount() * statFs.getBlockSize(), CommonUtils.isEmulator(), CommonUtils.getDeviceState(), Build.MANUFACTURER, Build.PRODUCT);
}
private static StaticSessionData.OsData createOsData() {
return StaticSessionData.OsData.create(Build.VERSION.RELEASE, Build.VERSION.CODENAME, CommonUtils.isRooted());
}
public static void deleteFiles(List<File> list) {
Iterator<File> it = list.iterator();
while (it.hasNext()) {
it.next().delete();
}
}
public void doOpenSession(String str, Boolean bool) {
long currentTimestampSeconds = getCurrentTimestampSeconds();
Logger.getLogger().d("Opening a new session with ID " + str);
Locale locale = Locale.US;
this.nativeComponent.prepareNativeSession(str, w.z("Crashlytics Android SDK/", CrashlyticsCore.getVersion()), currentTimestampSeconds, StaticSessionData.create(createAppData(this.idManager, this.appData), createOsData(), createDeviceData(this.context)));
if (bool.booleanValue() && str != null) {
this.userMetadata.setNewSession(str);
}
this.logFileManager.setCurrentSession(str);
this.sessionsSubscriber.setSessionId(str);
this.reportingCoordinator.onBeginSession(str, currentTimestampSeconds);
}
public void doWriteAppExceptionMarker(long j4) {
try {
if (this.fileStore.getCommonFile(APP_EXCEPTION_MARKER_PREFIX + j4).createNewFile()) {
} else {
throw new IOException("Create new file failed.");
}
} catch (IOException e4) {
Logger.getLogger().w("Could not create app exception marker file.", e4);
}
}
private void finalizePreviousNativeSession(String str) {
Logger.getLogger().v("Finalizing native report for session " + str);
NativeSessionFileProvider sessionFileProvider = this.nativeComponent.getSessionFileProvider(str);
File minidumpFile = sessionFileProvider.getMinidumpFile();
CrashlyticsReport.ApplicationExitInfo applicationExitInto = sessionFileProvider.getApplicationExitInto();
if (nativeCoreAbsent(str, minidumpFile, applicationExitInto)) {
Logger.getLogger().w("No native core present");
return;
}
long lastModified = minidumpFile.lastModified();
LogFileManager logFileManager = new LogFileManager(this.fileStore, str);
File nativeSessionDir = this.fileStore.getNativeSessionDir(str);
if (!nativeSessionDir.isDirectory()) {
Logger.getLogger().w("Couldn't create directory to store native session files, aborting.");
return;
}
doWriteAppExceptionMarker(lastModified);
List<NativeSessionFile> nativeSessionFiles = getNativeSessionFiles(sessionFileProvider, str, this.fileStore, logFileManager.getBytesForLog());
NativeSessionFileGzipper.processNativeSessions(nativeSessionDir, nativeSessionFiles);
Logger.getLogger().d("CrashlyticsController#finalizePreviousNativeSession");
this.reportingCoordinator.finalizeSessionWithNativeEvent(str, nativeSessionFiles, applicationExitInto);
logFileManager.clearLog();
}
private static boolean firebaseCrashExists() {
try {
Class.forName("com.google.firebase.crash.FirebaseCrash");
return true;
} catch (ClassNotFoundException unused) {
return false;
}
}
private Context getContext() {
return this.context;
}
public String getCurrentSessionId() {
SortedSet<String> listSortedOpenSessionIds = this.reportingCoordinator.listSortedOpenSessionIds();
if (listSortedOpenSessionIds.isEmpty()) {
return null;
}
return listSortedOpenSessionIds.first();
}
private static long getCurrentTimestampSeconds() {
return getTimestampSeconds(System.currentTimeMillis());
}
public static List<NativeSessionFile> getNativeSessionFiles(NativeSessionFileProvider nativeSessionFileProvider, String str, FileStore fileStore, byte[] bArr) {
File sessionFile = fileStore.getSessionFile(str, UserMetadata.USERDATA_FILENAME);
File sessionFile2 = fileStore.getSessionFile(str, UserMetadata.KEYDATA_FILENAME);
File sessionFile3 = fileStore.getSessionFile(str, UserMetadata.ROLLOUTS_STATE_FILENAME);
ArrayList arrayList = new ArrayList();
arrayList.add(new BytesBackedNativeSessionFile("logs_file", "logs", bArr));
arrayList.add(new FileBackedNativeSessionFile("crash_meta_file", "metadata", nativeSessionFileProvider.getMetadataFile()));
arrayList.add(new FileBackedNativeSessionFile("session_meta_file", "session", nativeSessionFileProvider.getSessionFile()));
arrayList.add(new FileBackedNativeSessionFile("app_meta_file", "app", nativeSessionFileProvider.getAppFile()));
arrayList.add(new FileBackedNativeSessionFile("device_meta_file", "device", nativeSessionFileProvider.getDeviceFile()));
arrayList.add(new FileBackedNativeSessionFile("os_meta_file", "os", nativeSessionFileProvider.getOsFile()));
arrayList.add(nativeCoreFile(nativeSessionFileProvider));
arrayList.add(new FileBackedNativeSessionFile("user_meta_file", "user", sessionFile));
arrayList.add(new FileBackedNativeSessionFile("keys_file", UserMetadata.KEYDATA_FILENAME, sessionFile2));
arrayList.add(new FileBackedNativeSessionFile("rollouts_file", "rollouts", sessionFile3));
return arrayList;
}
private InputStream getResourceAsStream(String str) {
ClassLoader classLoader = getClass().getClassLoader();
if (classLoader == null) {
Logger.getLogger().w("Couldn't get Class Loader");
return null;
}
InputStream resourceAsStream = classLoader.getResourceAsStream(str);
if (resourceAsStream != null) {
return resourceAsStream;
}
Logger.getLogger().i("No version control information found");
return null;
}
public static long getTimestampSeconds(long j4) {
return j4 / 1000;
}
public static /* synthetic */ boolean lambda$static$0(File file, String str) {
return str.startsWith(APP_EXCEPTION_MARKER_PREFIX);
}
private Task<Void> logAnalyticsAppExceptionEvent(long j4) {
if (firebaseCrashExists()) {
Logger.getLogger().w("Skipping logging Crashlytics event to Firebase, FirebaseCrash exists");
return Tasks.forResult(null);
}
Logger.getLogger().d("Logging app exception event to Firebase Analytics");
return Tasks.call(new ScheduledThreadPoolExecutor(1), new Callable<Void>() { // from class: com.google.firebase.crashlytics.internal.common.CrashlyticsController.8
final /* synthetic */ long val$timestamp;
public AnonymousClass8(long j42) {
r2 = j42;
}
@Override // java.util.concurrent.Callable
public Void call() throws Exception {
Bundle bundle = new Bundle();
bundle.putInt(CrashlyticsController.FIREBASE_CRASH_TYPE, 1);
bundle.putLong(CrashlyticsController.FIREBASE_TIMESTAMP, r2);
CrashlyticsController.this.analyticsEventLogger.logEvent(CrashlyticsController.FIREBASE_APPLICATION_EXCEPTION, bundle);
return null;
}
});
}
public Task<Void> logAnalyticsAppExceptionEvents() {
ArrayList arrayList = new ArrayList();
for (File file : listAppExceptionMarkerFiles()) {
try {
arrayList.add(logAnalyticsAppExceptionEvent(Long.parseLong(file.getName().substring(3))));
} catch (NumberFormatException unused) {
Logger.getLogger().w("Could not parse app exception timestamp from file " + file.getName());
}
file.delete();
}
return Tasks.whenAll(arrayList);
}
private static boolean nativeCoreAbsent(String str, File file, CrashlyticsReport.ApplicationExitInfo applicationExitInfo) {
if (file == null || !file.exists()) {
Logger.getLogger().w("No minidump data found for session " + str);
}
if (applicationExitInfo == null) {
Logger.getLogger().i("No Tombstones data found for session " + str);
}
return (file == null || !file.exists()) && applicationExitInfo == null;
}
private static NativeSessionFile nativeCoreFile(NativeSessionFileProvider nativeSessionFileProvider) {
File minidumpFile = nativeSessionFileProvider.getMinidumpFile();
return (minidumpFile == null || !minidumpFile.exists()) ? new BytesBackedNativeSessionFile("minidump_file", "minidump", new byte[]{0}) : new FileBackedNativeSessionFile("minidump_file", "minidump", minidumpFile);
}
private static byte[] readResource(InputStream inputStream) throws IOException {
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
byte[] bArr = new byte[1024];
while (true) {
int read = inputStream.read(bArr);
if (read == -1) {
return byteArrayOutputStream.toByteArray();
}
byteArrayOutputStream.write(bArr, 0, read);
}
}
private Task<Boolean> waitForReportAction() {
if (this.dataCollectionArbiter.isAutomaticDataCollectionEnabled()) {
Logger.getLogger().d("Automatic data collection is enabled. Allowing upload.");
this.unsentReportsAvailable.trySetResult(Boolean.FALSE);
return Tasks.forResult(Boolean.TRUE);
}
Logger.getLogger().d("Automatic data collection is disabled.");
Logger.getLogger().v("Notifying that unsent reports are available.");
this.unsentReportsAvailable.trySetResult(Boolean.TRUE);
Task<TContinuationResult> onSuccessTask = this.dataCollectionArbiter.waitForAutomaticDataCollectionEnabled().onSuccessTask(new SuccessContinuation<Void, Boolean>() { // from class: com.google.firebase.crashlytics.internal.common.CrashlyticsController.3
public AnonymousClass3() {
}
@Override // com.google.android.gms.tasks.SuccessContinuation
public Task<Boolean> then(Void r12) throws Exception {
return Tasks.forResult(Boolean.TRUE);
}
});
Logger.getLogger().d("Waiting for send/deleteUnsentReports to be called.");
return Utils.race(onSuccessTask, this.reportActionProvided.getTask());
}
private void writeApplicationExitInfoEventIfRelevant(String str) {
List<ApplicationExitInfo> historicalProcessExitReasons;
int i = Build.VERSION.SDK_INT;
if (i < 30) {
Logger.getLogger().v("ANR feature enabled, but device is API " + i);
return;
}
historicalProcessExitReasons = ((ActivityManager) this.context.getSystemService("activity")).getHistoricalProcessExitReasons(null, 0, 0);
if (historicalProcessExitReasons.size() != 0) {
this.reportingCoordinator.persistRelevantAppExitInfoEvent(str, historicalProcessExitReasons, new LogFileManager(this.fileStore, str), UserMetadata.loadFromExistingSession(str, this.fileStore, this.backgroundWorker));
} else {
Logger.getLogger().v("No ApplicationExitInfo available. Session: " + str);
}
}
public Task<Boolean> checkForUnsentReports() {
if (this.checkForUnsentReportsCalled.compareAndSet(false, true)) {
return this.unsentReportsAvailable.getTask();
}
Logger.getLogger().w("checkForUnsentReports should only be called once per execution.");
return Tasks.forResult(Boolean.FALSE);
}
public Task<Void> deleteUnsentReports() {
this.reportActionProvided.trySetResult(Boolean.FALSE);
return this.unsentReportsHandled.getTask();
}
public boolean didCrashOnPreviousExecution() {
if (!this.crashMarker.isPresent()) {
String currentSessionId = getCurrentSessionId();
return currentSessionId != null && this.nativeComponent.hasCrashDataForSession(currentSessionId);
}
Logger.getLogger().v("Found previous crash marker.");
this.crashMarker.remove();
return true;
}
public void doCloseSessions(SettingsProvider settingsProvider) {
doCloseSessions(false, settingsProvider);
}
public void enableExceptionHandling(String str, Thread.UncaughtExceptionHandler uncaughtExceptionHandler, SettingsProvider settingsProvider) {
this.settingsProvider = settingsProvider;
openSession(str);
CrashlyticsUncaughtExceptionHandler crashlyticsUncaughtExceptionHandler = new CrashlyticsUncaughtExceptionHandler(new CrashlyticsUncaughtExceptionHandler.CrashListener() { // from class: com.google.firebase.crashlytics.internal.common.CrashlyticsController.1
public AnonymousClass1() {
}
@Override // com.google.firebase.crashlytics.internal.common.CrashlyticsUncaughtExceptionHandler.CrashListener
public void onUncaughtException(SettingsProvider settingsProvider2, Thread thread, Throwable th) {
CrashlyticsController.this.handleUncaughtException(settingsProvider2, thread, th);
}
}, settingsProvider, uncaughtExceptionHandler, this.nativeComponent);
this.crashHandler = crashlyticsUncaughtExceptionHandler;
Thread.setDefaultUncaughtExceptionHandler(crashlyticsUncaughtExceptionHandler);
}
public boolean finalizeSessions(SettingsProvider settingsProvider) {
this.backgroundWorker.checkRunningOnThread();
if (isHandlingException()) {
Logger.getLogger().w("Skipping session finalization because a crash has already occurred.");
return false;
}
Logger.getLogger().v("Finalizing previously open sessions.");
try {
doCloseSessions(true, settingsProvider);
Logger.getLogger().v("Closed all previously open sessions.");
return true;
} catch (Exception e4) {
Logger.getLogger().e("Unable to finalize previously open sessions.", e4);
return false;
}
}
public UserMetadata getUserMetadata() {
return this.userMetadata;
}
public String getVersionControlInfo() throws IOException {
InputStream resourceAsStream = getResourceAsStream("META-INF/version-control-info.textproto");
if (resourceAsStream == null) {
return null;
}
Logger.getLogger().d("Read version control info");
return Base64.encodeToString(readResource(resourceAsStream), 0);
}
public void handleUncaughtException(SettingsProvider settingsProvider, Thread thread, Throwable th) {
handleUncaughtException(settingsProvider, thread, th, false);
}
public boolean isHandlingException() {
CrashlyticsUncaughtExceptionHandler crashlyticsUncaughtExceptionHandler = this.crashHandler;
return crashlyticsUncaughtExceptionHandler != null && crashlyticsUncaughtExceptionHandler.isHandlingException();
}
public List<File> listAppExceptionMarkerFiles() {
return this.fileStore.getCommonFiles(APP_EXCEPTION_MARKER_FILTER);
}
public void logFatalException(Thread thread, Throwable th) {
SettingsProvider settingsProvider = this.settingsProvider;
if (settingsProvider == null) {
Logger.getLogger().w("settingsProvider not set");
} else {
handleUncaughtException(settingsProvider, thread, th, true);
}
}
public void openSession(String str) {
this.backgroundWorker.submit(new Callable<Void>() { // from class: com.google.firebase.crashlytics.internal.common.CrashlyticsController.7
final /* synthetic */ String val$sessionIdentifier;
public AnonymousClass7(String str2) {
r2 = str2;
}
@Override // java.util.concurrent.Callable
public Void call() throws Exception {
CrashlyticsController.this.doOpenSession(r2, Boolean.FALSE);
return null;
}
});
}
public void saveVersionControlInfo() {
try {
String versionControlInfo = getVersionControlInfo();
if (versionControlInfo != null) {
setInternalKey(VERSION_CONTROL_INFO_KEY, versionControlInfo);
Logger.getLogger().i("Saved version control info");
}
} catch (IOException e4) {
Logger.getLogger().w("Unable to save version control info", e4);
}
}
public Task<Void> sendUnsentReports() {
this.reportActionProvided.trySetResult(Boolean.TRUE);
return this.unsentReportsHandled.getTask();
}
public void setCustomKey(String str, String str2) {
try {
this.userMetadata.setCustomKey(str, str2);
} catch (IllegalArgumentException e4) {
Context context = this.context;
if (context != null && CommonUtils.isAppDebuggable(context)) {
throw e4;
}
Logger.getLogger().e("Attempting to set custom attribute with null key, ignoring.");
}
}
public void setCustomKeys(Map<String, String> map) {
this.userMetadata.setCustomKeys(map);
}
public void setInternalKey(String str, String str2) {
try {
this.userMetadata.setInternalKey(str, str2);
} catch (IllegalArgumentException e4) {
Context context = this.context;
if (context != null && CommonUtils.isAppDebuggable(context)) {
throw e4;
}
Logger.getLogger().e("Attempting to set custom attribute with null key, ignoring.");
}
}
public void setUserId(String str) {
this.userMetadata.setUserId(str);
}
@SuppressLint({"TaskMainThread"})
public Task<Void> submitAllReports(Task<Settings> task) {
if (this.reportingCoordinator.hasReportsToSend()) {
Logger.getLogger().v("Crash reports are available to be sent.");
return waitForReportAction().onSuccessTask(new AnonymousClass4(task));
}
Logger.getLogger().v("No crash reports are available to be sent.");
this.unsentReportsAvailable.trySetResult(Boolean.FALSE);
return Tasks.forResult(null);
}
public void writeNonFatalException(Thread thread, Throwable th) {
this.backgroundWorker.submit(new Runnable() { // from class: com.google.firebase.crashlytics.internal.common.CrashlyticsController.6
final /* synthetic */ Throwable val$ex;
final /* synthetic */ Thread val$thread;
final /* synthetic */ long val$timestampMillis;
public AnonymousClass6(long j4, Throwable th2, Thread thread2) {
r2 = j4;
r4 = th2;
r5 = thread2;
}
@Override // java.lang.Runnable
public void run() {
if (CrashlyticsController.this.isHandlingException()) {
return;
}
long timestampSeconds = CrashlyticsController.getTimestampSeconds(r2);
String currentSessionId = CrashlyticsController.this.getCurrentSessionId();
if (currentSessionId == null) {
Logger.getLogger().w("Tried to write a non-fatal exception while no session was open.");
} else {
CrashlyticsController.this.reportingCoordinator.persistNonFatalEvent(r4, r5, currentSessionId, timestampSeconds);
}
}
});
}
public void writeToLog(long j4, String str) {
this.backgroundWorker.submit(new Callable<Void>() { // from class: com.google.firebase.crashlytics.internal.common.CrashlyticsController.5
final /* synthetic */ String val$msg;
final /* synthetic */ long val$timestamp;
public AnonymousClass5(long j42, String str2) {
r2 = j42;
r4 = str2;
}
@Override // java.util.concurrent.Callable
public Void call() throws Exception {
if (CrashlyticsController.this.isHandlingException()) {
return null;
}
CrashlyticsController.this.logFileManager.writeToLog(r2, r4);
return null;
}
});
}
/* JADX WARN: Multi-variable type inference failed */
private void doCloseSessions(boolean z3, SettingsProvider settingsProvider) {
String str;
ArrayList arrayList = new ArrayList(this.reportingCoordinator.listSortedOpenSessionIds());
if (arrayList.size() <= z3) {
Logger.getLogger().v("No open sessions to be closed.");
return;
}
String str2 = (String) arrayList.get(z3 ? 1 : 0);
if (settingsProvider.getSettingsSync().featureFlagData.collectAnrs) {
writeApplicationExitInfoEventIfRelevant(str2);
} else {
Logger.getLogger().v("ANR feature disabled.");
}
if (this.nativeComponent.hasCrashDataForSession(str2)) {
finalizePreviousNativeSession(str2);
}
if (z3 != 0) {
str = (String) arrayList.get(0);
} else {
this.sessionsSubscriber.setSessionId(null);
str = null;
}
this.reportingCoordinator.finalizeSessions(getCurrentTimestampSeconds(), str);
}
public synchronized void handleUncaughtException(SettingsProvider settingsProvider, Thread thread, Throwable th, boolean z3) {
CrashlyticsController crashlyticsController;
try {
try {
Logger.getLogger().d("Handling uncaught exception \"" + th + "\" from thread " + thread.getName());
crashlyticsController = this;
try {
Utils.awaitEvenIfOnMainThread(this.backgroundWorker.submitTask(new Callable<Task<Void>>() { // from class: com.google.firebase.crashlytics.internal.common.CrashlyticsController.2
final /* synthetic */ Throwable val$ex;
final /* synthetic */ boolean val$isOnDemand;
final /* synthetic */ SettingsProvider val$settingsProvider;
final /* synthetic */ Thread val$thread;
final /* synthetic */ long val$timestampMillis;
/* renamed from: com.google.firebase.crashlytics.internal.common.CrashlyticsController$2$1 */
/* loaded from: classes3.dex */
public class AnonymousClass1 implements SuccessContinuation<Settings, Void> {
final /* synthetic */ String val$currentSessionId;
final /* synthetic */ Executor val$executor;
public AnonymousClass1(Executor executor2, String currentSessionId2) {
r2 = executor2;
r3 = currentSessionId2;
}
@Override // com.google.android.gms.tasks.SuccessContinuation
public Task<Void> then(Settings settings) throws Exception {
if (settings == null) {
Logger.getLogger().w("Received null app settings, cannot send reports at crash time.");
return Tasks.forResult(null);
}
return Tasks.whenAll((Task<?>[]) new Task[]{CrashlyticsController.this.logAnalyticsAppExceptionEvents(), CrashlyticsController.this.reportingCoordinator.sendReports(r2, r7 ? r3 : null)});
}
}
public AnonymousClass2(long j4, Throwable th2, Thread thread2, SettingsProvider settingsProvider2, boolean z32) {
r2 = j4;
r4 = th2;
r5 = thread2;
r6 = settingsProvider2;
r7 = z32;
}
@Override // java.util.concurrent.Callable
public Task<Void> call() throws Exception {
long timestampSeconds = CrashlyticsController.getTimestampSeconds(r2);
String currentSessionId2 = CrashlyticsController.this.getCurrentSessionId();
if (currentSessionId2 == null) {
Logger.getLogger().e("Tried to write a fatal exception while no session was open.");
return Tasks.forResult(null);
}
CrashlyticsController.this.crashMarker.create();
CrashlyticsController.this.reportingCoordinator.persistFatalEvent(r4, r5, currentSessionId2, timestampSeconds);
CrashlyticsController.this.doWriteAppExceptionMarker(r2);
CrashlyticsController.this.doCloseSessions(r6);
CrashlyticsController.this.doOpenSession(new CLSUUID(CrashlyticsController.this.idManager).toString(), Boolean.valueOf(r7));
if (!CrashlyticsController.this.dataCollectionArbiter.isAutomaticDataCollectionEnabled()) {
return Tasks.forResult(null);
}
Executor executor2 = CrashlyticsController.this.backgroundWorker.getExecutor();
return r6.getSettingsAsync().onSuccessTask(executor2, new SuccessContinuation<Settings, Void>() { // from class: com.google.firebase.crashlytics.internal.common.CrashlyticsController.2.1
final /* synthetic */ String val$currentSessionId;
final /* synthetic */ Executor val$executor;
public AnonymousClass1(Executor executor22, String currentSessionId22) {
r2 = executor22;
r3 = currentSessionId22;
}
@Override // com.google.android.gms.tasks.SuccessContinuation
public Task<Void> then(Settings settings) throws Exception {
if (settings == null) {
Logger.getLogger().w("Received null app settings, cannot send reports at crash time.");
return Tasks.forResult(null);
}
return Tasks.whenAll((Task<?>[]) new Task[]{CrashlyticsController.this.logAnalyticsAppExceptionEvents(), CrashlyticsController.this.reportingCoordinator.sendReports(r2, r7 ? r3 : null)});
}
});
}
}));
} catch (TimeoutException unused) {
Logger.getLogger().e("Cannot send reports. Timed out while fetching settings.");
} catch (Exception e4) {
Logger.getLogger().e("Error handling uncaught exception", e4);
}
} catch (Throwable th2) {
th = th2;
crashlyticsController = this;
Throwable th3 = th;
throw th3;
}
} catch (Throwable th4) {
th = th4;
}
}
}

View File

@@ -0,0 +1,294 @@
package com.google.firebase.crashlytics.internal.common;
import android.content.Context;
import android.text.TextUtils;
import android.util.Log;
import com.google.android.gms.tasks.Task;
import com.google.android.gms.tasks.Tasks;
import com.google.firebase.FirebaseApp;
import com.google.firebase.crashlytics.BuildConfig;
import com.google.firebase.crashlytics.internal.CrashlyticsNativeComponent;
import com.google.firebase.crashlytics.internal.Logger;
import com.google.firebase.crashlytics.internal.RemoteConfigDeferredProxy;
import com.google.firebase.crashlytics.internal.analytics.AnalyticsEventLogger;
import com.google.firebase.crashlytics.internal.breadcrumbs.BreadcrumbHandler;
import com.google.firebase.crashlytics.internal.breadcrumbs.BreadcrumbSource;
import com.google.firebase.crashlytics.internal.metadata.LogFileManager;
import com.google.firebase.crashlytics.internal.metadata.UserMetadata;
import com.google.firebase.crashlytics.internal.persistence.FileStore;
import com.google.firebase.crashlytics.internal.settings.SettingsProvider;
import com.google.firebase.crashlytics.internal.stacktrace.MiddleOutFallbackStrategy;
import com.google.firebase.crashlytics.internal.stacktrace.RemoveRepeatsStrategy;
import java.util.Map;
import java.util.concurrent.Callable;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Future;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.TimeoutException;
/* loaded from: classes3.dex */
public class CrashlyticsCore {
static final String CRASHLYTICS_REQUIRE_BUILD_ID = "com.crashlytics.RequireBuildId";
static final boolean CRASHLYTICS_REQUIRE_BUILD_ID_DEFAULT = true;
static final String CRASH_MARKER_FILE_NAME = "crash_marker";
static final int DEFAULT_MAIN_HANDLER_TIMEOUT_SEC = 3;
private static final String INITIALIZATION_MARKER_FILE_NAME = "initialization_marker";
static final int MAX_STACK_SIZE = 1024;
private static final String MISSING_BUILD_ID_MSG = "The Crashlytics build ID is missing. This occurs when the Crashlytics Gradle plugin is missing from your app's build configuration. Please review the Firebase Crashlytics onboarding instructions at https://firebase.google.com/docs/crashlytics/get-started?platform=android#add-plugin";
static final int NUM_STACK_REPETITIONS_ALLOWED = 10;
private static final String ON_DEMAND_DROPPED_KEY = "com.crashlytics.on-demand.dropped-exceptions";
private static final String ON_DEMAND_RECORDED_KEY = "com.crashlytics.on-demand.recorded-exceptions";
private final AnalyticsEventLogger analyticsEventLogger;
private final FirebaseApp app;
private final CrashlyticsBackgroundWorker backgroundWorker;
public final BreadcrumbSource breadcrumbSource;
private final Context context;
private CrashlyticsController controller;
private final ExecutorService crashHandlerExecutor;
private CrashlyticsFileMarker crashMarker;
private final DataCollectionArbiter dataCollectionArbiter;
private boolean didCrashOnPreviousExecution;
private final FileStore fileStore;
private final IdManager idManager;
private CrashlyticsFileMarker initializationMarker;
private final CrashlyticsNativeComponent nativeComponent;
private final RemoteConfigDeferredProxy remoteConfigDeferredProxy;
private final CrashlyticsAppQualitySessionsSubscriber sessionsSubscriber;
private final long startTime = System.currentTimeMillis();
private final OnDemandCounter onDemandCounter = new OnDemandCounter();
public CrashlyticsCore(FirebaseApp firebaseApp, IdManager idManager, CrashlyticsNativeComponent crashlyticsNativeComponent, DataCollectionArbiter dataCollectionArbiter, BreadcrumbSource breadcrumbSource, AnalyticsEventLogger analyticsEventLogger, FileStore fileStore, ExecutorService executorService, CrashlyticsAppQualitySessionsSubscriber crashlyticsAppQualitySessionsSubscriber, RemoteConfigDeferredProxy remoteConfigDeferredProxy) {
this.app = firebaseApp;
this.dataCollectionArbiter = dataCollectionArbiter;
this.context = firebaseApp.getApplicationContext();
this.idManager = idManager;
this.nativeComponent = crashlyticsNativeComponent;
this.breadcrumbSource = breadcrumbSource;
this.analyticsEventLogger = analyticsEventLogger;
this.crashHandlerExecutor = executorService;
this.fileStore = fileStore;
this.backgroundWorker = new CrashlyticsBackgroundWorker(executorService);
this.sessionsSubscriber = crashlyticsAppQualitySessionsSubscriber;
this.remoteConfigDeferredProxy = remoteConfigDeferredProxy;
}
private void checkForPreviousCrash() {
try {
this.didCrashOnPreviousExecution = Boolean.TRUE.equals((Boolean) Utils.awaitEvenIfOnMainThread(this.backgroundWorker.submit(new Callable<Boolean>() { // from class: com.google.firebase.crashlytics.internal.common.CrashlyticsCore.4
/* JADX WARN: Can't rename method to resolve collision */
@Override // java.util.concurrent.Callable
public Boolean call() throws Exception {
return Boolean.valueOf(CrashlyticsCore.this.controller.didCrashOnPreviousExecution());
}
})));
} catch (Exception unused) {
this.didCrashOnPreviousExecution = false;
}
}
/* JADX INFO: Access modifiers changed from: private */
public Task<Void> doBackgroundInitialization(SettingsProvider settingsProvider) {
markInitializationStarted();
try {
this.breadcrumbSource.registerBreadcrumbHandler(new BreadcrumbHandler() { // from class: com.google.firebase.crashlytics.internal.common.c
@Override // com.google.firebase.crashlytics.internal.breadcrumbs.BreadcrumbHandler
public final void handleBreadcrumb(String str) {
CrashlyticsCore.this.log(str);
}
});
this.controller.saveVersionControlInfo();
if (!settingsProvider.getSettingsSync().featureFlagData.collectReports) {
Logger.getLogger().d("Collection of crash reports disabled in Crashlytics settings.");
return Tasks.forException(new RuntimeException("Collection of crash reports disabled in Crashlytics settings."));
}
if (!this.controller.finalizeSessions(settingsProvider)) {
Logger.getLogger().w("Previous sessions could not be finalized.");
}
return this.controller.submitAllReports(settingsProvider.getSettingsAsync());
} catch (Exception e4) {
Logger.getLogger().e("Crashlytics encountered a problem during asynchronous initialization.", e4);
return Tasks.forException(e4);
} finally {
markInitializationComplete();
}
}
private void finishInitSynchronously(final SettingsProvider settingsProvider) {
Future<?> submit = this.crashHandlerExecutor.submit(new Runnable() { // from class: com.google.firebase.crashlytics.internal.common.CrashlyticsCore.2
@Override // java.lang.Runnable
public void run() {
CrashlyticsCore.this.doBackgroundInitialization(settingsProvider);
}
});
Logger.getLogger().d("Crashlytics detected incomplete initialization on previous app launch. Will initialize synchronously.");
try {
submit.get(3L, TimeUnit.SECONDS);
} catch (InterruptedException e4) {
Logger.getLogger().e("Crashlytics was interrupted during initialization.", e4);
} catch (ExecutionException e5) {
Logger.getLogger().e("Crashlytics encountered a problem during initialization.", e5);
} catch (TimeoutException e6) {
Logger.getLogger().e("Crashlytics timed out during initialization.", e6);
}
}
public static String getVersion() {
return BuildConfig.VERSION_NAME;
}
public static boolean isBuildIdValid(String str, boolean z3) {
if (!z3) {
Logger.getLogger().v("Configured not to require a build ID.");
return CRASHLYTICS_REQUIRE_BUILD_ID_DEFAULT;
}
if (!TextUtils.isEmpty(str)) {
return CRASHLYTICS_REQUIRE_BUILD_ID_DEFAULT;
}
Log.e(Logger.TAG, ".");
Log.e(Logger.TAG, ". | | ");
Log.e(Logger.TAG, ". | |");
Log.e(Logger.TAG, ". | |");
Log.e(Logger.TAG, ". \\ | | /");
Log.e(Logger.TAG, ". \\ /");
Log.e(Logger.TAG, ". \\ /");
Log.e(Logger.TAG, ". \\/");
Log.e(Logger.TAG, ".");
Log.e(Logger.TAG, MISSING_BUILD_ID_MSG);
Log.e(Logger.TAG, ".");
Log.e(Logger.TAG, ". /\\");
Log.e(Logger.TAG, ". / \\");
Log.e(Logger.TAG, ". / \\");
Log.e(Logger.TAG, ". / | | \\");
Log.e(Logger.TAG, ". | |");
Log.e(Logger.TAG, ". | |");
Log.e(Logger.TAG, ". | |");
Log.e(Logger.TAG, ".");
return false;
}
public Task<Boolean> checkForUnsentReports() {
return this.controller.checkForUnsentReports();
}
public Task<Void> deleteUnsentReports() {
return this.controller.deleteUnsentReports();
}
public boolean didCrashOnPreviousExecution() {
return this.didCrashOnPreviousExecution;
}
public boolean didPreviousInitializationFail() {
return this.initializationMarker.isPresent();
}
public Task<Void> doBackgroundInitializationAsync(final SettingsProvider settingsProvider) {
return Utils.callTask(this.crashHandlerExecutor, new Callable<Task<Void>>() { // from class: com.google.firebase.crashlytics.internal.common.CrashlyticsCore.1
/* JADX WARN: Can't rename method to resolve collision */
@Override // java.util.concurrent.Callable
public Task<Void> call() throws Exception {
return CrashlyticsCore.this.doBackgroundInitialization(settingsProvider);
}
});
}
public CrashlyticsController getController() {
return this.controller;
}
public void log(String str) {
this.controller.writeToLog(System.currentTimeMillis() - this.startTime, str);
}
public void logException(Throwable th) {
this.controller.writeNonFatalException(Thread.currentThread(), th);
}
public void logFatalException(Throwable th) {
Logger.getLogger().d("Recorded on-demand fatal events: " + this.onDemandCounter.getRecordedOnDemandExceptions());
Logger.getLogger().d("Dropped on-demand fatal events: " + this.onDemandCounter.getDroppedOnDemandExceptions());
this.controller.setInternalKey(ON_DEMAND_RECORDED_KEY, Integer.toString(this.onDemandCounter.getRecordedOnDemandExceptions()));
this.controller.setInternalKey(ON_DEMAND_DROPPED_KEY, Integer.toString(this.onDemandCounter.getDroppedOnDemandExceptions()));
this.controller.logFatalException(Thread.currentThread(), th);
}
public void markInitializationComplete() {
this.backgroundWorker.submit(new Callable<Boolean>() { // from class: com.google.firebase.crashlytics.internal.common.CrashlyticsCore.3
/* JADX WARN: Can't rename method to resolve collision */
@Override // java.util.concurrent.Callable
public Boolean call() throws Exception {
try {
boolean remove = CrashlyticsCore.this.initializationMarker.remove();
if (!remove) {
Logger.getLogger().w("Initialization marker file was not properly removed.");
}
return Boolean.valueOf(remove);
} catch (Exception e4) {
Logger.getLogger().e("Problem encountered deleting Crashlytics initialization marker.", e4);
return Boolean.FALSE;
}
}
});
}
public void markInitializationStarted() {
this.backgroundWorker.checkRunningOnThread();
this.initializationMarker.create();
Logger.getLogger().v("Initialization marker file was created.");
}
public boolean onPreExecute(AppData appData, SettingsProvider settingsProvider) {
if (!isBuildIdValid(appData.buildId, CommonUtils.getBooleanResourceValue(this.context, CRASHLYTICS_REQUIRE_BUILD_ID, CRASHLYTICS_REQUIRE_BUILD_ID_DEFAULT))) {
throw new IllegalStateException(MISSING_BUILD_ID_MSG);
}
String clsuuid = new CLSUUID(this.idManager).toString();
try {
this.crashMarker = new CrashlyticsFileMarker(CRASH_MARKER_FILE_NAME, this.fileStore);
this.initializationMarker = new CrashlyticsFileMarker(INITIALIZATION_MARKER_FILE_NAME, this.fileStore);
UserMetadata userMetadata = new UserMetadata(clsuuid, this.fileStore, this.backgroundWorker);
LogFileManager logFileManager = new LogFileManager(this.fileStore);
MiddleOutFallbackStrategy middleOutFallbackStrategy = new MiddleOutFallbackStrategy(1024, new RemoveRepeatsStrategy(10));
this.remoteConfigDeferredProxy.setupListener(userMetadata);
this.controller = new CrashlyticsController(this.context, this.backgroundWorker, this.idManager, this.dataCollectionArbiter, this.fileStore, this.crashMarker, appData, userMetadata, logFileManager, SessionReportingCoordinator.create(this.context, this.idManager, this.fileStore, appData, logFileManager, userMetadata, middleOutFallbackStrategy, settingsProvider, this.onDemandCounter, this.sessionsSubscriber), this.nativeComponent, this.analyticsEventLogger, this.sessionsSubscriber);
boolean didPreviousInitializationFail = didPreviousInitializationFail();
checkForPreviousCrash();
this.controller.enableExceptionHandling(clsuuid, Thread.getDefaultUncaughtExceptionHandler(), settingsProvider);
if (!didPreviousInitializationFail || !CommonUtils.canTryConnection(this.context)) {
Logger.getLogger().d("Successfully configured exception handler.");
return CRASHLYTICS_REQUIRE_BUILD_ID_DEFAULT;
}
Logger.getLogger().d("Crashlytics did not finish previous background initialization. Initializing synchronously.");
finishInitSynchronously(settingsProvider);
return false;
} catch (Exception e4) {
Logger.getLogger().e("Crashlytics was not started due to an exception during initialization", e4);
this.controller = null;
return false;
}
}
public Task<Void> sendUnsentReports() {
return this.controller.sendUnsentReports();
}
public void setCrashlyticsCollectionEnabled(Boolean bool) {
this.dataCollectionArbiter.setCrashlyticsDataCollectionEnabled(bool);
}
public void setCustomKey(String str, String str2) {
this.controller.setCustomKey(str, str2);
}
public void setCustomKeys(Map<String, String> map) {
this.controller.setCustomKeys(map);
}
public void setInternalKey(String str, String str2) {
this.controller.setInternalKey(str, str2);
}
public void setUserId(String str) {
this.controller.setUserId(str);
}
}

View File

@@ -0,0 +1,39 @@
package com.google.firebase.crashlytics.internal.common;
import com.google.firebase.crashlytics.internal.Logger;
import com.google.firebase.crashlytics.internal.persistence.FileStore;
import java.io.File;
import java.io.IOException;
/* JADX INFO: Access modifiers changed from: package-private */
/* loaded from: classes3.dex */
public class CrashlyticsFileMarker {
private final FileStore fileStore;
private final String markerName;
public CrashlyticsFileMarker(String str, FileStore fileStore) {
this.markerName = str;
this.fileStore = fileStore;
}
private File getMarkerFile() {
return this.fileStore.getCommonFile(this.markerName);
}
public boolean create() {
try {
return getMarkerFile().createNewFile();
} catch (IOException e4) {
Logger.getLogger().e("Error creating marker: " + this.markerName, e4);
return false;
}
}
public boolean isPresent() {
return getMarkerFile().exists();
}
public boolean remove() {
return getMarkerFile().delete();
}
}

View File

@@ -0,0 +1,12 @@
package com.google.firebase.crashlytics.internal.common;
/* loaded from: classes3.dex */
interface CrashlyticsLifecycleEvents {
void onBeginSession(String str, long j4);
void onCustomKey(String str, String str2);
void onLog(long j4, String str);
void onUserId(String str);
}

View File

@@ -0,0 +1,242 @@
package com.google.firebase.crashlytics.internal.common;
import android.content.Context;
import android.os.Build;
import android.os.Environment;
import android.os.StatFs;
import android.text.TextUtils;
import com.google.firebase.crashlytics.BuildConfig;
import com.google.firebase.crashlytics.internal.ProcessDetailsProvider;
import com.google.firebase.crashlytics.internal.model.CrashlyticsReport;
import com.google.firebase.crashlytics.internal.settings.SettingsProvider;
import com.google.firebase.crashlytics.internal.stacktrace.StackTraceTrimmingStrategy;
import com.google.firebase.crashlytics.internal.stacktrace.TrimmedThrowableData;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Locale;
import java.util.Map;
/* loaded from: classes3.dex */
public class CrashlyticsReportDataCapture {
private static final Map<String, Integer> ARCHITECTURES_BY_NAME;
static final String GENERATOR;
static final int GENERATOR_TYPE = 3;
static final int REPORT_ANDROID_PLATFORM = 4;
static final int SESSION_ANDROID_PLATFORM = 3;
static final String SIGNAL_DEFAULT = "0";
private final AppData appData;
private final Context context;
private final IdManager idManager;
private final ProcessDetailsProvider processDetailsProvider = ProcessDetailsProvider.INSTANCE;
private final SettingsProvider settingsProvider;
private final StackTraceTrimmingStrategy stackTraceTrimmingStrategy;
static {
HashMap hashMap = new HashMap();
ARCHITECTURES_BY_NAME = hashMap;
hashMap.put("armeabi", 5);
hashMap.put("armeabi-v7a", 6);
hashMap.put("arm64-v8a", 9);
hashMap.put("x86", 0);
hashMap.put("x86_64", 1);
Locale locale = Locale.US;
GENERATOR = "Crashlytics Android SDK/18.6.0";
}
public CrashlyticsReportDataCapture(Context context, IdManager idManager, AppData appData, StackTraceTrimmingStrategy stackTraceTrimmingStrategy, SettingsProvider settingsProvider) {
this.context = context;
this.idManager = idManager;
this.appData = appData;
this.stackTraceTrimmingStrategy = stackTraceTrimmingStrategy;
this.settingsProvider = settingsProvider;
}
private CrashlyticsReport.ApplicationExitInfo addBuildIdInfo(CrashlyticsReport.ApplicationExitInfo applicationExitInfo) {
List<CrashlyticsReport.ApplicationExitInfo.BuildIdMappingForArch> list;
if (!this.settingsProvider.getSettingsSync().featureFlagData.collectBuildIds || this.appData.buildIdInfoList.size() <= 0) {
list = null;
} else {
ArrayList arrayList = new ArrayList();
for (BuildIdInfo buildIdInfo : this.appData.buildIdInfoList) {
arrayList.add(CrashlyticsReport.ApplicationExitInfo.BuildIdMappingForArch.builder().setLibraryName(buildIdInfo.getLibraryName()).setArch(buildIdInfo.getArch()).setBuildId(buildIdInfo.getBuildId()).build());
}
list = Collections.unmodifiableList(arrayList);
}
return CrashlyticsReport.ApplicationExitInfo.builder().setImportance(applicationExitInfo.getImportance()).setProcessName(applicationExitInfo.getProcessName()).setReasonCode(applicationExitInfo.getReasonCode()).setTimestamp(applicationExitInfo.getTimestamp()).setPid(applicationExitInfo.getPid()).setPss(applicationExitInfo.getPss()).setRss(applicationExitInfo.getRss()).setTraceFile(applicationExitInfo.getTraceFile()).setBuildIdMappingForArch(list).build();
}
private CrashlyticsReport.Builder buildReportData() {
return CrashlyticsReport.builder().setSdkVersion(BuildConfig.VERSION_NAME).setGmpAppId(this.appData.googleAppId).setInstallationUuid(this.idManager.getInstallIds().getCrashlyticsInstallId()).setFirebaseInstallationId(this.idManager.getInstallIds().getFirebaseInstallationId()).setBuildVersion(this.appData.versionCode).setDisplayVersion(this.appData.versionName).setPlatform(4);
}
private static long ensureNonNegative(long j4) {
if (j4 > 0) {
return j4;
}
return 0L;
}
private static int getDeviceArchitecture() {
Integer num;
String str = Build.CPU_ABI;
if (TextUtils.isEmpty(str) || (num = ARCHITECTURES_BY_NAME.get(str.toLowerCase(Locale.US))) == null) {
return 7;
}
return num.intValue();
}
private CrashlyticsReport.Session.Event.Application.Execution.BinaryImage populateBinaryImageData() {
return CrashlyticsReport.Session.Event.Application.Execution.BinaryImage.builder().setBaseAddress(0L).setSize(0L).setName(this.appData.packageName).setUuid(this.appData.buildId).build();
}
private List<CrashlyticsReport.Session.Event.Application.Execution.BinaryImage> populateBinaryImagesList() {
return Collections.singletonList(populateBinaryImageData());
}
private CrashlyticsReport.Session.Event.Application populateEventApplicationData(int i, TrimmedThrowableData trimmedThrowableData, Thread thread, int i4, int i5, boolean z3) {
Boolean bool;
CrashlyticsReport.Session.Event.Application.ProcessDetails currentProcessDetails = this.processDetailsProvider.getCurrentProcessDetails(this.context);
if (currentProcessDetails.getImportance() > 0) {
bool = Boolean.valueOf(currentProcessDetails.getImportance() != 100);
} else {
bool = null;
}
return CrashlyticsReport.Session.Event.Application.builder().setBackground(bool).setCurrentProcessDetails(currentProcessDetails).setAppProcessDetails(this.processDetailsProvider.getAppProcessDetails(this.context)).setUiOrientation(i).setExecution(populateExecutionData(trimmedThrowableData, thread, i4, i5, z3)).build();
}
private CrashlyticsReport.Session.Event.Device populateEventDeviceData(int i) {
BatteryState batteryState = BatteryState.get(this.context);
Float batteryLevel = batteryState.getBatteryLevel();
Double valueOf = batteryLevel != null ? Double.valueOf(batteryLevel.doubleValue()) : null;
int batteryVelocity = batteryState.getBatteryVelocity();
boolean proximitySensorEnabled = CommonUtils.getProximitySensorEnabled(this.context);
return CrashlyticsReport.Session.Event.Device.builder().setBatteryLevel(valueOf).setBatteryVelocity(batteryVelocity).setProximityOn(proximitySensorEnabled).setOrientation(i).setRamUsed(ensureNonNegative(CommonUtils.calculateTotalRamInBytes(this.context) - CommonUtils.calculateFreeRamInBytes(this.context))).setDiskUsed(CommonUtils.calculateUsedDiskSpaceInBytes(Environment.getDataDirectory().getPath())).build();
}
private CrashlyticsReport.Session.Event.Application.Execution.Exception populateExceptionData(TrimmedThrowableData trimmedThrowableData, int i, int i4) {
return populateExceptionData(trimmedThrowableData, i, i4, 0);
}
private CrashlyticsReport.Session.Event.Application.Execution populateExecutionData(TrimmedThrowableData trimmedThrowableData, Thread thread, int i, int i4, boolean z3) {
return CrashlyticsReport.Session.Event.Application.Execution.builder().setThreads(populateThreadsList(trimmedThrowableData, thread, i, z3)).setException(populateExceptionData(trimmedThrowableData, i, i4)).setSignal(populateSignalData()).setBinaries(populateBinaryImagesList()).build();
}
private CrashlyticsReport.Session.Event.Application.Execution.Thread.Frame populateFrameData(StackTraceElement stackTraceElement, CrashlyticsReport.Session.Event.Application.Execution.Thread.Frame.Builder builder) {
long j4 = 0;
long max = stackTraceElement.isNativeMethod() ? Math.max(stackTraceElement.getLineNumber(), 0L) : 0L;
String str = stackTraceElement.getClassName() + "." + stackTraceElement.getMethodName();
String fileName = stackTraceElement.getFileName();
if (!stackTraceElement.isNativeMethod() && stackTraceElement.getLineNumber() > 0) {
j4 = stackTraceElement.getLineNumber();
}
return builder.setPc(max).setSymbol(str).setFile(fileName).setOffset(j4).build();
}
private List<CrashlyticsReport.Session.Event.Application.Execution.Thread.Frame> populateFramesList(StackTraceElement[] stackTraceElementArr, int i) {
ArrayList arrayList = new ArrayList();
for (StackTraceElement stackTraceElement : stackTraceElementArr) {
arrayList.add(populateFrameData(stackTraceElement, CrashlyticsReport.Session.Event.Application.Execution.Thread.Frame.builder().setImportance(i)));
}
return Collections.unmodifiableList(arrayList);
}
private CrashlyticsReport.Session.Application populateSessionApplicationData() {
return CrashlyticsReport.Session.Application.builder().setIdentifier(this.idManager.getAppIdentifier()).setVersion(this.appData.versionCode).setDisplayVersion(this.appData.versionName).setInstallationUuid(this.idManager.getInstallIds().getCrashlyticsInstallId()).setDevelopmentPlatform(this.appData.developmentPlatformProvider.getDevelopmentPlatform()).setDevelopmentPlatformVersion(this.appData.developmentPlatformProvider.getDevelopmentPlatformVersion()).build();
}
private CrashlyticsReport.Session populateSessionData(String str, long j4) {
return CrashlyticsReport.Session.builder().setStartedAt(j4).setIdentifier(str).setGenerator(GENERATOR).setApp(populateSessionApplicationData()).setOs(populateSessionOperatingSystemData()).setDevice(populateSessionDeviceData()).setGeneratorType(3).build();
}
private CrashlyticsReport.Session.Device populateSessionDeviceData() {
StatFs statFs = new StatFs(Environment.getDataDirectory().getPath());
int deviceArchitecture = getDeviceArchitecture();
int availableProcessors = Runtime.getRuntime().availableProcessors();
long calculateTotalRamInBytes = CommonUtils.calculateTotalRamInBytes(this.context);
long blockCount = statFs.getBlockCount() * statFs.getBlockSize();
boolean isEmulator = CommonUtils.isEmulator();
int deviceState = CommonUtils.getDeviceState();
return CrashlyticsReport.Session.Device.builder().setArch(deviceArchitecture).setModel(Build.MODEL).setCores(availableProcessors).setRam(calculateTotalRamInBytes).setDiskSpace(blockCount).setSimulator(isEmulator).setState(deviceState).setManufacturer(Build.MANUFACTURER).setModelClass(Build.PRODUCT).build();
}
private CrashlyticsReport.Session.OperatingSystem populateSessionOperatingSystemData() {
return CrashlyticsReport.Session.OperatingSystem.builder().setPlatform(3).setVersion(Build.VERSION.RELEASE).setBuildVersion(Build.VERSION.CODENAME).setJailbroken(CommonUtils.isRooted()).build();
}
private CrashlyticsReport.Session.Event.Application.Execution.Signal populateSignalData() {
return CrashlyticsReport.Session.Event.Application.Execution.Signal.builder().setName("0").setCode("0").setAddress(0L).build();
}
private CrashlyticsReport.Session.Event.Application.Execution.Thread populateThreadData(Thread thread, StackTraceElement[] stackTraceElementArr) {
return populateThreadData(thread, stackTraceElementArr, 0);
}
private List<CrashlyticsReport.Session.Event.Application.Execution.Thread> populateThreadsList(TrimmedThrowableData trimmedThrowableData, Thread thread, int i, boolean z3) {
ArrayList arrayList = new ArrayList();
arrayList.add(populateThreadData(thread, trimmedThrowableData.stacktrace, i));
if (z3) {
for (Map.Entry<Thread, StackTraceElement[]> entry : Thread.getAllStackTraces().entrySet()) {
Thread key = entry.getKey();
if (!key.equals(thread)) {
arrayList.add(populateThreadData(key, this.stackTraceTrimmingStrategy.getTrimmedStackTrace(entry.getValue())));
}
}
}
return Collections.unmodifiableList(arrayList);
}
private CrashlyticsReport.Session.Event.Application.ProcessDetails processDetailsFromApplicationExitInfo(CrashlyticsReport.ApplicationExitInfo applicationExitInfo) {
return this.processDetailsProvider.buildProcessDetails(applicationExitInfo.getProcessName(), applicationExitInfo.getPid(), applicationExitInfo.getImportance());
}
public CrashlyticsReport.Session.Event captureAnrEventData(CrashlyticsReport.ApplicationExitInfo applicationExitInfo) {
int i = this.context.getResources().getConfiguration().orientation;
return CrashlyticsReport.Session.Event.builder().setType("anr").setTimestamp(applicationExitInfo.getTimestamp()).setApp(populateEventApplicationData(i, addBuildIdInfo(applicationExitInfo))).setDevice(populateEventDeviceData(i)).build();
}
public CrashlyticsReport.Session.Event captureEventData(Throwable th, Thread thread, String str, long j4, int i, int i4, boolean z3) {
int i5 = this.context.getResources().getConfiguration().orientation;
return CrashlyticsReport.Session.Event.builder().setType(str).setTimestamp(j4).setApp(populateEventApplicationData(i5, TrimmedThrowableData.makeTrimmedThrowableData(th, this.stackTraceTrimmingStrategy), thread, i, i4, z3)).setDevice(populateEventDeviceData(i5)).build();
}
public CrashlyticsReport captureReportData(String str, long j4) {
return buildReportData().setSession(populateSessionData(str, j4)).build();
}
private CrashlyticsReport.Session.Event.Application.Execution.Exception populateExceptionData(TrimmedThrowableData trimmedThrowableData, int i, int i4, int i5) {
String str = trimmedThrowableData.className;
String str2 = trimmedThrowableData.localizedMessage;
StackTraceElement[] stackTraceElementArr = trimmedThrowableData.stacktrace;
int i6 = 0;
if (stackTraceElementArr == null) {
stackTraceElementArr = new StackTraceElement[0];
}
TrimmedThrowableData trimmedThrowableData2 = trimmedThrowableData.cause;
if (i5 >= i4) {
TrimmedThrowableData trimmedThrowableData3 = trimmedThrowableData2;
while (trimmedThrowableData3 != null) {
trimmedThrowableData3 = trimmedThrowableData3.cause;
i6++;
}
}
CrashlyticsReport.Session.Event.Application.Execution.Exception.Builder overflowCount = CrashlyticsReport.Session.Event.Application.Execution.Exception.builder().setType(str).setReason(str2).setFrames(populateFramesList(stackTraceElementArr, i)).setOverflowCount(i6);
if (trimmedThrowableData2 != null && i6 == 0) {
overflowCount.setCausedBy(populateExceptionData(trimmedThrowableData2, i, i4, i5 + 1));
}
return overflowCount.build();
}
private CrashlyticsReport.Session.Event.Application.Execution.Thread populateThreadData(Thread thread, StackTraceElement[] stackTraceElementArr, int i) {
return CrashlyticsReport.Session.Event.Application.Execution.Thread.builder().setName(thread.getName()).setImportance(i).setFrames(populateFramesList(stackTraceElementArr, i)).build();
}
private CrashlyticsReport.Session.Event.Application.Execution populateExecutionData(CrashlyticsReport.ApplicationExitInfo applicationExitInfo) {
return CrashlyticsReport.Session.Event.Application.Execution.builder().setAppExitInfo(applicationExitInfo).setSignal(populateSignalData()).setBinaries(populateBinaryImagesList()).build();
}
private CrashlyticsReport.Session.Event.Application populateEventApplicationData(int i, CrashlyticsReport.ApplicationExitInfo applicationExitInfo) {
return CrashlyticsReport.Session.Event.Application.builder().setBackground(Boolean.valueOf(applicationExitInfo.getImportance() != 100)).setCurrentProcessDetails(processDetailsFromApplicationExitInfo(applicationExitInfo)).setUiOrientation(i).setExecution(populateExecutionData(applicationExitInfo)).build();
}
}

View File

@@ -0,0 +1,19 @@
package com.google.firebase.crashlytics.internal.common;
import com.google.auto.value.AutoValue;
import com.google.firebase.crashlytics.internal.model.CrashlyticsReport;
import java.io.File;
@AutoValue
/* loaded from: classes3.dex */
public abstract class CrashlyticsReportWithSessionId {
public static CrashlyticsReportWithSessionId create(CrashlyticsReport crashlyticsReport, String str, File file) {
return new AutoValue_CrashlyticsReportWithSessionId(crashlyticsReport, str, file);
}
public abstract CrashlyticsReport getReport();
public abstract File getReportFile();
public abstract String getSessionId();
}

View File

@@ -0,0 +1,76 @@
package com.google.firebase.crashlytics.internal.common;
import com.google.firebase.crashlytics.internal.CrashlyticsNativeComponent;
import com.google.firebase.crashlytics.internal.Logger;
import com.google.firebase.crashlytics.internal.settings.SettingsProvider;
import java.lang.Thread;
import java.util.concurrent.atomic.AtomicBoolean;
/* JADX INFO: Access modifiers changed from: package-private */
/* loaded from: classes3.dex */
public class CrashlyticsUncaughtExceptionHandler implements Thread.UncaughtExceptionHandler {
private final CrashListener crashListener;
private final Thread.UncaughtExceptionHandler defaultHandler;
private final AtomicBoolean isHandlingException = new AtomicBoolean(false);
private final CrashlyticsNativeComponent nativeComponent;
private final SettingsProvider settingsProvider;
/* loaded from: classes3.dex */
public interface CrashListener {
void onUncaughtException(SettingsProvider settingsProvider, Thread thread, Throwable th);
}
public CrashlyticsUncaughtExceptionHandler(CrashListener crashListener, SettingsProvider settingsProvider, Thread.UncaughtExceptionHandler uncaughtExceptionHandler, CrashlyticsNativeComponent crashlyticsNativeComponent) {
this.crashListener = crashListener;
this.settingsProvider = settingsProvider;
this.defaultHandler = uncaughtExceptionHandler;
this.nativeComponent = crashlyticsNativeComponent;
}
private boolean shouldRecordUncaughtException(Thread thread, Throwable th) {
if (thread == null) {
Logger.getLogger().e("Crashlytics will not record uncaught exception; null thread");
return false;
}
if (th == null) {
Logger.getLogger().e("Crashlytics will not record uncaught exception; null throwable");
return false;
}
if (!this.nativeComponent.hasCrashDataForCurrentSession()) {
return true;
}
Logger.getLogger().d("Crashlytics will not record uncaught exception; native crash exists for session.");
return false;
}
public boolean isHandlingException() {
return this.isHandlingException.get();
}
@Override // java.lang.Thread.UncaughtExceptionHandler
public void uncaughtException(Thread thread, Throwable th) {
this.isHandlingException.set(true);
try {
try {
if (shouldRecordUncaughtException(thread, th)) {
this.crashListener.onUncaughtException(this.settingsProvider, thread, th);
} else {
Logger.getLogger().d("Uncaught exception will not be recorded by Crashlytics.");
}
Logger.getLogger().d("Completed exception processing. Invoking default exception handler.");
this.defaultHandler.uncaughtException(thread, th);
this.isHandlingException.set(false);
} catch (Exception e4) {
Logger.getLogger().e("An error occurred in the uncaught exception handler", e4);
Logger.getLogger().d("Completed exception processing. Invoking default exception handler.");
this.defaultHandler.uncaughtException(thread, th);
this.isHandlingException.set(false);
}
} catch (Throwable th2) {
Logger.getLogger().d("Completed exception processing. Invoking default exception handler.");
this.defaultHandler.uncaughtException(thread, th);
this.isHandlingException.set(false);
throw th2;
}
}
}

View File

@@ -0,0 +1,6 @@
package com.google.firebase.crashlytics.internal.common;
/* loaded from: classes3.dex */
public interface CurrentTimeProvider {
long getCurrentTimeMillis();
}

View File

@@ -0,0 +1,165 @@
package com.google.firebase.crashlytics.internal.common;
import android.annotation.SuppressLint;
import android.content.Context;
import android.content.SharedPreferences;
import android.content.pm.ApplicationInfo;
import android.content.pm.PackageManager;
import android.os.Bundle;
import com.google.android.gms.tasks.Task;
import com.google.android.gms.tasks.TaskCompletionSource;
import com.google.firebase.FirebaseApp;
import com.google.firebase.crashlytics.internal.Logger;
import java.util.concurrent.Executor;
/* loaded from: classes3.dex */
public class DataCollectionArbiter {
private static final String FIREBASE_CRASHLYTICS_COLLECTION_ENABLED = "firebase_crashlytics_collection_enabled";
private Boolean crashlyticsDataCollectionEnabled;
TaskCompletionSource<Void> dataCollectionEnabledTask;
private final TaskCompletionSource<Void> dataCollectionExplicitlyApproved;
private final FirebaseApp firebaseApp;
private boolean setInManifest;
private final SharedPreferences sharedPreferences;
private final Object taskLock;
boolean taskResolved;
public DataCollectionArbiter(FirebaseApp firebaseApp) {
Object obj = new Object();
this.taskLock = obj;
this.dataCollectionEnabledTask = new TaskCompletionSource<>();
this.taskResolved = false;
this.setInManifest = false;
this.dataCollectionExplicitlyApproved = new TaskCompletionSource<>();
Context applicationContext = firebaseApp.getApplicationContext();
this.firebaseApp = firebaseApp;
this.sharedPreferences = CommonUtils.getSharedPrefs(applicationContext);
Boolean dataCollectionValueFromSharedPreferences = getDataCollectionValueFromSharedPreferences();
this.crashlyticsDataCollectionEnabled = dataCollectionValueFromSharedPreferences == null ? getDataCollectionValueFromManifest(applicationContext) : dataCollectionValueFromSharedPreferences;
synchronized (obj) {
try {
if (isAutomaticDataCollectionEnabled()) {
this.dataCollectionEnabledTask.trySetResult(null);
this.taskResolved = true;
}
} catch (Throwable th) {
throw th;
}
}
}
private Boolean getDataCollectionValueFromManifest(Context context) {
Boolean readCrashlyticsDataCollectionEnabledFromManifest = readCrashlyticsDataCollectionEnabledFromManifest(context);
if (readCrashlyticsDataCollectionEnabledFromManifest == null) {
this.setInManifest = false;
return null;
}
this.setInManifest = true;
return Boolean.valueOf(Boolean.TRUE.equals(readCrashlyticsDataCollectionEnabledFromManifest));
}
private Boolean getDataCollectionValueFromSharedPreferences() {
if (!this.sharedPreferences.contains(FIREBASE_CRASHLYTICS_COLLECTION_ENABLED)) {
return null;
}
this.setInManifest = false;
return Boolean.valueOf(this.sharedPreferences.getBoolean(FIREBASE_CRASHLYTICS_COLLECTION_ENABLED, true));
}
private boolean isFirebaseDataCollectionDefaultEnabled() {
try {
return this.firebaseApp.isDataCollectionDefaultEnabled();
} catch (IllegalStateException unused) {
return false;
}
}
private void logDataCollectionState(boolean z3) {
String str = z3 ? "ENABLED" : "DISABLED";
String str2 = this.crashlyticsDataCollectionEnabled == null ? "global Firebase setting" : this.setInManifest ? "firebase_crashlytics_collection_enabled manifest flag" : "API";
Logger.getLogger().d("Crashlytics automatic data collection " + str + " by " + str2 + ".");
}
private static Boolean readCrashlyticsDataCollectionEnabledFromManifest(Context context) {
ApplicationInfo applicationInfo;
Bundle bundle;
try {
PackageManager packageManager = context.getPackageManager();
if (packageManager == null || (applicationInfo = packageManager.getApplicationInfo(context.getPackageName(), 128)) == null || (bundle = applicationInfo.metaData) == null || !bundle.containsKey(FIREBASE_CRASHLYTICS_COLLECTION_ENABLED)) {
return null;
}
return Boolean.valueOf(applicationInfo.metaData.getBoolean(FIREBASE_CRASHLYTICS_COLLECTION_ENABLED));
} catch (PackageManager.NameNotFoundException e4) {
Logger.getLogger().e("Could not read data collection permission from manifest", e4);
return null;
}
}
@SuppressLint({"ApplySharedPref"})
private static void storeDataCollectionValueInSharedPreferences(SharedPreferences sharedPreferences, Boolean bool) {
SharedPreferences.Editor edit = sharedPreferences.edit();
if (bool != null) {
edit.putBoolean(FIREBASE_CRASHLYTICS_COLLECTION_ENABLED, bool.booleanValue());
} else {
edit.remove(FIREBASE_CRASHLYTICS_COLLECTION_ENABLED);
}
edit.apply();
}
public void grantDataCollectionPermission(boolean z3) {
if (!z3) {
throw new IllegalStateException("An invalid data collection token was used.");
}
this.dataCollectionExplicitlyApproved.trySetResult(null);
}
public synchronized boolean isAutomaticDataCollectionEnabled() {
boolean booleanValue;
try {
Boolean bool = this.crashlyticsDataCollectionEnabled;
booleanValue = bool != null ? bool.booleanValue() : isFirebaseDataCollectionDefaultEnabled();
logDataCollectionState(booleanValue);
} catch (Throwable th) {
throw th;
}
return booleanValue;
}
public synchronized void setCrashlyticsDataCollectionEnabled(Boolean bool) {
if (bool != null) {
try {
this.setInManifest = false;
} catch (Throwable th) {
throw th;
}
}
this.crashlyticsDataCollectionEnabled = bool != null ? bool : getDataCollectionValueFromManifest(this.firebaseApp.getApplicationContext());
storeDataCollectionValueInSharedPreferences(this.sharedPreferences, bool);
synchronized (this.taskLock) {
try {
if (isAutomaticDataCollectionEnabled()) {
if (!this.taskResolved) {
this.dataCollectionEnabledTask.trySetResult(null);
this.taskResolved = true;
}
} else if (this.taskResolved) {
this.dataCollectionEnabledTask = new TaskCompletionSource<>();
this.taskResolved = false;
}
} finally {
}
}
}
public Task<Void> waitForAutomaticDataCollectionEnabled() {
Task<Void> task;
synchronized (this.taskLock) {
task = this.dataCollectionEnabledTask.getTask();
}
return task;
}
public Task<Void> waitForDataCollectionPermission(Executor executor) {
return Utils.race(executor, this.dataCollectionExplicitlyApproved.getTask(), waitForAutomaticDataCollectionEnabled());
}
}

View File

@@ -0,0 +1,28 @@
package com.google.firebase.crashlytics.internal.common;
/* loaded from: classes3.dex */
public enum DeliveryMechanism {
DEVELOPER(1),
USER_SIDELOAD(2),
TEST_DISTRIBUTION(3),
APP_STORE(4);
private final int id;
DeliveryMechanism(int i) {
this.id = i;
}
public static DeliveryMechanism determineFrom(String str) {
return str != null ? APP_STORE : DEVELOPER;
}
public int getId() {
return this.id;
}
@Override // java.lang.Enum
public String toString() {
return Integer.toString(this.id);
}
}

View File

@@ -0,0 +1,84 @@
package com.google.firebase.crashlytics.internal.common;
import C.w;
import android.annotation.SuppressLint;
import com.google.firebase.crashlytics.internal.Logger;
import java.util.Locale;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.LinkedBlockingQueue;
import java.util.concurrent.RejectedExecutionHandler;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.ThreadFactory;
import java.util.concurrent.ThreadPoolExecutor;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicLong;
/* loaded from: classes3.dex */
public final class ExecutorUtils {
private static final long DEFAULT_TERMINATION_TIMEOUT = 2;
private ExecutorUtils() {
}
private static void addDelayedShutdownHook(String str, ExecutorService executorService) {
addDelayedShutdownHook(str, executorService, DEFAULT_TERMINATION_TIMEOUT, TimeUnit.SECONDS);
}
public static ExecutorService buildSingleThreadExecutorService(String str) {
ExecutorService newSingleThreadExecutor = newSingleThreadExecutor(getNamedThreadFactory(str), new ThreadPoolExecutor.DiscardPolicy());
addDelayedShutdownHook(str, newSingleThreadExecutor);
return newSingleThreadExecutor;
}
public static ScheduledExecutorService buildSingleThreadScheduledExecutorService(String str) {
ScheduledExecutorService newSingleThreadScheduledExecutor = Executors.newSingleThreadScheduledExecutor(getNamedThreadFactory(str));
addDelayedShutdownHook(str, newSingleThreadScheduledExecutor);
return newSingleThreadScheduledExecutor;
}
public static ThreadFactory getNamedThreadFactory(final String str) {
final AtomicLong atomicLong = new AtomicLong(1L);
return new ThreadFactory() { // from class: com.google.firebase.crashlytics.internal.common.ExecutorUtils.1
@Override // java.util.concurrent.ThreadFactory
public Thread newThread(final Runnable runnable) {
Thread newThread = Executors.defaultThreadFactory().newThread(new BackgroundPriorityRunnable() { // from class: com.google.firebase.crashlytics.internal.common.ExecutorUtils.1.1
@Override // com.google.firebase.crashlytics.internal.common.BackgroundPriorityRunnable
public void onRun() {
runnable.run();
}
});
newThread.setName(str + atomicLong.getAndIncrement());
return newThread;
}
};
}
@SuppressLint({"ThreadPoolCreation"})
private static ExecutorService newSingleThreadExecutor(ThreadFactory threadFactory, RejectedExecutionHandler rejectedExecutionHandler) {
return Executors.unconfigurableExecutorService(new ThreadPoolExecutor(1, 1, 0L, TimeUnit.MILLISECONDS, new LinkedBlockingQueue(), threadFactory, rejectedExecutionHandler));
}
@SuppressLint({"ThreadPoolCreation"})
private static void addDelayedShutdownHook(final String str, final ExecutorService executorService, final long j4, final TimeUnit timeUnit) {
Runtime.getRuntime().addShutdownHook(new Thread(new BackgroundPriorityRunnable() { // from class: com.google.firebase.crashlytics.internal.common.ExecutorUtils.2
@Override // com.google.firebase.crashlytics.internal.common.BackgroundPriorityRunnable
public void onRun() {
try {
Logger.getLogger().d("Executing shutdown hook for " + str);
executorService.shutdown();
if (executorService.awaitTermination(j4, timeUnit)) {
return;
}
Logger.getLogger().d(str + " did not shut down in the allocated time. Requesting immediate shutdown.");
executorService.shutdownNow();
} catch (InterruptedException unused) {
Logger logger = Logger.getLogger();
Locale locale = Locale.US;
logger.d("Interrupted while waiting for " + str + " to shut down. Requesting immediate shutdown.");
executorService.shutdownNow();
}
}
}, w.z("Crashlytics Shutdown Hook for ", str)));
}
}

View File

@@ -0,0 +1,95 @@
package com.google.firebase.crashlytics.internal.common;
import com.google.firebase.crashlytics.internal.model.CrashlyticsReport;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import java.util.zip.GZIPOutputStream;
/* JADX INFO: Access modifiers changed from: package-private */
/* loaded from: classes3.dex */
public class FileBackedNativeSessionFile implements NativeSessionFile {
private final String dataTransportFilename;
private final File file;
private final String reportsEndpointFilename;
public FileBackedNativeSessionFile(String str, String str2, File file) {
this.dataTransportFilename = str;
this.reportsEndpointFilename = str2;
this.file = file;
}
private byte[] asGzippedBytes() {
byte[] bArr = new byte[8192];
try {
InputStream stream = getStream();
try {
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
try {
GZIPOutputStream gZIPOutputStream = new GZIPOutputStream(byteArrayOutputStream);
if (stream == null) {
gZIPOutputStream.close();
byteArrayOutputStream.close();
if (stream != null) {
stream.close();
}
return null;
}
while (true) {
try {
int read = stream.read(bArr);
if (read <= 0) {
gZIPOutputStream.finish();
byte[] byteArray = byteArrayOutputStream.toByteArray();
gZIPOutputStream.close();
byteArrayOutputStream.close();
stream.close();
return byteArray;
}
gZIPOutputStream.write(bArr, 0, read);
} finally {
}
}
} catch (Throwable th) {
try {
byteArrayOutputStream.close();
} catch (Throwable th2) {
th.addSuppressed(th2);
}
throw th;
}
} finally {
}
} catch (IOException unused) {
return null;
}
}
@Override // com.google.firebase.crashlytics.internal.common.NativeSessionFile
public CrashlyticsReport.FilesPayload.File asFilePayload() {
byte[] asGzippedBytes = asGzippedBytes();
if (asGzippedBytes != null) {
return CrashlyticsReport.FilesPayload.File.builder().setContents(asGzippedBytes).setFilename(this.dataTransportFilename).build();
}
return null;
}
@Override // com.google.firebase.crashlytics.internal.common.NativeSessionFile
public String getReportsEndpointFilename() {
return this.reportsEndpointFilename;
}
@Override // com.google.firebase.crashlytics.internal.common.NativeSessionFile
public InputStream getStream() {
if (this.file.exists() && this.file.isFile()) {
try {
return new FileInputStream(this.file);
} catch (FileNotFoundException unused) {
}
}
return null;
}
}

View File

@@ -0,0 +1,142 @@
package com.google.firebase.crashlytics.internal.common;
import android.content.Context;
import android.content.SharedPreferences;
import android.os.Build;
import com.google.firebase.crashlytics.internal.Logger;
import com.google.firebase.crashlytics.internal.common.InstallIdProvider;
import com.google.firebase.installations.FirebaseInstallationsApi;
import com.google.firebase.sessions.settings.RemoteSettings;
import java.util.Locale;
import java.util.UUID;
import java.util.regex.Pattern;
/* loaded from: classes3.dex */
public class IdManager implements InstallIdProvider {
public static final String DEFAULT_VERSION_NAME = "0.0";
static final String PREFKEY_ADVERTISING_ID = "crashlytics.advertising.id";
static final String PREFKEY_FIREBASE_IID = "firebase.installation.id";
static final String PREFKEY_INSTALLATION_UUID = "crashlytics.installation.id";
static final String PREFKEY_LEGACY_INSTALLATION_UUID = "crashlytics.installation.id";
private static final String SYNTHETIC_FID_PREFIX = "SYN_";
private final Context appContext;
private final String appIdentifier;
private final DataCollectionArbiter dataCollectionArbiter;
private final FirebaseInstallationsApi firebaseInstallationsApi;
private InstallIdProvider.InstallIds installIds;
private final InstallerPackageNameProvider installerPackageNameProvider;
private static final Pattern ID_PATTERN = Pattern.compile("[^\\p{Alnum}]");
private static final String FORWARD_SLASH_REGEX = Pattern.quote(RemoteSettings.FORWARD_SLASH_STRING);
public IdManager(Context context, String str, FirebaseInstallationsApi firebaseInstallationsApi, DataCollectionArbiter dataCollectionArbiter) {
if (context == null) {
throw new IllegalArgumentException("appContext must not be null");
}
if (str == null) {
throw new IllegalArgumentException("appIdentifier must not be null");
}
this.appContext = context;
this.appIdentifier = str;
this.firebaseInstallationsApi = firebaseInstallationsApi;
this.dataCollectionArbiter = dataCollectionArbiter;
this.installerPackageNameProvider = new InstallerPackageNameProvider();
}
private synchronized String createAndCacheCrashlyticsInstallId(String str, SharedPreferences sharedPreferences) {
String formatId;
formatId = formatId(UUID.randomUUID().toString());
Logger.getLogger().v("Created new Crashlytics installation ID: " + formatId + " for FID: " + str);
sharedPreferences.edit().putString("crashlytics.installation.id", formatId).putString(PREFKEY_FIREBASE_IID, str).apply();
return formatId;
}
public static String createSyntheticFid() {
return SYNTHETIC_FID_PREFIX + UUID.randomUUID().toString();
}
private static String formatId(String str) {
if (str == null) {
return null;
}
return ID_PATTERN.matcher(str).replaceAll("").toLowerCase(Locale.US);
}
public static boolean isSyntheticFid(String str) {
return str != null && str.startsWith(SYNTHETIC_FID_PREFIX);
}
private String readCachedCrashlyticsInstallId(SharedPreferences sharedPreferences) {
return sharedPreferences.getString("crashlytics.installation.id", null);
}
private String removeForwardSlashesIn(String str) {
return str.replaceAll(FORWARD_SLASH_REGEX, "");
}
private boolean shouldRefresh() {
InstallIdProvider.InstallIds installIds = this.installIds;
if (installIds != null) {
return installIds.getFirebaseInstallationId() == null && this.dataCollectionArbiter.isAutomaticDataCollectionEnabled();
}
return true;
}
public String fetchTrueFid() {
try {
return (String) Utils.awaitEvenIfOnMainThread(this.firebaseInstallationsApi.getId());
} catch (Exception e4) {
Logger.getLogger().w("Failed to retrieve Firebase Installation ID.", e4);
return null;
}
}
public String getAppIdentifier() {
return this.appIdentifier;
}
@Override // com.google.firebase.crashlytics.internal.common.InstallIdProvider
public synchronized InstallIdProvider.InstallIds getInstallIds() {
if (!shouldRefresh()) {
return this.installIds;
}
Logger.getLogger().v("Determining Crashlytics installation ID...");
SharedPreferences sharedPrefs = CommonUtils.getSharedPrefs(this.appContext);
String string = sharedPrefs.getString(PREFKEY_FIREBASE_IID, null);
Logger.getLogger().v("Cached Firebase Installation ID: " + string);
if (this.dataCollectionArbiter.isAutomaticDataCollectionEnabled()) {
String fetchTrueFid = fetchTrueFid();
Logger.getLogger().v("Fetched Firebase Installation ID: " + fetchTrueFid);
if (fetchTrueFid == null) {
fetchTrueFid = string == null ? createSyntheticFid() : string;
}
if (fetchTrueFid.equals(string)) {
this.installIds = InstallIdProvider.InstallIds.create(readCachedCrashlyticsInstallId(sharedPrefs), fetchTrueFid);
} else {
this.installIds = InstallIdProvider.InstallIds.create(createAndCacheCrashlyticsInstallId(fetchTrueFid, sharedPrefs), fetchTrueFid);
}
} else if (isSyntheticFid(string)) {
this.installIds = InstallIdProvider.InstallIds.createWithoutFid(readCachedCrashlyticsInstallId(sharedPrefs));
} else {
this.installIds = InstallIdProvider.InstallIds.createWithoutFid(createAndCacheCrashlyticsInstallId(createSyntheticFid(), sharedPrefs));
}
Logger.getLogger().v("Install IDs: " + this.installIds);
return this.installIds;
}
public String getInstallerPackageName() {
return this.installerPackageNameProvider.getInstallerPackageName(this.appContext);
}
public String getModelName() {
Locale locale = Locale.US;
return removeForwardSlashesIn(Build.MANUFACTURER) + RemoteSettings.FORWARD_SLASH_STRING + removeForwardSlashesIn(Build.MODEL);
}
public String getOsBuildVersionString() {
return removeForwardSlashesIn(Build.VERSION.INCREMENTAL);
}
public String getOsDisplayVersionString() {
return removeForwardSlashesIn(Build.VERSION.RELEASE);
}
}

View File

@@ -0,0 +1,25 @@
package com.google.firebase.crashlytics.internal.common;
import com.google.auto.value.AutoValue;
/* loaded from: classes3.dex */
public interface InstallIdProvider {
@AutoValue
/* loaded from: classes3.dex */
public static abstract class InstallIds {
public static InstallIds create(String str, String str2) {
return new AutoValue_InstallIdProvider_InstallIds(str, str2);
}
public static InstallIds createWithoutFid(String str) {
return create(str, null);
}
public abstract String getCrashlyticsInstallId();
public abstract String getFirebaseInstallationId();
}
InstallIds getInstallIds();
}

View File

@@ -0,0 +1,24 @@
package com.google.firebase.crashlytics.internal.common;
import android.content.Context;
/* loaded from: classes3.dex */
class InstallerPackageNameProvider {
private static final String NO_INSTALLER_PACKAGE_NAME = "";
private String installerPackageName;
private static String loadInstallerPackageName(Context context) {
String installerPackageName = context.getPackageManager().getInstallerPackageName(context.getPackageName());
return installerPackageName == null ? "" : installerPackageName;
}
public synchronized String getInstallerPackageName(Context context) {
try {
if (this.installerPackageName == null) {
this.installerPackageName = loadInstallerPackageName(context);
}
} finally {
}
return "".equals(this.installerPackageName) ? null : this.installerPackageName;
}
}

View File

@@ -0,0 +1,14 @@
package com.google.firebase.crashlytics.internal.common;
import com.google.firebase.crashlytics.internal.model.CrashlyticsReport;
import java.io.InputStream;
/* JADX INFO: Access modifiers changed from: package-private */
/* loaded from: classes3.dex */
public interface NativeSessionFile {
CrashlyticsReport.FilesPayload.File asFilePayload();
String getReportsEndpointFilename();
InputStream getStream();
}

View File

@@ -0,0 +1,58 @@
package com.google.firebase.crashlytics.internal.common;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.List;
import java.util.zip.GZIPOutputStream;
/* JADX INFO: Access modifiers changed from: package-private */
/* loaded from: classes3.dex */
public class NativeSessionFileGzipper {
private static void gzipInputStream(InputStream inputStream, File file) throws IOException {
if (inputStream == null) {
return;
}
byte[] bArr = new byte[8192];
GZIPOutputStream gZIPOutputStream = null;
try {
GZIPOutputStream gZIPOutputStream2 = new GZIPOutputStream(new FileOutputStream(file));
while (true) {
try {
int read = inputStream.read(bArr);
if (read <= 0) {
gZIPOutputStream2.finish();
CommonUtils.closeQuietly(gZIPOutputStream2);
return;
}
gZIPOutputStream2.write(bArr, 0, read);
} catch (Throwable th) {
th = th;
gZIPOutputStream = gZIPOutputStream2;
CommonUtils.closeQuietly(gZIPOutputStream);
throw th;
}
}
} catch (Throwable th2) {
th = th2;
}
}
public static void processNativeSessions(File file, List<NativeSessionFile> list) {
for (NativeSessionFile nativeSessionFile : list) {
InputStream inputStream = null;
try {
inputStream = nativeSessionFile.getStream();
if (inputStream != null) {
gzipInputStream(inputStream, new File(file, nativeSessionFile.getReportsEndpointFilename()));
}
} catch (IOException unused) {
} catch (Throwable th) {
CommonUtils.closeQuietly(null);
throw th;
}
CommonUtils.closeQuietly(inputStream);
}
}
}

View File

@@ -0,0 +1,29 @@
package com.google.firebase.crashlytics.internal.common;
import java.util.concurrent.atomic.AtomicInteger;
/* loaded from: classes3.dex */
public final class OnDemandCounter {
private final AtomicInteger recordedOnDemandExceptions = new AtomicInteger();
private final AtomicInteger droppedOnDemandExceptions = new AtomicInteger();
public int getDroppedOnDemandExceptions() {
return this.droppedOnDemandExceptions.get();
}
public int getRecordedOnDemandExceptions() {
return this.recordedOnDemandExceptions.get();
}
public void incrementDroppedOnDemandExceptions() {
this.droppedOnDemandExceptions.getAndIncrement();
}
public void incrementRecordedOnDemandExceptions() {
this.recordedOnDemandExceptions.getAndIncrement();
}
public void resetDroppedOnDemandExceptions() {
this.droppedOnDemandExceptions.set(0);
}
}

View File

@@ -0,0 +1,14 @@
package com.google.firebase.crashlytics.internal.common;
/* loaded from: classes3.dex */
public class ResponseParser {
public static final int ResponseActionDiscard = 0;
public static final int ResponseActionRetry = 1;
public static int parse(int i) {
if (i < 200 || i > 299) {
return ((i < 300 || i > 399) && i >= 400 && i <= 499) ? 0 : 1;
}
return 0;
}
}

View File

@@ -0,0 +1,289 @@
package com.google.firebase.crashlytics.internal.common;
import I2.k;
import android.app.ApplicationExitInfo;
import android.content.Context;
import com.google.android.gms.tasks.Task;
import com.google.android.gms.tasks.Tasks;
import com.google.firebase.crashlytics.internal.Logger;
import com.google.firebase.crashlytics.internal.metadata.LogFileManager;
import com.google.firebase.crashlytics.internal.metadata.UserMetadata;
import com.google.firebase.crashlytics.internal.model.CrashlyticsReport;
import com.google.firebase.crashlytics.internal.persistence.CrashlyticsReportPersistence;
import com.google.firebase.crashlytics.internal.persistence.FileStore;
import com.google.firebase.crashlytics.internal.send.DataTransportCrashlyticsReportSender;
import com.google.firebase.crashlytics.internal.settings.SettingsProvider;
import com.google.firebase.crashlytics.internal.stacktrace.StackTraceTrimmingStrategy;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.SortedSet;
import java.util.concurrent.Executor;
/* loaded from: classes3.dex */
public class SessionReportingCoordinator implements CrashlyticsLifecycleEvents {
private static final int DEFAULT_BUFFER_SIZE = 8192;
private static final int EVENT_THREAD_IMPORTANCE = 4;
private static final String EVENT_TYPE_CRASH = "crash";
private static final String EVENT_TYPE_LOGGED = "error";
private static final int MAX_CHAINED_EXCEPTION_DEPTH = 8;
private final CrashlyticsReportDataCapture dataCapture;
private final IdManager idManager;
private final LogFileManager logFileManager;
private final UserMetadata reportMetadata;
private final CrashlyticsReportPersistence reportPersistence;
private final DataTransportCrashlyticsReportSender reportsSender;
public SessionReportingCoordinator(CrashlyticsReportDataCapture crashlyticsReportDataCapture, CrashlyticsReportPersistence crashlyticsReportPersistence, DataTransportCrashlyticsReportSender dataTransportCrashlyticsReportSender, LogFileManager logFileManager, UserMetadata userMetadata, IdManager idManager) {
this.dataCapture = crashlyticsReportDataCapture;
this.reportPersistence = crashlyticsReportPersistence;
this.reportsSender = dataTransportCrashlyticsReportSender;
this.logFileManager = logFileManager;
this.reportMetadata = userMetadata;
this.idManager = idManager;
}
private CrashlyticsReport.Session.Event addLogsAndCustomKeysToEvent(CrashlyticsReport.Session.Event event) {
return addLogsAndCustomKeysToEvent(event, this.logFileManager, this.reportMetadata);
}
private CrashlyticsReport.Session.Event addMetaDataToEvent(CrashlyticsReport.Session.Event event) {
return addRolloutsStateToEvent(addLogsAndCustomKeysToEvent(event, this.logFileManager, this.reportMetadata), this.reportMetadata);
}
private CrashlyticsReport.Session.Event addRolloutsStateToEvent(CrashlyticsReport.Session.Event event, UserMetadata userMetadata) {
List<CrashlyticsReport.Session.Event.RolloutAssignment> rolloutsState = userMetadata.getRolloutsState();
if (rolloutsState.isEmpty()) {
return event;
}
CrashlyticsReport.Session.Event.Builder builder = event.toBuilder();
builder.setRollouts(CrashlyticsReport.Session.Event.RolloutsState.builder().setRolloutAssignments(rolloutsState).build());
return builder.build();
}
private static CrashlyticsReport.ApplicationExitInfo convertApplicationExitInfo(ApplicationExitInfo applicationExitInfo) {
String applicationExitInfo2;
int importance;
String processName;
int reason;
long timestamp;
int pid;
long pss;
long rss;
InputStream traceInputStream;
String str = null;
try {
traceInputStream = applicationExitInfo.getTraceInputStream();
if (traceInputStream != null) {
str = convertInputStreamToString(traceInputStream);
}
} catch (IOException e4) {
Logger logger = Logger.getLogger();
StringBuilder sb = new StringBuilder("Could not get input trace in application exit info: ");
applicationExitInfo2 = applicationExitInfo.toString();
sb.append(applicationExitInfo2);
sb.append(" Error: ");
sb.append(e4);
logger.w(sb.toString());
}
CrashlyticsReport.ApplicationExitInfo.Builder builder = CrashlyticsReport.ApplicationExitInfo.builder();
importance = applicationExitInfo.getImportance();
CrashlyticsReport.ApplicationExitInfo.Builder importance2 = builder.setImportance(importance);
processName = applicationExitInfo.getProcessName();
CrashlyticsReport.ApplicationExitInfo.Builder processName2 = importance2.setProcessName(processName);
reason = applicationExitInfo.getReason();
CrashlyticsReport.ApplicationExitInfo.Builder reasonCode = processName2.setReasonCode(reason);
timestamp = applicationExitInfo.getTimestamp();
CrashlyticsReport.ApplicationExitInfo.Builder timestamp2 = reasonCode.setTimestamp(timestamp);
pid = applicationExitInfo.getPid();
CrashlyticsReport.ApplicationExitInfo.Builder pid2 = timestamp2.setPid(pid);
pss = applicationExitInfo.getPss();
CrashlyticsReport.ApplicationExitInfo.Builder pss2 = pid2.setPss(pss);
rss = applicationExitInfo.getRss();
return pss2.setRss(rss).setTraceFile(str).build();
}
public static String convertInputStreamToString(InputStream inputStream) throws IOException {
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
byte[] bArr = new byte[8192];
while (true) {
int read = inputStream.read(bArr);
if (read == -1) {
return byteArrayOutputStream.toString(StandardCharsets.UTF_8.name());
}
byteArrayOutputStream.write(bArr, 0, read);
}
}
public static SessionReportingCoordinator create(Context context, IdManager idManager, FileStore fileStore, AppData appData, LogFileManager logFileManager, UserMetadata userMetadata, StackTraceTrimmingStrategy stackTraceTrimmingStrategy, SettingsProvider settingsProvider, OnDemandCounter onDemandCounter, CrashlyticsAppQualitySessionsSubscriber crashlyticsAppQualitySessionsSubscriber) {
return new SessionReportingCoordinator(new CrashlyticsReportDataCapture(context, idManager, appData, stackTraceTrimmingStrategy, settingsProvider), new CrashlyticsReportPersistence(fileStore, settingsProvider, crashlyticsAppQualitySessionsSubscriber), DataTransportCrashlyticsReportSender.create(context, settingsProvider, onDemandCounter), logFileManager, userMetadata, idManager);
}
private CrashlyticsReportWithSessionId ensureHasFid(CrashlyticsReportWithSessionId crashlyticsReportWithSessionId) {
if (crashlyticsReportWithSessionId.getReport().getFirebaseInstallationId() != null) {
return crashlyticsReportWithSessionId;
}
return CrashlyticsReportWithSessionId.create(crashlyticsReportWithSessionId.getReport().withFirebaseInstallationId(this.idManager.fetchTrueFid()), crashlyticsReportWithSessionId.getSessionId(), crashlyticsReportWithSessionId.getReportFile());
}
private ApplicationExitInfo findRelevantApplicationExitInfo(String str, List<ApplicationExitInfo> list) {
long timestamp;
int reason;
long startTimestampMillis = this.reportPersistence.getStartTimestampMillis(str);
Iterator<ApplicationExitInfo> it = list.iterator();
while (it.hasNext()) {
ApplicationExitInfo c4 = P.c.c(it.next());
timestamp = c4.getTimestamp();
if (timestamp < startTimestampMillis) {
return null;
}
reason = c4.getReason();
if (reason == 6) {
return c4;
}
}
return null;
}
private static List<CrashlyticsReport.CustomAttribute> getSortedCustomAttributes(Map<String, String> map) {
ArrayList arrayList = new ArrayList();
arrayList.ensureCapacity(map.size());
for (Map.Entry<String, String> entry : map.entrySet()) {
arrayList.add(CrashlyticsReport.CustomAttribute.builder().setKey(entry.getKey()).setValue(entry.getValue()).build());
}
Collections.sort(arrayList, new b(1));
return Collections.unmodifiableList(arrayList);
}
public static /* synthetic */ int lambda$getSortedCustomAttributes$0(CrashlyticsReport.CustomAttribute customAttribute, CrashlyticsReport.CustomAttribute customAttribute2) {
return customAttribute.getKey().compareTo(customAttribute2.getKey());
}
public boolean onReportSendComplete(Task<CrashlyticsReportWithSessionId> task) {
if (!task.isSuccessful()) {
Logger.getLogger().w("Crashlytics report could not be enqueued to DataTransport", task.getException());
return false;
}
CrashlyticsReportWithSessionId result = task.getResult();
Logger.getLogger().d("Crashlytics report successfully enqueued to DataTransport: " + result.getSessionId());
File reportFile = result.getReportFile();
if (reportFile.delete()) {
Logger.getLogger().d("Deleted report file: " + reportFile.getPath());
return true;
}
Logger.getLogger().w("Crashlytics could not delete report file: " + reportFile.getPath());
return true;
}
private void persistEvent(Throwable th, Thread thread, String str, String str2, long j4, boolean z3) {
this.reportPersistence.persistEvent(addMetaDataToEvent(this.dataCapture.captureEventData(th, thread, str2, j4, 4, 8, z3)), str, str2.equals("crash"));
}
public void finalizeSessionWithNativeEvent(String str, List<NativeSessionFile> list, CrashlyticsReport.ApplicationExitInfo applicationExitInfo) {
Logger.getLogger().d("SessionReportingCoordinator#finalizeSessionWithNativeEvent");
ArrayList arrayList = new ArrayList();
Iterator<NativeSessionFile> it = list.iterator();
while (it.hasNext()) {
CrashlyticsReport.FilesPayload.File asFilePayload = it.next().asFilePayload();
if (asFilePayload != null) {
arrayList.add(asFilePayload);
}
}
this.reportPersistence.finalizeSessionWithNativeEvent(str, CrashlyticsReport.FilesPayload.builder().setFiles(Collections.unmodifiableList(arrayList)).build(), applicationExitInfo);
}
public void finalizeSessions(long j4, String str) {
this.reportPersistence.finalizeReports(str, j4);
}
public boolean hasReportsToSend() {
return this.reportPersistence.hasFinalizedReports();
}
public SortedSet<String> listSortedOpenSessionIds() {
return this.reportPersistence.getOpenSessionIds();
}
@Override // com.google.firebase.crashlytics.internal.common.CrashlyticsLifecycleEvents
public void onBeginSession(String str, long j4) {
this.reportPersistence.persistReport(this.dataCapture.captureReportData(str, j4));
}
@Override // com.google.firebase.crashlytics.internal.common.CrashlyticsLifecycleEvents
public void onCustomKey(String str, String str2) {
this.reportMetadata.setCustomKey(str, str2);
}
@Override // com.google.firebase.crashlytics.internal.common.CrashlyticsLifecycleEvents
public void onLog(long j4, String str) {
this.logFileManager.writeToLog(j4, str);
}
@Override // com.google.firebase.crashlytics.internal.common.CrashlyticsLifecycleEvents
public void onUserId(String str) {
this.reportMetadata.setUserId(str);
}
public void persistFatalEvent(Throwable th, Thread thread, String str, long j4) {
Logger.getLogger().v("Persisting fatal event for session " + str);
persistEvent(th, thread, str, "crash", j4, true);
}
public void persistNonFatalEvent(Throwable th, Thread thread, String str, long j4) {
Logger.getLogger().v("Persisting non-fatal event for session " + str);
persistEvent(th, thread, str, "error", j4, false);
}
public void persistRelevantAppExitInfoEvent(String str, List<ApplicationExitInfo> list, LogFileManager logFileManager, UserMetadata userMetadata) {
ApplicationExitInfo findRelevantApplicationExitInfo = findRelevantApplicationExitInfo(str, list);
if (findRelevantApplicationExitInfo == null) {
Logger.getLogger().v("No relevant ApplicationExitInfo occurred during session: " + str);
return;
}
CrashlyticsReport.Session.Event captureAnrEventData = this.dataCapture.captureAnrEventData(convertApplicationExitInfo(findRelevantApplicationExitInfo));
Logger.getLogger().d("Persisting anr for session " + str);
this.reportPersistence.persistEvent(addRolloutsStateToEvent(addLogsAndCustomKeysToEvent(captureAnrEventData, logFileManager, userMetadata), userMetadata), str, true);
}
public void removeAllReports() {
this.reportPersistence.deleteAllReports();
}
public Task<Void> sendReports(Executor executor) {
return sendReports(executor, null);
}
private CrashlyticsReport.Session.Event addLogsAndCustomKeysToEvent(CrashlyticsReport.Session.Event event, LogFileManager logFileManager, UserMetadata userMetadata) {
CrashlyticsReport.Session.Event.Builder builder = event.toBuilder();
String logString = logFileManager.getLogString();
if (logString != null) {
builder.setLog(CrashlyticsReport.Session.Event.Log.builder().setContent(logString).build());
} else {
Logger.getLogger().v("No log data to include with this event.");
}
List<CrashlyticsReport.CustomAttribute> sortedCustomAttributes = getSortedCustomAttributes(userMetadata.getCustomKeys());
List<CrashlyticsReport.CustomAttribute> sortedCustomAttributes2 = getSortedCustomAttributes(userMetadata.getInternalKeys());
if (!sortedCustomAttributes.isEmpty() || !sortedCustomAttributes2.isEmpty()) {
builder.setApp(event.getApp().toBuilder().setCustomAttributes(sortedCustomAttributes).setInternalKeys(sortedCustomAttributes2).build());
}
return builder.build();
}
public Task<Void> sendReports(Executor executor, String str) {
List<CrashlyticsReportWithSessionId> loadFinalizedReports = this.reportPersistence.loadFinalizedReports();
ArrayList arrayList = new ArrayList();
for (CrashlyticsReportWithSessionId crashlyticsReportWithSessionId : loadFinalizedReports) {
if (str == null || str.equals(crashlyticsReportWithSessionId.getSessionId())) {
arrayList.add(this.reportsSender.enqueueReport(ensureHasFid(crashlyticsReportWithSessionId), str != null).continueWith(executor, new k(this, 17)));
}
}
return Tasks.whenAll(arrayList);
}
}

View File

@@ -0,0 +1,9 @@
package com.google.firebase.crashlytics.internal.common;
/* loaded from: classes3.dex */
public class SystemCurrentTimeProvider implements CurrentTimeProvider {
@Override // com.google.firebase.crashlytics.internal.common.CurrentTimeProvider
public long getCurrentTimeMillis() {
return System.currentTimeMillis();
}
}

View File

@@ -0,0 +1,140 @@
package com.google.firebase.crashlytics.internal.common;
import I2.k;
import android.annotation.SuppressLint;
import android.os.Looper;
import androidx.fragment.app.RunnableC0143e;
import com.google.android.gms.tasks.Task;
import com.google.android.gms.tasks.TaskCompletionSource;
import java.util.concurrent.Callable;
import java.util.concurrent.CancellationException;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.Executor;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.TimeoutException;
/* loaded from: classes3.dex */
public final class Utils {
private static final ExecutorService TASK_CONTINUATION_EXECUTOR_SERVICE = ExecutorUtils.buildSingleThreadExecutorService("awaitEvenIfOnMainThread task continuation executor");
private static final int TIMEOUT_SEC = 4;
private Utils() {
}
public static <T> T awaitEvenIfOnMainThread(Task<T> task) throws InterruptedException, TimeoutException {
CountDownLatch countDownLatch = new CountDownLatch(1);
task.continueWith(TASK_CONTINUATION_EXECUTOR_SERVICE, new k(countDownLatch, 18));
if (Looper.getMainLooper() == Looper.myLooper()) {
countDownLatch.await(3L, TimeUnit.SECONDS);
} else {
countDownLatch.await(4L, TimeUnit.SECONDS);
}
if (task.isSuccessful()) {
return task.getResult();
}
if (task.isCanceled()) {
throw new CancellationException("Task is already canceled");
}
if (task.isComplete()) {
throw new IllegalStateException(task.getException());
}
throw new TimeoutException();
}
public static boolean awaitUninterruptibly(CountDownLatch countDownLatch, long j4, TimeUnit timeUnit) {
boolean z3 = false;
try {
long nanos = timeUnit.toNanos(j4);
while (true) {
try {
break;
} catch (InterruptedException unused) {
z3 = true;
nanos = (System.nanoTime() + nanos) - System.nanoTime();
}
}
return countDownLatch.await(nanos, TimeUnit.NANOSECONDS);
} finally {
if (z3) {
Thread.currentThread().interrupt();
}
}
}
public static /* synthetic */ Object b(CountDownLatch countDownLatch, Task task) {
return lambda$awaitEvenIfOnMainThread$4(countDownLatch, task);
}
public static <T> Task<T> callTask(Executor executor, Callable<Task<T>> callable) {
TaskCompletionSource taskCompletionSource = new TaskCompletionSource();
executor.execute(new RunnableC0143e(callable, executor, taskCompletionSource, 3));
return taskCompletionSource.getTask();
}
public static /* synthetic */ Object lambda$awaitEvenIfOnMainThread$4(CountDownLatch countDownLatch, Task task) throws Exception {
countDownLatch.countDown();
return null;
}
public static /* synthetic */ Object lambda$callTask$2(TaskCompletionSource taskCompletionSource, Task task) throws Exception {
if (task.isSuccessful()) {
taskCompletionSource.setResult(task.getResult());
return null;
}
if (task.getException() == null) {
return null;
}
taskCompletionSource.setException(task.getException());
return null;
}
public static /* synthetic */ void lambda$callTask$3(Callable callable, Executor executor, TaskCompletionSource taskCompletionSource) {
try {
((Task) callable.call()).continueWith(executor, new d(1, taskCompletionSource));
} catch (Exception e4) {
taskCompletionSource.setException(e4);
}
}
public static /* synthetic */ Void lambda$race$0(TaskCompletionSource taskCompletionSource, Task task) throws Exception {
if (task.isSuccessful()) {
taskCompletionSource.trySetResult(task.getResult());
return null;
}
if (task.getException() == null) {
return null;
}
taskCompletionSource.trySetException(task.getException());
return null;
}
public static /* synthetic */ Void lambda$race$1(TaskCompletionSource taskCompletionSource, Task task) throws Exception {
if (task.isSuccessful()) {
taskCompletionSource.trySetResult(task.getResult());
return null;
}
if (task.getException() == null) {
return null;
}
taskCompletionSource.trySetException(task.getException());
return null;
}
@SuppressLint({"TaskMainThread"})
public static <T> Task<T> race(Task<T> task, Task<T> task2) {
TaskCompletionSource taskCompletionSource = new TaskCompletionSource();
d dVar = new d(0, taskCompletionSource);
task.continueWith(dVar);
task2.continueWith(dVar);
return taskCompletionSource.getTask();
}
public static <T> Task<T> race(Executor executor, Task<T> task, Task<T> task2) {
TaskCompletionSource taskCompletionSource = new TaskCompletionSource();
d dVar = new d(2, taskCompletionSource);
task.continueWith(executor, dVar);
task2.continueWith(executor, dVar);
return taskCompletionSource.getTask();
}
}

View File

@@ -0,0 +1,25 @@
package com.google.firebase.crashlytics.internal.common;
import java.io.File;
import java.io.FilenameFilter;
/* loaded from: classes3.dex */
public final /* synthetic */ class a implements FilenameFilter {
/* renamed from: a, reason: collision with root package name */
public final /* synthetic */ int f5967a;
public /* synthetic */ a(int i) {
this.f5967a = i;
}
@Override // java.io.FilenameFilter
public final boolean accept(File file, String str) {
switch (this.f5967a) {
case 0:
return CrashlyticsAppQualitySessionsStore.a(file, str);
default:
return CrashlyticsController.a(file, str);
}
}
}

View File

@@ -0,0 +1,28 @@
package com.google.firebase.crashlytics.internal.common;
import com.google.firebase.crashlytics.internal.model.CrashlyticsReport;
import java.io.File;
import java.util.Comparator;
/* loaded from: classes3.dex */
public final /* synthetic */ class b implements Comparator {
/* renamed from: a, reason: collision with root package name */
public final /* synthetic */ int f5968a;
public /* synthetic */ b(int i) {
this.f5968a = i;
}
@Override // java.util.Comparator
public final int compare(Object obj, Object obj2) {
int lambda$static$1;
switch (this.f5968a) {
case 0:
lambda$static$1 = CrashlyticsAppQualitySessionsStore.lambda$static$1((File) obj, (File) obj2);
return lambda$static$1;
default:
return SessionReportingCoordinator.a((CrashlyticsReport.CustomAttribute) obj, (CrashlyticsReport.CustomAttribute) obj2);
}
}
}

View File

@@ -0,0 +1,40 @@
package com.google.firebase.crashlytics.internal.common;
import com.google.android.gms.tasks.Continuation;
import com.google.android.gms.tasks.Task;
import com.google.android.gms.tasks.TaskCompletionSource;
/* loaded from: classes3.dex */
public final /* synthetic */ class d implements Continuation {
/* renamed from: a, reason: collision with root package name */
public final /* synthetic */ int f5970a;
/* renamed from: b, reason: collision with root package name */
public final /* synthetic */ TaskCompletionSource f5971b;
public /* synthetic */ d(int i, TaskCompletionSource taskCompletionSource) {
this.f5970a = i;
this.f5971b = taskCompletionSource;
}
@Override // com.google.android.gms.tasks.Continuation
public final Object then(Task task) {
Void lambda$race$0;
Object lambda$callTask$2;
Void lambda$race$1;
int i = this.f5970a;
TaskCompletionSource taskCompletionSource = this.f5971b;
switch (i) {
case 0:
lambda$race$0 = Utils.lambda$race$0(taskCompletionSource, task);
return lambda$race$0;
case 1:
lambda$callTask$2 = Utils.lambda$callTask$2(taskCompletionSource, task);
return lambda$callTask$2;
default:
lambda$race$1 = Utils.lambda$race$1(taskCompletionSource, task);
return lambda$race$1;
}
}
}

View File

@@ -0,0 +1,48 @@
package com.google.firebase.crashlytics.internal.metadata;
import com.google.firebase.encoders.FieldDescriptor;
import com.google.firebase.encoders.ObjectEncoder;
import com.google.firebase.encoders.ObjectEncoderContext;
import com.google.firebase.encoders.config.Configurator;
import com.google.firebase.encoders.config.EncoderConfig;
import com.google.firebase.remoteconfig.RemoteConfigConstants;
import com.google.firebase.remoteconfig.internal.ConfigContainer;
import java.io.IOException;
/* loaded from: classes3.dex */
public final class AutoRolloutAssignmentEncoder implements Configurator {
public static final int CODEGEN_VERSION = 2;
public static final Configurator CONFIG = new AutoRolloutAssignmentEncoder();
/* loaded from: classes3.dex */
public static final class RolloutAssignmentEncoder implements ObjectEncoder<RolloutAssignment> {
static final RolloutAssignmentEncoder INSTANCE = new RolloutAssignmentEncoder();
private static final FieldDescriptor ROLLOUTID_DESCRIPTOR = FieldDescriptor.of(ConfigContainer.ROLLOUT_METADATA_ID);
private static final FieldDescriptor PARAMETERKEY_DESCRIPTOR = FieldDescriptor.of("parameterKey");
private static final FieldDescriptor PARAMETERVALUE_DESCRIPTOR = FieldDescriptor.of("parameterValue");
private static final FieldDescriptor VARIANTID_DESCRIPTOR = FieldDescriptor.of("variantId");
private static final FieldDescriptor TEMPLATEVERSION_DESCRIPTOR = FieldDescriptor.of(RemoteConfigConstants.ResponseFieldKey.TEMPLATE_VERSION_NUMBER);
private RolloutAssignmentEncoder() {
}
@Override // com.google.firebase.encoders.Encoder
public void encode(RolloutAssignment rolloutAssignment, ObjectEncoderContext objectEncoderContext) throws IOException {
objectEncoderContext.add(ROLLOUTID_DESCRIPTOR, rolloutAssignment.getRolloutId());
objectEncoderContext.add(PARAMETERKEY_DESCRIPTOR, rolloutAssignment.getParameterKey());
objectEncoderContext.add(PARAMETERVALUE_DESCRIPTOR, rolloutAssignment.getParameterValue());
objectEncoderContext.add(VARIANTID_DESCRIPTOR, rolloutAssignment.getVariantId());
objectEncoderContext.add(TEMPLATEVERSION_DESCRIPTOR, rolloutAssignment.getTemplateVersion());
}
}
private AutoRolloutAssignmentEncoder() {
}
@Override // com.google.firebase.encoders.config.Configurator
public void configure(EncoderConfig<?> encoderConfig) {
RolloutAssignmentEncoder rolloutAssignmentEncoder = RolloutAssignmentEncoder.INSTANCE;
encoderConfig.registerEncoder(RolloutAssignment.class, rolloutAssignmentEncoder);
encoderConfig.registerEncoder(AutoValue_RolloutAssignment.class, rolloutAssignmentEncoder);
}
}

View File

@@ -0,0 +1,89 @@
package com.google.firebase.crashlytics.internal.metadata;
import C.w;
/* loaded from: classes3.dex */
final class AutoValue_RolloutAssignment extends RolloutAssignment {
private final String parameterKey;
private final String parameterValue;
private final String rolloutId;
private final long templateVersion;
private final String variantId;
public AutoValue_RolloutAssignment(String str, String str2, String str3, String str4, long j4) {
if (str == null) {
throw new NullPointerException("Null rolloutId");
}
this.rolloutId = str;
if (str2 == null) {
throw new NullPointerException("Null parameterKey");
}
this.parameterKey = str2;
if (str3 == null) {
throw new NullPointerException("Null parameterValue");
}
this.parameterValue = str3;
if (str4 == null) {
throw new NullPointerException("Null variantId");
}
this.variantId = str4;
this.templateVersion = j4;
}
public boolean equals(Object obj) {
if (obj == this) {
return true;
}
if (obj instanceof RolloutAssignment) {
RolloutAssignment rolloutAssignment = (RolloutAssignment) obj;
if (this.rolloutId.equals(rolloutAssignment.getRolloutId()) && this.parameterKey.equals(rolloutAssignment.getParameterKey()) && this.parameterValue.equals(rolloutAssignment.getParameterValue()) && this.variantId.equals(rolloutAssignment.getVariantId()) && this.templateVersion == rolloutAssignment.getTemplateVersion()) {
return true;
}
}
return false;
}
@Override // com.google.firebase.crashlytics.internal.metadata.RolloutAssignment
public String getParameterKey() {
return this.parameterKey;
}
@Override // com.google.firebase.crashlytics.internal.metadata.RolloutAssignment
public String getParameterValue() {
return this.parameterValue;
}
@Override // com.google.firebase.crashlytics.internal.metadata.RolloutAssignment
public String getRolloutId() {
return this.rolloutId;
}
@Override // com.google.firebase.crashlytics.internal.metadata.RolloutAssignment
public long getTemplateVersion() {
return this.templateVersion;
}
@Override // com.google.firebase.crashlytics.internal.metadata.RolloutAssignment
public String getVariantId() {
return this.variantId;
}
public int hashCode() {
int hashCode = (((((((this.rolloutId.hashCode() ^ 1000003) * 1000003) ^ this.parameterKey.hashCode()) * 1000003) ^ this.parameterValue.hashCode()) * 1000003) ^ this.variantId.hashCode()) * 1000003;
long j4 = this.templateVersion;
return ((int) (j4 ^ (j4 >>> 32))) ^ hashCode;
}
public String toString() {
StringBuilder sb = new StringBuilder("RolloutAssignment{rolloutId=");
sb.append(this.rolloutId);
sb.append(", parameterKey=");
sb.append(this.parameterKey);
sb.append(", parameterValue=");
sb.append(this.parameterValue);
sb.append(", variantId=");
sb.append(this.variantId);
sb.append(", templateVersion=");
return w.q(sb, this.templateVersion, "}");
}
}

View File

@@ -0,0 +1,15 @@
package com.google.firebase.crashlytics.internal.metadata;
/* JADX INFO: Access modifiers changed from: package-private */
/* loaded from: classes3.dex */
public interface FileLogStore {
void closeLogFile();
void deleteLogFile();
byte[] getLogAsBytes();
String getLogAsString();
void writeToLog(long j4, String str);
}

View File

@@ -0,0 +1,76 @@
package com.google.firebase.crashlytics.internal.metadata;
import com.google.firebase.crashlytics.internal.Logger;
import com.google.firebase.crashlytics.internal.common.CommonUtils;
import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
/* JADX INFO: Access modifiers changed from: package-private */
/* loaded from: classes3.dex */
public class KeysMap {
private final Map<String, String> keys = new HashMap();
private final int maxEntries;
private final int maxEntryLength;
public KeysMap(int i, int i4) {
this.maxEntries = i;
this.maxEntryLength = i4;
}
private String sanitizeKey(String str) {
if (str != null) {
return sanitizeString(str, this.maxEntryLength);
}
throw new IllegalArgumentException("Custom attribute key must not be null.");
}
public static String sanitizeString(String str, int i) {
if (str == null) {
return str;
}
String trim = str.trim();
return trim.length() > i ? trim.substring(0, i) : trim;
}
public synchronized Map<String, String> getKeys() {
return Collections.unmodifiableMap(new HashMap(this.keys));
}
public synchronized boolean setKey(String str, String str2) {
String sanitizeKey = sanitizeKey(str);
if (this.keys.size() >= this.maxEntries && !this.keys.containsKey(sanitizeKey)) {
Logger.getLogger().w("Ignored entry \"" + str + "\" when adding custom keys. Maximum allowable: " + this.maxEntries);
return false;
}
String sanitizeString = sanitizeString(str2, this.maxEntryLength);
if (CommonUtils.nullSafeEquals(this.keys.get(sanitizeKey), sanitizeString)) {
return false;
}
Map<String, String> map = this.keys;
if (str2 == null) {
sanitizeString = "";
}
map.put(sanitizeKey, sanitizeString);
return true;
}
public synchronized void setKeys(Map<String, String> map) {
try {
int i = 0;
for (Map.Entry<String, String> entry : map.entrySet()) {
String sanitizeKey = sanitizeKey(entry.getKey());
if (this.keys.size() >= this.maxEntries && !this.keys.containsKey(sanitizeKey)) {
i++;
}
String value = entry.getValue();
this.keys.put(sanitizeKey, value == null ? "" : sanitizeString(value, this.maxEntryLength));
}
if (i > 0) {
Logger.getLogger().w("Ignored " + i + " entries when adding custom keys. Maximum allowable: " + this.maxEntries);
}
} catch (Throwable th) {
throw th;
}
}
}

View File

@@ -0,0 +1,84 @@
package com.google.firebase.crashlytics.internal.metadata;
import com.google.firebase.crashlytics.internal.persistence.FileStore;
import java.io.File;
/* loaded from: classes3.dex */
public class LogFileManager {
private static final String LOGFILE_NAME = "userlog";
static final int MAX_LOG_SIZE = 65536;
private static final NoopLogStore NOOP_LOG_STORE = new NoopLogStore();
private FileLogStore currentLog;
private final FileStore fileStore;
/* loaded from: classes3.dex */
public static final class NoopLogStore implements FileLogStore {
private NoopLogStore() {
}
@Override // com.google.firebase.crashlytics.internal.metadata.FileLogStore
public void closeLogFile() {
}
@Override // com.google.firebase.crashlytics.internal.metadata.FileLogStore
public void deleteLogFile() {
}
@Override // com.google.firebase.crashlytics.internal.metadata.FileLogStore
public byte[] getLogAsBytes() {
return null;
}
@Override // com.google.firebase.crashlytics.internal.metadata.FileLogStore
public String getLogAsString() {
return null;
}
@Override // com.google.firebase.crashlytics.internal.metadata.FileLogStore
public void writeToLog(long j4, String str) {
}
}
public LogFileManager(FileStore fileStore) {
this.fileStore = fileStore;
this.currentLog = NOOP_LOG_STORE;
}
private File getWorkingFileForSession(String str) {
return this.fileStore.getSessionFile(str, LOGFILE_NAME);
}
public void clearLog() {
this.currentLog.deleteLogFile();
}
public byte[] getBytesForLog() {
return this.currentLog.getLogAsBytes();
}
public String getLogString() {
return this.currentLog.getLogAsString();
}
public final void setCurrentSession(String str) {
this.currentLog.closeLogFile();
this.currentLog = NOOP_LOG_STORE;
if (str == null) {
return;
}
setLogFile(getWorkingFileForSession(str), MAX_LOG_SIZE);
}
public void setLogFile(File file, int i) {
this.currentLog = new QueueFileLogStore(file, i);
}
public void writeToLog(long j4, String str) {
this.currentLog.writeToLog(j4, str);
}
public LogFileManager(FileStore fileStore, String str) {
this(fileStore);
setCurrentSession(str);
}
}

View File

@@ -0,0 +1,356 @@
package com.google.firebase.crashlytics.internal.metadata;
import com.google.firebase.crashlytics.internal.Logger;
import com.google.firebase.crashlytics.internal.common.CommonUtils;
import com.google.firebase.crashlytics.internal.persistence.FileStore;
import java.io.BufferedWriter;
import java.io.Closeable;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.OutputStreamWriter;
import java.nio.charset.Charset;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
/* JADX INFO: Access modifiers changed from: package-private */
/* loaded from: classes3.dex */
public class MetaDataStore {
private static final String KEY_USER_ID = "userId";
private static final Charset UTF_8 = Charset.forName("UTF-8");
private final FileStore fileStore;
public MetaDataStore(FileStore fileStore) {
this.fileStore = fileStore;
}
private static Map<String, String> jsonToKeysData(String str) throws JSONException {
JSONObject jSONObject = new JSONObject(str);
HashMap hashMap = new HashMap();
Iterator<String> keys = jSONObject.keys();
while (keys.hasNext()) {
String next = keys.next();
hashMap.put(next, valueOrNull(jSONObject, next));
}
return hashMap;
}
private static List<RolloutAssignment> jsonToRolloutsState(String str) throws JSONException {
JSONArray jSONArray = new JSONObject(str).getJSONArray("rolloutsState");
ArrayList arrayList = new ArrayList();
for (int i = 0; i < jSONArray.length(); i++) {
String string = jSONArray.getString(i);
try {
arrayList.add(RolloutAssignment.create(string));
} catch (Exception e4) {
Logger.getLogger().w("Failed de-serializing rollouts state. " + string, e4);
}
}
return arrayList;
}
private String jsonToUserId(String str) throws JSONException {
return valueOrNull(new JSONObject(str), KEY_USER_ID);
}
private static String keysDataToJson(Map<String, String> map) {
return new JSONObject(map).toString();
}
private static String rolloutsStateToJson(List<RolloutAssignment> list) {
HashMap hashMap = new HashMap();
JSONArray jSONArray = new JSONArray();
for (int i = 0; i < list.size(); i++) {
try {
jSONArray.put(new JSONObject(RolloutAssignment.ROLLOUT_ASSIGNMENT_JSON_ENCODER.encode(list.get(i))));
} catch (JSONException e4) {
Logger.getLogger().w("Exception parsing rollout assignment!", e4);
}
}
hashMap.put("rolloutsState", jSONArray);
return new JSONObject(hashMap).toString();
}
private static void safeDeleteCorruptFile(File file) {
if (file.exists() && file.delete()) {
Logger.getLogger().i("Deleted corrupt file: " + file.getAbsolutePath());
}
}
private static String userIdToJson(String str) throws JSONException {
return new JSONObject(str) { // from class: com.google.firebase.crashlytics.internal.metadata.MetaDataStore.1
final /* synthetic */ String val$userId;
{
this.val$userId = str;
put(MetaDataStore.KEY_USER_ID, str);
}
}.toString();
}
private static String valueOrNull(JSONObject jSONObject, String str) {
if (jSONObject.isNull(str)) {
return null;
}
return jSONObject.optString(str, null);
}
public File getInternalKeysFileForSession(String str) {
return this.fileStore.getSessionFile(str, UserMetadata.INTERNAL_KEYDATA_FILENAME);
}
public File getKeysFileForSession(String str) {
return this.fileStore.getSessionFile(str, UserMetadata.KEYDATA_FILENAME);
}
public File getRolloutsStateForSession(String str) {
return this.fileStore.getSessionFile(str, UserMetadata.ROLLOUTS_STATE_FILENAME);
}
public File getUserDataFileForSession(String str) {
return this.fileStore.getSessionFile(str, UserMetadata.USERDATA_FILENAME);
}
public Map<String, String> readKeyData(String str) {
return readKeyData(str, false);
}
public List<RolloutAssignment> readRolloutsState(String str) {
FileInputStream fileInputStream;
File rolloutsStateForSession = getRolloutsStateForSession(str);
if (!rolloutsStateForSession.exists() || rolloutsStateForSession.length() == 0) {
safeDeleteCorruptFile(rolloutsStateForSession);
return Collections.EMPTY_LIST;
}
FileInputStream fileInputStream2 = null;
try {
try {
fileInputStream = new FileInputStream(rolloutsStateForSession);
} catch (Exception e4) {
e = e4;
}
} catch (Throwable th) {
th = th;
}
try {
List<RolloutAssignment> jsonToRolloutsState = jsonToRolloutsState(CommonUtils.streamToString(fileInputStream));
Logger.getLogger().d("Loaded rollouts state:\n" + jsonToRolloutsState + "\nfor session " + str);
CommonUtils.closeOrLog(fileInputStream, "Failed to close rollouts state file.");
return jsonToRolloutsState;
} catch (Exception e5) {
e = e5;
fileInputStream2 = fileInputStream;
Logger.getLogger().w("Error deserializing rollouts state.", e);
safeDeleteCorruptFile(rolloutsStateForSession);
CommonUtils.closeOrLog(fileInputStream2, "Failed to close rollouts state file.");
return Collections.EMPTY_LIST;
} catch (Throwable th2) {
th = th2;
fileInputStream2 = fileInputStream;
CommonUtils.closeOrLog(fileInputStream2, "Failed to close rollouts state file.");
throw th;
}
}
/* JADX WARN: Type inference failed for: r3v1, types: [int] */
public String readUserId(String str) {
FileInputStream fileInputStream;
File userDataFileForSession = getUserDataFileForSession(str);
Closeable closeable = null;
if (userDataFileForSession.exists()) {
?? r32 = (userDataFileForSession.length() > 0L ? 1 : (userDataFileForSession.length() == 0L ? 0 : -1));
try {
if (r32 != 0) {
try {
fileInputStream = new FileInputStream(userDataFileForSession);
try {
String jsonToUserId = jsonToUserId(CommonUtils.streamToString(fileInputStream));
Logger.getLogger().d("Loaded userId " + jsonToUserId + " for session " + str);
CommonUtils.closeOrLog(fileInputStream, "Failed to close user metadata file.");
return jsonToUserId;
} catch (Exception e4) {
e = e4;
Logger.getLogger().w("Error deserializing user metadata.", e);
safeDeleteCorruptFile(userDataFileForSession);
CommonUtils.closeOrLog(fileInputStream, "Failed to close user metadata file.");
return null;
}
} catch (Exception e5) {
e = e5;
fileInputStream = null;
} catch (Throwable th) {
th = th;
CommonUtils.closeOrLog(closeable, "Failed to close user metadata file.");
throw th;
}
}
} catch (Throwable th2) {
th = th2;
closeable = r32;
}
}
Logger.getLogger().d("No userId set for session " + str);
safeDeleteCorruptFile(userDataFileForSession);
return null;
}
public void writeKeyData(String str, Map<String, String> map) {
writeKeyData(str, map, false);
}
/* JADX WARN: Not initialized variable reg: 1, insn: 0x0031: MOVE (r6 I:??[OBJECT, ARRAY]) = (r1 I:??[OBJECT, ARRAY]), block:B:20:0x0031 */
public void writeRolloutState(String str, List<RolloutAssignment> list) {
BufferedWriter bufferedWriter;
Exception e4;
Closeable closeable;
File rolloutsStateForSession = getRolloutsStateForSession(str);
if (list.isEmpty()) {
safeDeleteCorruptFile(rolloutsStateForSession);
return;
}
Closeable closeable2 = null;
try {
try {
String rolloutsStateToJson = rolloutsStateToJson(list);
bufferedWriter = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(rolloutsStateForSession), UTF_8));
try {
bufferedWriter.write(rolloutsStateToJson);
bufferedWriter.flush();
CommonUtils.closeOrLog(bufferedWriter, "Failed to close rollouts state file.");
} catch (Exception e5) {
e4 = e5;
Logger.getLogger().w("Error serializing rollouts state.", e4);
safeDeleteCorruptFile(rolloutsStateForSession);
CommonUtils.closeOrLog(bufferedWriter, "Failed to close rollouts state file.");
}
} catch (Throwable th) {
th = th;
closeable2 = closeable;
CommonUtils.closeOrLog(closeable2, "Failed to close rollouts state file.");
throw th;
}
} catch (Exception e6) {
bufferedWriter = null;
e4 = e6;
} catch (Throwable th2) {
th = th2;
CommonUtils.closeOrLog(closeable2, "Failed to close rollouts state file.");
throw th;
}
}
public void writeUserData(String str, String str2) {
String userIdToJson;
BufferedWriter bufferedWriter;
File userDataFileForSession = getUserDataFileForSession(str);
BufferedWriter bufferedWriter2 = null;
try {
try {
userIdToJson = userIdToJson(str2);
bufferedWriter = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(userDataFileForSession), UTF_8));
} catch (Exception e4) {
e = e4;
}
} catch (Throwable th) {
th = th;
}
try {
bufferedWriter.write(userIdToJson);
bufferedWriter.flush();
CommonUtils.closeOrLog(bufferedWriter, "Failed to close user metadata file.");
} catch (Exception e5) {
e = e5;
bufferedWriter2 = bufferedWriter;
Logger.getLogger().w("Error serializing user metadata.", e);
CommonUtils.closeOrLog(bufferedWriter2, "Failed to close user metadata file.");
} catch (Throwable th2) {
th = th2;
bufferedWriter2 = bufferedWriter;
CommonUtils.closeOrLog(bufferedWriter2, "Failed to close user metadata file.");
throw th;
}
}
/* JADX WARN: Multi-variable type inference failed */
public Map<String, String> readKeyData(String str, boolean z3) {
FileInputStream fileInputStream;
Exception e4;
File internalKeysFileForSession = z3 != 0 ? getInternalKeysFileForSession(str) : getKeysFileForSession(str);
if (internalKeysFileForSession.exists() && internalKeysFileForSession.length() != 0) {
Closeable closeable = null;
try {
try {
fileInputStream = new FileInputStream(internalKeysFileForSession);
try {
Map<String, String> jsonToKeysData = jsonToKeysData(CommonUtils.streamToString(fileInputStream));
CommonUtils.closeOrLog(fileInputStream, "Failed to close user metadata file.");
return jsonToKeysData;
} catch (Exception e5) {
e4 = e5;
Logger.getLogger().w("Error deserializing user metadata.", e4);
safeDeleteCorruptFile(internalKeysFileForSession);
CommonUtils.closeOrLog(fileInputStream, "Failed to close user metadata file.");
return Collections.EMPTY_MAP;
}
} catch (Throwable th) {
th = th;
closeable = z3;
CommonUtils.closeOrLog(closeable, "Failed to close user metadata file.");
throw th;
}
} catch (Exception e6) {
fileInputStream = null;
e4 = e6;
} catch (Throwable th2) {
th = th2;
CommonUtils.closeOrLog(closeable, "Failed to close user metadata file.");
throw th;
}
} else {
safeDeleteCorruptFile(internalKeysFileForSession);
return Collections.EMPTY_MAP;
}
}
public void writeKeyData(String str, Map<String, String> map, boolean z3) {
BufferedWriter bufferedWriter;
Exception e4;
File internalKeysFileForSession = z3 ? getInternalKeysFileForSession(str) : getKeysFileForSession(str);
BufferedWriter bufferedWriter2 = null;
try {
String keysDataToJson = keysDataToJson(map);
bufferedWriter = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(internalKeysFileForSession), UTF_8));
try {
try {
bufferedWriter.write(keysDataToJson);
bufferedWriter.flush();
CommonUtils.closeOrLog(bufferedWriter, "Failed to close key/value metadata file.");
} catch (Exception e5) {
e4 = e5;
Logger.getLogger().w("Error serializing key/value metadata.", e4);
safeDeleteCorruptFile(internalKeysFileForSession);
CommonUtils.closeOrLog(bufferedWriter, "Failed to close key/value metadata file.");
}
} catch (Throwable th) {
th = th;
bufferedWriter2 = bufferedWriter;
CommonUtils.closeOrLog(bufferedWriter2, "Failed to close key/value metadata file.");
throw th;
}
} catch (Exception e6) {
bufferedWriter = null;
e4 = e6;
} catch (Throwable th2) {
th = th2;
CommonUtils.closeOrLog(bufferedWriter2, "Failed to close key/value metadata file.");
throw th;
}
}
}

View File

@@ -0,0 +1,430 @@
package com.google.firebase.crashlytics.internal.metadata;
import java.io.Closeable;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import java.io.RandomAccessFile;
import java.nio.channels.FileChannel;
import java.util.NoSuchElementException;
import java.util.logging.Level;
import java.util.logging.Logger;
import kotlin.UByte;
/* JADX INFO: Access modifiers changed from: package-private */
/* loaded from: classes3.dex */
public class QueueFile implements Closeable {
static final int HEADER_LENGTH = 16;
private static final int INITIAL_LENGTH = 4096;
private static final Logger LOGGER = Logger.getLogger(QueueFile.class.getName());
private final byte[] buffer;
private int elementCount;
int fileLength;
private Element first;
private Element last;
private final RandomAccessFile raf;
/* loaded from: classes3.dex */
public static class Element {
static final int HEADER_LENGTH = 4;
static final Element NULL = new Element(0, 0);
final int length;
final int position;
public Element(int i, int i4) {
this.position = i;
this.length = i4;
}
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append(getClass().getSimpleName());
sb.append("[position = ");
sb.append(this.position);
sb.append(", length = ");
return com.google.android.gms.measurement.internal.a.m(sb, this.length, "]");
}
}
/* loaded from: classes3.dex */
public final class ElementInputStream extends InputStream {
private int position;
private int remaining;
@Override // java.io.InputStream
public int read(byte[] bArr, int i, int i4) throws IOException {
QueueFile.nonNull(bArr, "buffer");
if ((i | i4) >= 0 && i4 <= bArr.length - i) {
int i5 = this.remaining;
if (i5 <= 0) {
return -1;
}
if (i4 > i5) {
i4 = i5;
}
QueueFile.this.ringRead(this.position, bArr, i, i4);
this.position = QueueFile.this.wrapPosition(this.position + i4);
this.remaining -= i4;
return i4;
}
throw new ArrayIndexOutOfBoundsException();
}
private ElementInputStream(Element element) {
this.position = QueueFile.this.wrapPosition(element.position + 4);
this.remaining = element.length;
}
@Override // java.io.InputStream
public int read() throws IOException {
if (this.remaining == 0) {
return -1;
}
QueueFile.this.raf.seek(this.position);
int read = QueueFile.this.raf.read();
this.position = QueueFile.this.wrapPosition(this.position + 1);
this.remaining--;
return read;
}
}
/* loaded from: classes3.dex */
public interface ElementReader {
void read(InputStream inputStream, int i) throws IOException;
}
public QueueFile(File file) throws IOException {
this.buffer = new byte[16];
if (!file.exists()) {
initialize(file);
}
this.raf = open(file);
readHeader();
}
private void expandIfNecessary(int i) throws IOException {
int i4 = i + 4;
int remainingBytes = remainingBytes();
if (remainingBytes >= i4) {
return;
}
int i5 = this.fileLength;
do {
remainingBytes += i5;
i5 <<= 1;
} while (remainingBytes < i4);
setLength(i5);
Element element = this.last;
int wrapPosition = wrapPosition(element.position + 4 + element.length);
if (wrapPosition < this.first.position) {
FileChannel channel = this.raf.getChannel();
channel.position(this.fileLength);
long j4 = wrapPosition - 4;
if (channel.transferTo(16L, j4, channel) != j4) {
throw new AssertionError("Copied insufficient number of bytes!");
}
}
int i6 = this.last.position;
int i7 = this.first.position;
if (i6 < i7) {
int i8 = (this.fileLength + i6) - 16;
writeHeader(i5, this.elementCount, i7, i8);
this.last = new Element(i8, this.last.length);
} else {
writeHeader(i5, this.elementCount, i7, i6);
}
this.fileLength = i5;
}
private static void initialize(File file) throws IOException {
File file2 = new File(file.getPath() + ".tmp");
RandomAccessFile open = open(file2);
try {
open.setLength(4096L);
open.seek(0L);
byte[] bArr = new byte[16];
writeInts(bArr, 4096, 0, 0, 0);
open.write(bArr);
open.close();
if (!file2.renameTo(file)) {
throw new IOException("Rename failed!");
}
} catch (Throwable th) {
open.close();
throw th;
}
}
/* JADX INFO: Access modifiers changed from: private */
public static <T> T nonNull(T t2, String str) {
if (t2 != null) {
return t2;
}
throw new NullPointerException(str);
}
private static RandomAccessFile open(File file) throws FileNotFoundException {
return new RandomAccessFile(file, "rwd");
}
private Element readElement(int i) throws IOException {
if (i == 0) {
return Element.NULL;
}
this.raf.seek(i);
return new Element(i, this.raf.readInt());
}
private void readHeader() throws IOException {
this.raf.seek(0L);
this.raf.readFully(this.buffer);
int readInt = readInt(this.buffer, 0);
this.fileLength = readInt;
if (readInt > this.raf.length()) {
throw new IOException("File is truncated. Expected length: " + this.fileLength + ", Actual length: " + this.raf.length());
}
this.elementCount = readInt(this.buffer, 4);
int readInt2 = readInt(this.buffer, 8);
int readInt3 = readInt(this.buffer, 12);
this.first = readElement(readInt2);
this.last = readElement(readInt3);
}
private static int readInt(byte[] bArr, int i) {
return ((bArr[i] & UByte.MAX_VALUE) << 24) + ((bArr[i + 1] & UByte.MAX_VALUE) << 16) + ((bArr[i + 2] & UByte.MAX_VALUE) << 8) + (bArr[i + 3] & UByte.MAX_VALUE);
}
private int remainingBytes() {
return this.fileLength - usedBytes();
}
/* JADX INFO: Access modifiers changed from: private */
public void ringRead(int i, byte[] bArr, int i4, int i5) throws IOException {
int wrapPosition = wrapPosition(i);
int i6 = wrapPosition + i5;
int i7 = this.fileLength;
if (i6 <= i7) {
this.raf.seek(wrapPosition);
this.raf.readFully(bArr, i4, i5);
return;
}
int i8 = i7 - wrapPosition;
this.raf.seek(wrapPosition);
this.raf.readFully(bArr, i4, i8);
this.raf.seek(16L);
this.raf.readFully(bArr, i4 + i8, i5 - i8);
}
private void ringWrite(int i, byte[] bArr, int i4, int i5) throws IOException {
int wrapPosition = wrapPosition(i);
int i6 = wrapPosition + i5;
int i7 = this.fileLength;
if (i6 <= i7) {
this.raf.seek(wrapPosition);
this.raf.write(bArr, i4, i5);
return;
}
int i8 = i7 - wrapPosition;
this.raf.seek(wrapPosition);
this.raf.write(bArr, i4, i8);
this.raf.seek(16L);
this.raf.write(bArr, i4 + i8, i5 - i8);
}
private void setLength(int i) throws IOException {
this.raf.setLength(i);
this.raf.getChannel().force(true);
}
/* JADX INFO: Access modifiers changed from: private */
public int wrapPosition(int i) {
int i4 = this.fileLength;
return i < i4 ? i : (i + 16) - i4;
}
private void writeHeader(int i, int i4, int i5, int i6) throws IOException {
writeInts(this.buffer, i, i4, i5, i6);
this.raf.seek(0L);
this.raf.write(this.buffer);
}
private static void writeInt(byte[] bArr, int i, int i4) {
bArr[i] = (byte) (i4 >> 24);
bArr[i + 1] = (byte) (i4 >> 16);
bArr[i + 2] = (byte) (i4 >> 8);
bArr[i + 3] = (byte) i4;
}
private static void writeInts(byte[] bArr, int... iArr) {
int i = 0;
for (int i4 : iArr) {
writeInt(bArr, i, i4);
i += 4;
}
}
public void add(byte[] bArr) throws IOException {
add(bArr, 0, bArr.length);
}
public synchronized void clear() throws IOException {
try {
writeHeader(4096, 0, 0, 0);
this.elementCount = 0;
Element element = Element.NULL;
this.first = element;
this.last = element;
if (this.fileLength > 4096) {
setLength(4096);
}
this.fileLength = 4096;
} catch (Throwable th) {
throw th;
}
}
@Override // java.io.Closeable, java.lang.AutoCloseable
public synchronized void close() throws IOException {
this.raf.close();
}
public synchronized void forEach(ElementReader elementReader) throws IOException {
int i = this.first.position;
for (int i4 = 0; i4 < this.elementCount; i4++) {
Element readElement = readElement(i);
elementReader.read(new ElementInputStream(readElement), readElement.length);
i = wrapPosition(readElement.position + 4 + readElement.length);
}
}
public boolean hasSpaceFor(int i, int i4) {
return (usedBytes() + 4) + i <= i4;
}
public synchronized boolean isEmpty() {
return this.elementCount == 0;
}
public synchronized byte[] peek() throws IOException {
if (isEmpty()) {
return null;
}
Element element = this.first;
int i = element.length;
byte[] bArr = new byte[i];
ringRead(element.position + 4, bArr, 0, i);
return bArr;
}
public synchronized void remove() throws IOException {
try {
if (isEmpty()) {
throw new NoSuchElementException();
}
if (this.elementCount == 1) {
clear();
} else {
Element element = this.first;
int wrapPosition = wrapPosition(element.position + 4 + element.length);
ringRead(wrapPosition, this.buffer, 0, 4);
int readInt = readInt(this.buffer, 0);
writeHeader(this.fileLength, this.elementCount - 1, wrapPosition, this.last.position);
this.elementCount--;
this.first = new Element(wrapPosition, readInt);
}
} catch (Throwable th) {
throw th;
}
}
public synchronized int size() {
return this.elementCount;
}
public String toString() {
final StringBuilder sb = new StringBuilder();
sb.append(getClass().getSimpleName());
sb.append("[fileLength=");
sb.append(this.fileLength);
sb.append(", size=");
sb.append(this.elementCount);
sb.append(", first=");
sb.append(this.first);
sb.append(", last=");
sb.append(this.last);
sb.append(", element lengths=[");
try {
forEach(new ElementReader() { // from class: com.google.firebase.crashlytics.internal.metadata.QueueFile.1
boolean first = true;
@Override // com.google.firebase.crashlytics.internal.metadata.QueueFile.ElementReader
public void read(InputStream inputStream, int i) throws IOException {
if (this.first) {
this.first = false;
} else {
sb.append(", ");
}
sb.append(i);
}
});
} catch (IOException e4) {
LOGGER.log(Level.WARNING, "read error", (Throwable) e4);
}
sb.append("]]");
return sb.toString();
}
public int usedBytes() {
if (this.elementCount == 0) {
return 16;
}
Element element = this.last;
int i = element.position;
int i4 = this.first.position;
return i >= i4 ? (i - i4) + 4 + element.length + 16 : (((i + 4) + element.length) + this.fileLength) - i4;
}
public synchronized void add(byte[] bArr, int i, int i4) throws IOException {
int wrapPosition;
try {
nonNull(bArr, "buffer");
if ((i | i4) >= 0 && i4 <= bArr.length - i) {
expandIfNecessary(i4);
boolean isEmpty = isEmpty();
if (isEmpty) {
wrapPosition = 16;
} else {
Element element = this.last;
wrapPosition = wrapPosition(element.position + 4 + element.length);
}
Element element2 = new Element(wrapPosition, i4);
writeInt(this.buffer, 0, i4);
ringWrite(element2.position, this.buffer, 0, 4);
ringWrite(element2.position + 4, bArr, i, i4);
writeHeader(this.fileLength, this.elementCount + 1, isEmpty ? element2.position : this.first.position, element2.position);
this.last = element2;
this.elementCount++;
if (isEmpty) {
this.first = element2;
}
} else {
throw new IndexOutOfBoundsException();
}
} catch (Throwable th) {
throw th;
}
}
public QueueFile(RandomAccessFile randomAccessFile) throws IOException {
this.buffer = new byte[16];
this.raf = randomAccessFile;
readHeader();
}
public synchronized void peek(ElementReader elementReader) throws IOException {
if (this.elementCount > 0) {
elementReader.read(new ElementInputStream(this.first), this.first.length);
}
}
}

View File

@@ -0,0 +1,134 @@
package com.google.firebase.crashlytics.internal.metadata;
import com.google.firebase.crashlytics.internal.Logger;
import com.google.firebase.crashlytics.internal.common.CommonUtils;
import com.google.firebase.crashlytics.internal.metadata.QueueFile;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.nio.charset.Charset;
import java.util.Locale;
/* loaded from: classes3.dex */
class QueueFileLogStore implements FileLogStore {
private static final Charset UTF_8 = Charset.forName("UTF-8");
private QueueFile logFile;
private final int maxLogSize;
private final File workingFile;
/* loaded from: classes3.dex */
public static class LogBytes {
public final byte[] bytes;
public final int offset;
public LogBytes(byte[] bArr, int i) {
this.bytes = bArr;
this.offset = i;
}
}
public QueueFileLogStore(File file, int i) {
this.workingFile = file;
this.maxLogSize = i;
}
private void doWriteToLog(long j4, String str) {
if (this.logFile == null) {
return;
}
if (str == null) {
str = "null";
}
try {
int i = this.maxLogSize / 4;
if (str.length() > i) {
str = "..." + str.substring(str.length() - i);
}
this.logFile.add(String.format(Locale.US, "%d %s%n", Long.valueOf(j4), str.replaceAll("\r", " ").replaceAll("\n", " ")).getBytes(UTF_8));
while (!this.logFile.isEmpty() && this.logFile.usedBytes() > this.maxLogSize) {
this.logFile.remove();
}
} catch (IOException e4) {
Logger.getLogger().e("There was a problem writing to the Crashlytics log.", e4);
}
}
private LogBytes getLogBytes() {
if (!this.workingFile.exists()) {
return null;
}
openLogFile();
QueueFile queueFile = this.logFile;
if (queueFile == null) {
return null;
}
final int[] iArr = {0};
final byte[] bArr = new byte[queueFile.usedBytes()];
try {
this.logFile.forEach(new QueueFile.ElementReader() { // from class: com.google.firebase.crashlytics.internal.metadata.QueueFileLogStore.1
@Override // com.google.firebase.crashlytics.internal.metadata.QueueFile.ElementReader
public void read(InputStream inputStream, int i) throws IOException {
try {
inputStream.read(bArr, iArr[0], i);
int[] iArr2 = iArr;
iArr2[0] = iArr2[0] + i;
} finally {
inputStream.close();
}
}
});
} catch (IOException e4) {
Logger.getLogger().e("A problem occurred while reading the Crashlytics log file.", e4);
}
return new LogBytes(bArr, iArr[0]);
}
private void openLogFile() {
if (this.logFile == null) {
try {
this.logFile = new QueueFile(this.workingFile);
} catch (IOException e4) {
Logger.getLogger().e("Could not open log file: " + this.workingFile, e4);
}
}
}
@Override // com.google.firebase.crashlytics.internal.metadata.FileLogStore
public void closeLogFile() {
CommonUtils.closeOrLog(this.logFile, "There was a problem closing the Crashlytics log file.");
this.logFile = null;
}
@Override // com.google.firebase.crashlytics.internal.metadata.FileLogStore
public void deleteLogFile() {
closeLogFile();
this.workingFile.delete();
}
@Override // com.google.firebase.crashlytics.internal.metadata.FileLogStore
public byte[] getLogAsBytes() {
LogBytes logBytes = getLogBytes();
if (logBytes == null) {
return null;
}
int i = logBytes.offset;
byte[] bArr = new byte[i];
System.arraycopy(logBytes.bytes, 0, bArr, 0, i);
return bArr;
}
@Override // com.google.firebase.crashlytics.internal.metadata.FileLogStore
public String getLogAsString() {
byte[] logAsBytes = getLogAsBytes();
if (logAsBytes != null) {
return new String(logAsBytes, UTF_8);
}
return null;
}
@Override // com.google.firebase.crashlytics.internal.metadata.FileLogStore
public void writeToLog(long j4, String str) {
openLogFile();
doWriteToLog(j4, str);
}
}

View File

@@ -0,0 +1,46 @@
package com.google.firebase.crashlytics.internal.metadata;
import com.google.auto.value.AutoValue;
import com.google.firebase.crashlytics.internal.model.CrashlyticsReport;
import com.google.firebase.encoders.DataEncoder;
import com.google.firebase.encoders.annotations.Encodable;
import com.google.firebase.encoders.json.JsonDataEncoderBuilder;
import com.google.firebase.remoteconfig.RemoteConfigConstants;
import com.google.firebase.remoteconfig.internal.ConfigContainer;
import org.json.JSONException;
import org.json.JSONObject;
@AutoValue
@Encodable
/* loaded from: classes3.dex */
public abstract class RolloutAssignment {
private static final int MAX_PARAMETER_VALUE_LENGTH = 256;
public static final DataEncoder ROLLOUT_ASSIGNMENT_JSON_ENCODER = new JsonDataEncoderBuilder().configureWith(AutoRolloutAssignmentEncoder.CONFIG).build();
public static RolloutAssignment create(String str, String str2, String str3, String str4, long j4) {
return new AutoValue_RolloutAssignment(str, str2, validate(str3), str4, j4);
}
private static String validate(String str) {
return str.length() > MAX_PARAMETER_VALUE_LENGTH ? str.substring(0, MAX_PARAMETER_VALUE_LENGTH) : str;
}
public abstract String getParameterKey();
public abstract String getParameterValue();
public abstract String getRolloutId();
public abstract long getTemplateVersion();
public abstract String getVariantId();
public CrashlyticsReport.Session.Event.RolloutAssignment toReportProto() {
return CrashlyticsReport.Session.Event.RolloutAssignment.builder().setRolloutVariant(CrashlyticsReport.Session.Event.RolloutAssignment.RolloutVariant.builder().setVariantId(getVariantId()).setRolloutId(getRolloutId()).build()).setParameterKey(getParameterKey()).setParameterValue(getParameterValue()).setTemplateVersion(getTemplateVersion()).build();
}
public static RolloutAssignment create(String str) throws JSONException {
JSONObject jSONObject = new JSONObject(str);
return create(jSONObject.getString(ConfigContainer.ROLLOUT_METADATA_ID), jSONObject.getString("parameterKey"), jSONObject.getString("parameterValue"), jSONObject.getString("variantId"), jSONObject.getLong(RemoteConfigConstants.ResponseFieldKey.TEMPLATE_VERSION_NUMBER));
}
}

View File

@@ -0,0 +1,40 @@
package com.google.firebase.crashlytics.internal.metadata;
import com.google.firebase.crashlytics.internal.Logger;
import com.google.firebase.crashlytics.internal.model.CrashlyticsReport;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
/* loaded from: classes3.dex */
public class RolloutAssignmentList {
static final String ROLLOUTS_STATE = "rolloutsState";
private final int maxEntries;
private final List<RolloutAssignment> rolloutsState = new ArrayList();
public RolloutAssignmentList(int i) {
this.maxEntries = i;
}
public List<CrashlyticsReport.Session.Event.RolloutAssignment> getReportRolloutsState() {
List<RolloutAssignment> rolloutAssignmentList = getRolloutAssignmentList();
ArrayList arrayList = new ArrayList();
for (int i = 0; i < rolloutAssignmentList.size(); i++) {
arrayList.add(rolloutAssignmentList.get(i).toReportProto());
}
return arrayList;
}
public synchronized List<RolloutAssignment> getRolloutAssignmentList() {
return Collections.unmodifiableList(new ArrayList(this.rolloutsState));
}
public synchronized boolean updateRolloutAssignmentList(List<RolloutAssignment> list) {
this.rolloutsState.clear();
if (list.size() <= this.maxEntries) {
return this.rolloutsState.addAll(list);
}
Logger.getLogger().w("Ignored 0 entries when adding rollout assignments. Maximum allowable: " + this.maxEntries);
return this.rolloutsState.addAll(list.subList(0, this.maxEntries));
}
}

View File

@@ -0,0 +1,238 @@
package com.google.firebase.crashlytics.internal.metadata;
import com.google.firebase.crashlytics.internal.common.CommonUtils;
import com.google.firebase.crashlytics.internal.common.CrashlyticsBackgroundWorker;
import com.google.firebase.crashlytics.internal.model.CrashlyticsReport;
import com.google.firebase.crashlytics.internal.persistence.FileStore;
import java.util.List;
import java.util.Map;
import java.util.concurrent.Callable;
import java.util.concurrent.atomic.AtomicMarkableReference;
import java.util.concurrent.atomic.AtomicReference;
/* loaded from: classes3.dex */
public class UserMetadata {
public static final String INTERNAL_KEYDATA_FILENAME = "internal-keys";
public static final String KEYDATA_FILENAME = "keys";
public static final int MAX_ATTRIBUTES = 64;
public static final int MAX_ATTRIBUTE_SIZE = 1024;
public static final int MAX_INTERNAL_KEY_SIZE = 8192;
public static final int MAX_ROLLOUT_ASSIGNMENTS = 128;
public static final String ROLLOUTS_STATE_FILENAME = "rollouts-state";
public static final String USERDATA_FILENAME = "user-data";
private final CrashlyticsBackgroundWorker backgroundWorker;
private final MetaDataStore metaDataStore;
private String sessionIdentifier;
private final SerializeableKeysMap customKeys = new SerializeableKeysMap(false);
private final SerializeableKeysMap internalKeys = new SerializeableKeysMap(true);
private final RolloutAssignmentList rolloutsState = new RolloutAssignmentList(128);
private final AtomicMarkableReference<String> userId = new AtomicMarkableReference<>(null, false);
/* loaded from: classes3.dex */
public class SerializeableKeysMap {
private final boolean isInternal;
final AtomicMarkableReference<KeysMap> map;
private final AtomicReference<Callable<Void>> queuedSerializer = new AtomicReference<>(null);
public SerializeableKeysMap(boolean z3) {
this.isInternal = z3;
this.map = new AtomicMarkableReference<>(new KeysMap(64, z3 ? 8192 : 1024), false);
}
public /* synthetic */ Void lambda$scheduleSerializationTaskIfNeeded$0() throws Exception {
this.queuedSerializer.set(null);
serializeIfMarked();
return null;
}
private void scheduleSerializationTaskIfNeeded() {
b bVar = new b(this, 0);
AtomicReference<Callable<Void>> atomicReference = this.queuedSerializer;
while (!atomicReference.compareAndSet(null, bVar)) {
if (atomicReference.get() != null) {
return;
}
}
UserMetadata.this.backgroundWorker.submit(bVar);
}
private void serializeIfMarked() {
Map<String, String> map;
synchronized (this) {
try {
if (this.map.isMarked()) {
map = this.map.getReference().getKeys();
AtomicMarkableReference<KeysMap> atomicMarkableReference = this.map;
atomicMarkableReference.set(atomicMarkableReference.getReference(), false);
} else {
map = null;
}
} catch (Throwable th) {
throw th;
}
}
if (map != null) {
UserMetadata.this.metaDataStore.writeKeyData(UserMetadata.this.sessionIdentifier, map, this.isInternal);
}
}
public Map<String, String> getKeys() {
return this.map.getReference().getKeys();
}
public boolean setKey(String str, String str2) {
synchronized (this) {
try {
if (!this.map.getReference().setKey(str, str2)) {
return false;
}
AtomicMarkableReference<KeysMap> atomicMarkableReference = this.map;
atomicMarkableReference.set(atomicMarkableReference.getReference(), true);
scheduleSerializationTaskIfNeeded();
return true;
} catch (Throwable th) {
throw th;
}
}
}
public void setKeys(Map<String, String> map) {
synchronized (this) {
this.map.getReference().setKeys(map);
AtomicMarkableReference<KeysMap> atomicMarkableReference = this.map;
atomicMarkableReference.set(atomicMarkableReference.getReference(), true);
}
scheduleSerializationTaskIfNeeded();
}
}
public UserMetadata(String str, FileStore fileStore, CrashlyticsBackgroundWorker crashlyticsBackgroundWorker) {
this.sessionIdentifier = str;
this.metaDataStore = new MetaDataStore(fileStore);
this.backgroundWorker = crashlyticsBackgroundWorker;
}
public /* synthetic */ Object lambda$setUserId$0() throws Exception {
serializeUserDataIfNeeded();
return null;
}
public /* synthetic */ Object lambda$updateRolloutsState$1(List list) throws Exception {
this.metaDataStore.writeRolloutState(this.sessionIdentifier, list);
return null;
}
public static UserMetadata loadFromExistingSession(String str, FileStore fileStore, CrashlyticsBackgroundWorker crashlyticsBackgroundWorker) {
MetaDataStore metaDataStore = new MetaDataStore(fileStore);
UserMetadata userMetadata = new UserMetadata(str, fileStore, crashlyticsBackgroundWorker);
userMetadata.customKeys.map.getReference().setKeys(metaDataStore.readKeyData(str, false));
userMetadata.internalKeys.map.getReference().setKeys(metaDataStore.readKeyData(str, true));
userMetadata.userId.set(metaDataStore.readUserId(str), false);
userMetadata.rolloutsState.updateRolloutAssignmentList(metaDataStore.readRolloutsState(str));
return userMetadata;
}
public static String readUserId(String str, FileStore fileStore) {
return new MetaDataStore(fileStore).readUserId(str);
}
private void serializeUserDataIfNeeded() {
boolean z3;
String str;
synchronized (this.userId) {
try {
z3 = false;
if (this.userId.isMarked()) {
str = getUserId();
this.userId.set(str, false);
z3 = true;
} else {
str = null;
}
} catch (Throwable th) {
throw th;
}
}
if (z3) {
this.metaDataStore.writeUserData(this.sessionIdentifier, str);
}
}
public Map<String, String> getCustomKeys() {
return this.customKeys.getKeys();
}
public Map<String, String> getInternalKeys() {
return this.internalKeys.getKeys();
}
public List<CrashlyticsReport.Session.Event.RolloutAssignment> getRolloutsState() {
return this.rolloutsState.getReportRolloutsState();
}
public String getUserId() {
return this.userId.getReference();
}
public boolean setCustomKey(String str, String str2) {
return this.customKeys.setKey(str, str2);
}
public void setCustomKeys(Map<String, String> map) {
this.customKeys.setKeys(map);
}
public boolean setInternalKey(String str, String str2) {
return this.internalKeys.setKey(str, str2);
}
public void setNewSession(String str) {
synchronized (this.sessionIdentifier) {
try {
this.sessionIdentifier = str;
Map<String, String> keys = this.customKeys.getKeys();
List<RolloutAssignment> rolloutAssignmentList = this.rolloutsState.getRolloutAssignmentList();
if (getUserId() != null) {
this.metaDataStore.writeUserData(str, getUserId());
}
if (!keys.isEmpty()) {
this.metaDataStore.writeKeyData(str, keys);
}
if (!rolloutAssignmentList.isEmpty()) {
this.metaDataStore.writeRolloutState(str, rolloutAssignmentList);
}
} catch (Throwable th) {
throw th;
}
}
}
public void setUserId(String str) {
String sanitizeString = KeysMap.sanitizeString(str, 1024);
synchronized (this.userId) {
try {
if (CommonUtils.nullSafeEquals(sanitizeString, this.userId.getReference())) {
return;
}
this.userId.set(sanitizeString, true);
this.backgroundWorker.submit(new b(this, 1));
} catch (Throwable th) {
throw th;
}
}
}
public boolean updateRolloutsState(List<RolloutAssignment> list) {
synchronized (this.rolloutsState) {
try {
if (!this.rolloutsState.updateRolloutAssignmentList(list)) {
return false;
}
this.backgroundWorker.submit(new a(0, this, this.rolloutsState.getRolloutAssignmentList()));
return true;
} catch (Throwable th) {
throw th;
}
}
}
}

View File

@@ -0,0 +1,43 @@
package com.google.firebase.crashlytics.internal.metadata;
import com.google.firebase.remoteconfig.FirebaseRemoteConfig;
import com.google.firebase.remoteconfig.FirebaseRemoteConfigSettings;
import com.google.firebase.remoteconfig.internal.ConfigCacheClient;
import com.google.firebase.remoteconfig.internal.ConfigContainer;
import java.util.List;
import java.util.concurrent.Callable;
/* loaded from: classes3.dex */
public final /* synthetic */ class a implements Callable {
/* renamed from: a, reason: collision with root package name */
public final /* synthetic */ int f5972a;
/* renamed from: b, reason: collision with root package name */
public final /* synthetic */ Object f5973b;
/* renamed from: c, reason: collision with root package name */
public final /* synthetic */ Object f5974c;
public /* synthetic */ a(int i, Object obj, Object obj2) {
this.f5972a = i;
this.f5973b = obj;
this.f5974c = obj2;
}
@Override // java.util.concurrent.Callable
public final Object call() {
Object lambda$updateRolloutsState$1;
Void lambda$setConfigSettingsAsync$5;
switch (this.f5972a) {
case 0:
lambda$updateRolloutsState$1 = ((UserMetadata) this.f5973b).lambda$updateRolloutsState$1((List) this.f5974c);
return lambda$updateRolloutsState$1;
case 1:
lambda$setConfigSettingsAsync$5 = ((FirebaseRemoteConfig) this.f5973b).lambda$setConfigSettingsAsync$5((FirebaseRemoteConfigSettings) this.f5974c);
return lambda$setConfigSettingsAsync$5;
default:
return ConfigCacheClient.b((ConfigCacheClient) this.f5973b, (ConfigContainer) this.f5974c);
}
}
}

View File

@@ -0,0 +1,31 @@
package com.google.firebase.crashlytics.internal.metadata;
import com.google.firebase.crashlytics.internal.metadata.UserMetadata;
import java.util.concurrent.Callable;
/* loaded from: classes3.dex */
public final /* synthetic */ class b implements Callable {
/* renamed from: a, reason: collision with root package name */
public final /* synthetic */ int f5975a;
/* renamed from: b, reason: collision with root package name */
public final /* synthetic */ Object f5976b;
public /* synthetic */ b(Object obj, int i) {
this.f5975a = i;
this.f5976b = obj;
}
@Override // java.util.concurrent.Callable
public final Object call() {
int i = this.f5975a;
Object obj = this.f5976b;
switch (i) {
case 0:
return UserMetadata.SerializeableKeysMap.a((UserMetadata.SerializeableKeysMap) obj);
default:
return UserMetadata.b((UserMetadata) obj);
}
}
}

View File

@@ -0,0 +1,654 @@
package com.google.firebase.crashlytics.internal.model;
import com.google.android.gms.measurement.api.AppMeasurementSdk;
import com.google.firebase.analytics.FirebaseAnalytics;
import com.google.firebase.crashlytics.internal.model.CrashlyticsReport;
import com.google.firebase.encoders.FieldDescriptor;
import com.google.firebase.encoders.ObjectEncoder;
import com.google.firebase.encoders.ObjectEncoderContext;
import com.google.firebase.encoders.config.Configurator;
import com.google.firebase.encoders.config.EncoderConfig;
import com.google.firebase.remoteconfig.RemoteConfigConstants;
import com.google.firebase.remoteconfig.internal.ConfigContainer;
import java.io.IOException;
/* loaded from: classes3.dex */
public final class AutoCrashlyticsReportEncoder implements Configurator {
public static final int CODEGEN_VERSION = 2;
public static final Configurator CONFIG = new AutoCrashlyticsReportEncoder();
/* loaded from: classes3.dex */
public static final class CrashlyticsReportApplicationExitInfoBuildIdMappingForArchEncoder implements ObjectEncoder<CrashlyticsReport.ApplicationExitInfo.BuildIdMappingForArch> {
static final CrashlyticsReportApplicationExitInfoBuildIdMappingForArchEncoder INSTANCE = new CrashlyticsReportApplicationExitInfoBuildIdMappingForArchEncoder();
private static final FieldDescriptor ARCH_DESCRIPTOR = FieldDescriptor.of("arch");
private static final FieldDescriptor LIBRARYNAME_DESCRIPTOR = FieldDescriptor.of("libraryName");
private static final FieldDescriptor BUILDID_DESCRIPTOR = FieldDescriptor.of("buildId");
private CrashlyticsReportApplicationExitInfoBuildIdMappingForArchEncoder() {
}
@Override // com.google.firebase.encoders.Encoder
public void encode(CrashlyticsReport.ApplicationExitInfo.BuildIdMappingForArch buildIdMappingForArch, ObjectEncoderContext objectEncoderContext) throws IOException {
objectEncoderContext.add(ARCH_DESCRIPTOR, buildIdMappingForArch.getArch());
objectEncoderContext.add(LIBRARYNAME_DESCRIPTOR, buildIdMappingForArch.getLibraryName());
objectEncoderContext.add(BUILDID_DESCRIPTOR, buildIdMappingForArch.getBuildId());
}
}
/* loaded from: classes3.dex */
public static final class CrashlyticsReportApplicationExitInfoEncoder implements ObjectEncoder<CrashlyticsReport.ApplicationExitInfo> {
static final CrashlyticsReportApplicationExitInfoEncoder INSTANCE = new CrashlyticsReportApplicationExitInfoEncoder();
private static final FieldDescriptor PID_DESCRIPTOR = FieldDescriptor.of("pid");
private static final FieldDescriptor PROCESSNAME_DESCRIPTOR = FieldDescriptor.of("processName");
private static final FieldDescriptor REASONCODE_DESCRIPTOR = FieldDescriptor.of("reasonCode");
private static final FieldDescriptor IMPORTANCE_DESCRIPTOR = FieldDescriptor.of("importance");
private static final FieldDescriptor PSS_DESCRIPTOR = FieldDescriptor.of("pss");
private static final FieldDescriptor RSS_DESCRIPTOR = FieldDescriptor.of("rss");
private static final FieldDescriptor TIMESTAMP_DESCRIPTOR = FieldDescriptor.of("timestamp");
private static final FieldDescriptor TRACEFILE_DESCRIPTOR = FieldDescriptor.of("traceFile");
private static final FieldDescriptor BUILDIDMAPPINGFORARCH_DESCRIPTOR = FieldDescriptor.of("buildIdMappingForArch");
private CrashlyticsReportApplicationExitInfoEncoder() {
}
@Override // com.google.firebase.encoders.Encoder
public void encode(CrashlyticsReport.ApplicationExitInfo applicationExitInfo, ObjectEncoderContext objectEncoderContext) throws IOException {
objectEncoderContext.add(PID_DESCRIPTOR, applicationExitInfo.getPid());
objectEncoderContext.add(PROCESSNAME_DESCRIPTOR, applicationExitInfo.getProcessName());
objectEncoderContext.add(REASONCODE_DESCRIPTOR, applicationExitInfo.getReasonCode());
objectEncoderContext.add(IMPORTANCE_DESCRIPTOR, applicationExitInfo.getImportance());
objectEncoderContext.add(PSS_DESCRIPTOR, applicationExitInfo.getPss());
objectEncoderContext.add(RSS_DESCRIPTOR, applicationExitInfo.getRss());
objectEncoderContext.add(TIMESTAMP_DESCRIPTOR, applicationExitInfo.getTimestamp());
objectEncoderContext.add(TRACEFILE_DESCRIPTOR, applicationExitInfo.getTraceFile());
objectEncoderContext.add(BUILDIDMAPPINGFORARCH_DESCRIPTOR, applicationExitInfo.getBuildIdMappingForArch());
}
}
/* loaded from: classes3.dex */
public static final class CrashlyticsReportCustomAttributeEncoder implements ObjectEncoder<CrashlyticsReport.CustomAttribute> {
static final CrashlyticsReportCustomAttributeEncoder INSTANCE = new CrashlyticsReportCustomAttributeEncoder();
private static final FieldDescriptor KEY_DESCRIPTOR = FieldDescriptor.of("key");
private static final FieldDescriptor VALUE_DESCRIPTOR = FieldDescriptor.of("value");
private CrashlyticsReportCustomAttributeEncoder() {
}
@Override // com.google.firebase.encoders.Encoder
public void encode(CrashlyticsReport.CustomAttribute customAttribute, ObjectEncoderContext objectEncoderContext) throws IOException {
objectEncoderContext.add(KEY_DESCRIPTOR, customAttribute.getKey());
objectEncoderContext.add(VALUE_DESCRIPTOR, customAttribute.getValue());
}
}
/* loaded from: classes3.dex */
public static final class CrashlyticsReportEncoder implements ObjectEncoder<CrashlyticsReport> {
static final CrashlyticsReportEncoder INSTANCE = new CrashlyticsReportEncoder();
private static final FieldDescriptor SDKVERSION_DESCRIPTOR = FieldDescriptor.of(RemoteConfigConstants.RequestFieldKey.SDK_VERSION);
private static final FieldDescriptor GMPAPPID_DESCRIPTOR = FieldDescriptor.of("gmpAppId");
private static final FieldDescriptor PLATFORM_DESCRIPTOR = FieldDescriptor.of("platform");
private static final FieldDescriptor INSTALLATIONUUID_DESCRIPTOR = FieldDescriptor.of("installationUuid");
private static final FieldDescriptor FIREBASEINSTALLATIONID_DESCRIPTOR = FieldDescriptor.of("firebaseInstallationId");
private static final FieldDescriptor APPQUALITYSESSIONID_DESCRIPTOR = FieldDescriptor.of("appQualitySessionId");
private static final FieldDescriptor BUILDVERSION_DESCRIPTOR = FieldDescriptor.of("buildVersion");
private static final FieldDescriptor DISPLAYVERSION_DESCRIPTOR = FieldDescriptor.of("displayVersion");
private static final FieldDescriptor SESSION_DESCRIPTOR = FieldDescriptor.of("session");
private static final FieldDescriptor NDKPAYLOAD_DESCRIPTOR = FieldDescriptor.of("ndkPayload");
private static final FieldDescriptor APPEXITINFO_DESCRIPTOR = FieldDescriptor.of("appExitInfo");
private CrashlyticsReportEncoder() {
}
@Override // com.google.firebase.encoders.Encoder
public void encode(CrashlyticsReport crashlyticsReport, ObjectEncoderContext objectEncoderContext) throws IOException {
objectEncoderContext.add(SDKVERSION_DESCRIPTOR, crashlyticsReport.getSdkVersion());
objectEncoderContext.add(GMPAPPID_DESCRIPTOR, crashlyticsReport.getGmpAppId());
objectEncoderContext.add(PLATFORM_DESCRIPTOR, crashlyticsReport.getPlatform());
objectEncoderContext.add(INSTALLATIONUUID_DESCRIPTOR, crashlyticsReport.getInstallationUuid());
objectEncoderContext.add(FIREBASEINSTALLATIONID_DESCRIPTOR, crashlyticsReport.getFirebaseInstallationId());
objectEncoderContext.add(APPQUALITYSESSIONID_DESCRIPTOR, crashlyticsReport.getAppQualitySessionId());
objectEncoderContext.add(BUILDVERSION_DESCRIPTOR, crashlyticsReport.getBuildVersion());
objectEncoderContext.add(DISPLAYVERSION_DESCRIPTOR, crashlyticsReport.getDisplayVersion());
objectEncoderContext.add(SESSION_DESCRIPTOR, crashlyticsReport.getSession());
objectEncoderContext.add(NDKPAYLOAD_DESCRIPTOR, crashlyticsReport.getNdkPayload());
objectEncoderContext.add(APPEXITINFO_DESCRIPTOR, crashlyticsReport.getAppExitInfo());
}
}
/* loaded from: classes3.dex */
public static final class CrashlyticsReportFilesPayloadEncoder implements ObjectEncoder<CrashlyticsReport.FilesPayload> {
static final CrashlyticsReportFilesPayloadEncoder INSTANCE = new CrashlyticsReportFilesPayloadEncoder();
private static final FieldDescriptor FILES_DESCRIPTOR = FieldDescriptor.of("files");
private static final FieldDescriptor ORGID_DESCRIPTOR = FieldDescriptor.of("orgId");
private CrashlyticsReportFilesPayloadEncoder() {
}
@Override // com.google.firebase.encoders.Encoder
public void encode(CrashlyticsReport.FilesPayload filesPayload, ObjectEncoderContext objectEncoderContext) throws IOException {
objectEncoderContext.add(FILES_DESCRIPTOR, filesPayload.getFiles());
objectEncoderContext.add(ORGID_DESCRIPTOR, filesPayload.getOrgId());
}
}
/* loaded from: classes3.dex */
public static final class CrashlyticsReportFilesPayloadFileEncoder implements ObjectEncoder<CrashlyticsReport.FilesPayload.File> {
static final CrashlyticsReportFilesPayloadFileEncoder INSTANCE = new CrashlyticsReportFilesPayloadFileEncoder();
private static final FieldDescriptor FILENAME_DESCRIPTOR = FieldDescriptor.of("filename");
private static final FieldDescriptor CONTENTS_DESCRIPTOR = FieldDescriptor.of("contents");
private CrashlyticsReportFilesPayloadFileEncoder() {
}
@Override // com.google.firebase.encoders.Encoder
public void encode(CrashlyticsReport.FilesPayload.File file, ObjectEncoderContext objectEncoderContext) throws IOException {
objectEncoderContext.add(FILENAME_DESCRIPTOR, file.getFilename());
objectEncoderContext.add(CONTENTS_DESCRIPTOR, file.getContents());
}
}
/* loaded from: classes3.dex */
public static final class CrashlyticsReportSessionApplicationEncoder implements ObjectEncoder<CrashlyticsReport.Session.Application> {
static final CrashlyticsReportSessionApplicationEncoder INSTANCE = new CrashlyticsReportSessionApplicationEncoder();
private static final FieldDescriptor IDENTIFIER_DESCRIPTOR = FieldDescriptor.of("identifier");
private static final FieldDescriptor VERSION_DESCRIPTOR = FieldDescriptor.of("version");
private static final FieldDescriptor DISPLAYVERSION_DESCRIPTOR = FieldDescriptor.of("displayVersion");
private static final FieldDescriptor ORGANIZATION_DESCRIPTOR = FieldDescriptor.of("organization");
private static final FieldDescriptor INSTALLATIONUUID_DESCRIPTOR = FieldDescriptor.of("installationUuid");
private static final FieldDescriptor DEVELOPMENTPLATFORM_DESCRIPTOR = FieldDescriptor.of("developmentPlatform");
private static final FieldDescriptor DEVELOPMENTPLATFORMVERSION_DESCRIPTOR = FieldDescriptor.of("developmentPlatformVersion");
private CrashlyticsReportSessionApplicationEncoder() {
}
@Override // com.google.firebase.encoders.Encoder
public void encode(CrashlyticsReport.Session.Application application, ObjectEncoderContext objectEncoderContext) throws IOException {
objectEncoderContext.add(IDENTIFIER_DESCRIPTOR, application.getIdentifier());
objectEncoderContext.add(VERSION_DESCRIPTOR, application.getVersion());
objectEncoderContext.add(DISPLAYVERSION_DESCRIPTOR, application.getDisplayVersion());
objectEncoderContext.add(ORGANIZATION_DESCRIPTOR, application.getOrganization());
objectEncoderContext.add(INSTALLATIONUUID_DESCRIPTOR, application.getInstallationUuid());
objectEncoderContext.add(DEVELOPMENTPLATFORM_DESCRIPTOR, application.getDevelopmentPlatform());
objectEncoderContext.add(DEVELOPMENTPLATFORMVERSION_DESCRIPTOR, application.getDevelopmentPlatformVersion());
}
}
/* loaded from: classes3.dex */
public static final class CrashlyticsReportSessionApplicationOrganizationEncoder implements ObjectEncoder<CrashlyticsReport.Session.Application.Organization> {
static final CrashlyticsReportSessionApplicationOrganizationEncoder INSTANCE = new CrashlyticsReportSessionApplicationOrganizationEncoder();
private static final FieldDescriptor CLSID_DESCRIPTOR = FieldDescriptor.of("clsId");
private CrashlyticsReportSessionApplicationOrganizationEncoder() {
}
@Override // com.google.firebase.encoders.Encoder
public void encode(CrashlyticsReport.Session.Application.Organization organization, ObjectEncoderContext objectEncoderContext) throws IOException {
objectEncoderContext.add(CLSID_DESCRIPTOR, organization.getClsId());
}
}
/* loaded from: classes3.dex */
public static final class CrashlyticsReportSessionDeviceEncoder implements ObjectEncoder<CrashlyticsReport.Session.Device> {
static final CrashlyticsReportSessionDeviceEncoder INSTANCE = new CrashlyticsReportSessionDeviceEncoder();
private static final FieldDescriptor ARCH_DESCRIPTOR = FieldDescriptor.of("arch");
private static final FieldDescriptor MODEL_DESCRIPTOR = FieldDescriptor.of("model");
private static final FieldDescriptor CORES_DESCRIPTOR = FieldDescriptor.of("cores");
private static final FieldDescriptor RAM_DESCRIPTOR = FieldDescriptor.of("ram");
private static final FieldDescriptor DISKSPACE_DESCRIPTOR = FieldDescriptor.of("diskSpace");
private static final FieldDescriptor SIMULATOR_DESCRIPTOR = FieldDescriptor.of("simulator");
private static final FieldDescriptor STATE_DESCRIPTOR = FieldDescriptor.of(RemoteConfigConstants.ResponseFieldKey.STATE);
private static final FieldDescriptor MANUFACTURER_DESCRIPTOR = FieldDescriptor.of("manufacturer");
private static final FieldDescriptor MODELCLASS_DESCRIPTOR = FieldDescriptor.of("modelClass");
private CrashlyticsReportSessionDeviceEncoder() {
}
@Override // com.google.firebase.encoders.Encoder
public void encode(CrashlyticsReport.Session.Device device, ObjectEncoderContext objectEncoderContext) throws IOException {
objectEncoderContext.add(ARCH_DESCRIPTOR, device.getArch());
objectEncoderContext.add(MODEL_DESCRIPTOR, device.getModel());
objectEncoderContext.add(CORES_DESCRIPTOR, device.getCores());
objectEncoderContext.add(RAM_DESCRIPTOR, device.getRam());
objectEncoderContext.add(DISKSPACE_DESCRIPTOR, device.getDiskSpace());
objectEncoderContext.add(SIMULATOR_DESCRIPTOR, device.isSimulator());
objectEncoderContext.add(STATE_DESCRIPTOR, device.getState());
objectEncoderContext.add(MANUFACTURER_DESCRIPTOR, device.getManufacturer());
objectEncoderContext.add(MODELCLASS_DESCRIPTOR, device.getModelClass());
}
}
/* loaded from: classes3.dex */
public static final class CrashlyticsReportSessionEncoder implements ObjectEncoder<CrashlyticsReport.Session> {
static final CrashlyticsReportSessionEncoder INSTANCE = new CrashlyticsReportSessionEncoder();
private static final FieldDescriptor GENERATOR_DESCRIPTOR = FieldDescriptor.of("generator");
private static final FieldDescriptor IDENTIFIER_DESCRIPTOR = FieldDescriptor.of("identifier");
private static final FieldDescriptor APPQUALITYSESSIONID_DESCRIPTOR = FieldDescriptor.of("appQualitySessionId");
private static final FieldDescriptor STARTEDAT_DESCRIPTOR = FieldDescriptor.of("startedAt");
private static final FieldDescriptor ENDEDAT_DESCRIPTOR = FieldDescriptor.of("endedAt");
private static final FieldDescriptor CRASHED_DESCRIPTOR = FieldDescriptor.of("crashed");
private static final FieldDescriptor APP_DESCRIPTOR = FieldDescriptor.of("app");
private static final FieldDescriptor USER_DESCRIPTOR = FieldDescriptor.of("user");
private static final FieldDescriptor OS_DESCRIPTOR = FieldDescriptor.of("os");
private static final FieldDescriptor DEVICE_DESCRIPTOR = FieldDescriptor.of("device");
private static final FieldDescriptor EVENTS_DESCRIPTOR = FieldDescriptor.of("events");
private static final FieldDescriptor GENERATORTYPE_DESCRIPTOR = FieldDescriptor.of("generatorType");
private CrashlyticsReportSessionEncoder() {
}
@Override // com.google.firebase.encoders.Encoder
public void encode(CrashlyticsReport.Session session, ObjectEncoderContext objectEncoderContext) throws IOException {
objectEncoderContext.add(GENERATOR_DESCRIPTOR, session.getGenerator());
objectEncoderContext.add(IDENTIFIER_DESCRIPTOR, session.getIdentifierUtf8Bytes());
objectEncoderContext.add(APPQUALITYSESSIONID_DESCRIPTOR, session.getAppQualitySessionId());
objectEncoderContext.add(STARTEDAT_DESCRIPTOR, session.getStartedAt());
objectEncoderContext.add(ENDEDAT_DESCRIPTOR, session.getEndedAt());
objectEncoderContext.add(CRASHED_DESCRIPTOR, session.isCrashed());
objectEncoderContext.add(APP_DESCRIPTOR, session.getApp());
objectEncoderContext.add(USER_DESCRIPTOR, session.getUser());
objectEncoderContext.add(OS_DESCRIPTOR, session.getOs());
objectEncoderContext.add(DEVICE_DESCRIPTOR, session.getDevice());
objectEncoderContext.add(EVENTS_DESCRIPTOR, session.getEvents());
objectEncoderContext.add(GENERATORTYPE_DESCRIPTOR, session.getGeneratorType());
}
}
/* loaded from: classes3.dex */
public static final class CrashlyticsReportSessionEventApplicationEncoder implements ObjectEncoder<CrashlyticsReport.Session.Event.Application> {
static final CrashlyticsReportSessionEventApplicationEncoder INSTANCE = new CrashlyticsReportSessionEventApplicationEncoder();
private static final FieldDescriptor EXECUTION_DESCRIPTOR = FieldDescriptor.of("execution");
private static final FieldDescriptor CUSTOMATTRIBUTES_DESCRIPTOR = FieldDescriptor.of("customAttributes");
private static final FieldDescriptor INTERNALKEYS_DESCRIPTOR = FieldDescriptor.of("internalKeys");
private static final FieldDescriptor BACKGROUND_DESCRIPTOR = FieldDescriptor.of("background");
private static final FieldDescriptor CURRENTPROCESSDETAILS_DESCRIPTOR = FieldDescriptor.of("currentProcessDetails");
private static final FieldDescriptor APPPROCESSDETAILS_DESCRIPTOR = FieldDescriptor.of("appProcessDetails");
private static final FieldDescriptor UIORIENTATION_DESCRIPTOR = FieldDescriptor.of("uiOrientation");
private CrashlyticsReportSessionEventApplicationEncoder() {
}
@Override // com.google.firebase.encoders.Encoder
public void encode(CrashlyticsReport.Session.Event.Application application, ObjectEncoderContext objectEncoderContext) throws IOException {
objectEncoderContext.add(EXECUTION_DESCRIPTOR, application.getExecution());
objectEncoderContext.add(CUSTOMATTRIBUTES_DESCRIPTOR, application.getCustomAttributes());
objectEncoderContext.add(INTERNALKEYS_DESCRIPTOR, application.getInternalKeys());
objectEncoderContext.add(BACKGROUND_DESCRIPTOR, application.getBackground());
objectEncoderContext.add(CURRENTPROCESSDETAILS_DESCRIPTOR, application.getCurrentProcessDetails());
objectEncoderContext.add(APPPROCESSDETAILS_DESCRIPTOR, application.getAppProcessDetails());
objectEncoderContext.add(UIORIENTATION_DESCRIPTOR, application.getUiOrientation());
}
}
/* loaded from: classes3.dex */
public static final class CrashlyticsReportSessionEventApplicationExecutionBinaryImageEncoder implements ObjectEncoder<CrashlyticsReport.Session.Event.Application.Execution.BinaryImage> {
static final CrashlyticsReportSessionEventApplicationExecutionBinaryImageEncoder INSTANCE = new CrashlyticsReportSessionEventApplicationExecutionBinaryImageEncoder();
private static final FieldDescriptor BASEADDRESS_DESCRIPTOR = FieldDescriptor.of("baseAddress");
private static final FieldDescriptor SIZE_DESCRIPTOR = FieldDescriptor.of("size");
private static final FieldDescriptor NAME_DESCRIPTOR = FieldDescriptor.of(AppMeasurementSdk.ConditionalUserProperty.NAME);
private static final FieldDescriptor UUID_DESCRIPTOR = FieldDescriptor.of("uuid");
private CrashlyticsReportSessionEventApplicationExecutionBinaryImageEncoder() {
}
@Override // com.google.firebase.encoders.Encoder
public void encode(CrashlyticsReport.Session.Event.Application.Execution.BinaryImage binaryImage, ObjectEncoderContext objectEncoderContext) throws IOException {
objectEncoderContext.add(BASEADDRESS_DESCRIPTOR, binaryImage.getBaseAddress());
objectEncoderContext.add(SIZE_DESCRIPTOR, binaryImage.getSize());
objectEncoderContext.add(NAME_DESCRIPTOR, binaryImage.getName());
objectEncoderContext.add(UUID_DESCRIPTOR, binaryImage.getUuidUtf8Bytes());
}
}
/* loaded from: classes3.dex */
public static final class CrashlyticsReportSessionEventApplicationExecutionEncoder implements ObjectEncoder<CrashlyticsReport.Session.Event.Application.Execution> {
static final CrashlyticsReportSessionEventApplicationExecutionEncoder INSTANCE = new CrashlyticsReportSessionEventApplicationExecutionEncoder();
private static final FieldDescriptor THREADS_DESCRIPTOR = FieldDescriptor.of("threads");
private static final FieldDescriptor EXCEPTION_DESCRIPTOR = FieldDescriptor.of("exception");
private static final FieldDescriptor APPEXITINFO_DESCRIPTOR = FieldDescriptor.of("appExitInfo");
private static final FieldDescriptor SIGNAL_DESCRIPTOR = FieldDescriptor.of("signal");
private static final FieldDescriptor BINARIES_DESCRIPTOR = FieldDescriptor.of("binaries");
private CrashlyticsReportSessionEventApplicationExecutionEncoder() {
}
@Override // com.google.firebase.encoders.Encoder
public void encode(CrashlyticsReport.Session.Event.Application.Execution execution, ObjectEncoderContext objectEncoderContext) throws IOException {
objectEncoderContext.add(THREADS_DESCRIPTOR, execution.getThreads());
objectEncoderContext.add(EXCEPTION_DESCRIPTOR, execution.getException());
objectEncoderContext.add(APPEXITINFO_DESCRIPTOR, execution.getAppExitInfo());
objectEncoderContext.add(SIGNAL_DESCRIPTOR, execution.getSignal());
objectEncoderContext.add(BINARIES_DESCRIPTOR, execution.getBinaries());
}
}
/* loaded from: classes3.dex */
public static final class CrashlyticsReportSessionEventApplicationExecutionExceptionEncoder implements ObjectEncoder<CrashlyticsReport.Session.Event.Application.Execution.Exception> {
static final CrashlyticsReportSessionEventApplicationExecutionExceptionEncoder INSTANCE = new CrashlyticsReportSessionEventApplicationExecutionExceptionEncoder();
private static final FieldDescriptor TYPE_DESCRIPTOR = FieldDescriptor.of("type");
private static final FieldDescriptor REASON_DESCRIPTOR = FieldDescriptor.of("reason");
private static final FieldDescriptor FRAMES_DESCRIPTOR = FieldDescriptor.of("frames");
private static final FieldDescriptor CAUSEDBY_DESCRIPTOR = FieldDescriptor.of("causedBy");
private static final FieldDescriptor OVERFLOWCOUNT_DESCRIPTOR = FieldDescriptor.of("overflowCount");
private CrashlyticsReportSessionEventApplicationExecutionExceptionEncoder() {
}
@Override // com.google.firebase.encoders.Encoder
public void encode(CrashlyticsReport.Session.Event.Application.Execution.Exception exception, ObjectEncoderContext objectEncoderContext) throws IOException {
objectEncoderContext.add(TYPE_DESCRIPTOR, exception.getType());
objectEncoderContext.add(REASON_DESCRIPTOR, exception.getReason());
objectEncoderContext.add(FRAMES_DESCRIPTOR, exception.getFrames());
objectEncoderContext.add(CAUSEDBY_DESCRIPTOR, exception.getCausedBy());
objectEncoderContext.add(OVERFLOWCOUNT_DESCRIPTOR, exception.getOverflowCount());
}
}
/* loaded from: classes3.dex */
public static final class CrashlyticsReportSessionEventApplicationExecutionSignalEncoder implements ObjectEncoder<CrashlyticsReport.Session.Event.Application.Execution.Signal> {
static final CrashlyticsReportSessionEventApplicationExecutionSignalEncoder INSTANCE = new CrashlyticsReportSessionEventApplicationExecutionSignalEncoder();
private static final FieldDescriptor NAME_DESCRIPTOR = FieldDescriptor.of(AppMeasurementSdk.ConditionalUserProperty.NAME);
private static final FieldDescriptor CODE_DESCRIPTOR = FieldDescriptor.of("code");
private static final FieldDescriptor ADDRESS_DESCRIPTOR = FieldDescriptor.of("address");
private CrashlyticsReportSessionEventApplicationExecutionSignalEncoder() {
}
@Override // com.google.firebase.encoders.Encoder
public void encode(CrashlyticsReport.Session.Event.Application.Execution.Signal signal, ObjectEncoderContext objectEncoderContext) throws IOException {
objectEncoderContext.add(NAME_DESCRIPTOR, signal.getName());
objectEncoderContext.add(CODE_DESCRIPTOR, signal.getCode());
objectEncoderContext.add(ADDRESS_DESCRIPTOR, signal.getAddress());
}
}
/* loaded from: classes3.dex */
public static final class CrashlyticsReportSessionEventApplicationExecutionThreadEncoder implements ObjectEncoder<CrashlyticsReport.Session.Event.Application.Execution.Thread> {
static final CrashlyticsReportSessionEventApplicationExecutionThreadEncoder INSTANCE = new CrashlyticsReportSessionEventApplicationExecutionThreadEncoder();
private static final FieldDescriptor NAME_DESCRIPTOR = FieldDescriptor.of(AppMeasurementSdk.ConditionalUserProperty.NAME);
private static final FieldDescriptor IMPORTANCE_DESCRIPTOR = FieldDescriptor.of("importance");
private static final FieldDescriptor FRAMES_DESCRIPTOR = FieldDescriptor.of("frames");
private CrashlyticsReportSessionEventApplicationExecutionThreadEncoder() {
}
@Override // com.google.firebase.encoders.Encoder
public void encode(CrashlyticsReport.Session.Event.Application.Execution.Thread thread, ObjectEncoderContext objectEncoderContext) throws IOException {
objectEncoderContext.add(NAME_DESCRIPTOR, thread.getName());
objectEncoderContext.add(IMPORTANCE_DESCRIPTOR, thread.getImportance());
objectEncoderContext.add(FRAMES_DESCRIPTOR, thread.getFrames());
}
}
/* loaded from: classes3.dex */
public static final class CrashlyticsReportSessionEventApplicationExecutionThreadFrameEncoder implements ObjectEncoder<CrashlyticsReport.Session.Event.Application.Execution.Thread.Frame> {
static final CrashlyticsReportSessionEventApplicationExecutionThreadFrameEncoder INSTANCE = new CrashlyticsReportSessionEventApplicationExecutionThreadFrameEncoder();
private static final FieldDescriptor PC_DESCRIPTOR = FieldDescriptor.of("pc");
private static final FieldDescriptor SYMBOL_DESCRIPTOR = FieldDescriptor.of("symbol");
private static final FieldDescriptor FILE_DESCRIPTOR = FieldDescriptor.of("file");
private static final FieldDescriptor OFFSET_DESCRIPTOR = FieldDescriptor.of("offset");
private static final FieldDescriptor IMPORTANCE_DESCRIPTOR = FieldDescriptor.of("importance");
private CrashlyticsReportSessionEventApplicationExecutionThreadFrameEncoder() {
}
@Override // com.google.firebase.encoders.Encoder
public void encode(CrashlyticsReport.Session.Event.Application.Execution.Thread.Frame frame, ObjectEncoderContext objectEncoderContext) throws IOException {
objectEncoderContext.add(PC_DESCRIPTOR, frame.getPc());
objectEncoderContext.add(SYMBOL_DESCRIPTOR, frame.getSymbol());
objectEncoderContext.add(FILE_DESCRIPTOR, frame.getFile());
objectEncoderContext.add(OFFSET_DESCRIPTOR, frame.getOffset());
objectEncoderContext.add(IMPORTANCE_DESCRIPTOR, frame.getImportance());
}
}
/* loaded from: classes3.dex */
public static final class CrashlyticsReportSessionEventApplicationProcessDetailsEncoder implements ObjectEncoder<CrashlyticsReport.Session.Event.Application.ProcessDetails> {
static final CrashlyticsReportSessionEventApplicationProcessDetailsEncoder INSTANCE = new CrashlyticsReportSessionEventApplicationProcessDetailsEncoder();
private static final FieldDescriptor PROCESSNAME_DESCRIPTOR = FieldDescriptor.of("processName");
private static final FieldDescriptor PID_DESCRIPTOR = FieldDescriptor.of("pid");
private static final FieldDescriptor IMPORTANCE_DESCRIPTOR = FieldDescriptor.of("importance");
private static final FieldDescriptor DEFAULTPROCESS_DESCRIPTOR = FieldDescriptor.of("defaultProcess");
private CrashlyticsReportSessionEventApplicationProcessDetailsEncoder() {
}
@Override // com.google.firebase.encoders.Encoder
public void encode(CrashlyticsReport.Session.Event.Application.ProcessDetails processDetails, ObjectEncoderContext objectEncoderContext) throws IOException {
objectEncoderContext.add(PROCESSNAME_DESCRIPTOR, processDetails.getProcessName());
objectEncoderContext.add(PID_DESCRIPTOR, processDetails.getPid());
objectEncoderContext.add(IMPORTANCE_DESCRIPTOR, processDetails.getImportance());
objectEncoderContext.add(DEFAULTPROCESS_DESCRIPTOR, processDetails.isDefaultProcess());
}
}
/* loaded from: classes3.dex */
public static final class CrashlyticsReportSessionEventDeviceEncoder implements ObjectEncoder<CrashlyticsReport.Session.Event.Device> {
static final CrashlyticsReportSessionEventDeviceEncoder INSTANCE = new CrashlyticsReportSessionEventDeviceEncoder();
private static final FieldDescriptor BATTERYLEVEL_DESCRIPTOR = FieldDescriptor.of("batteryLevel");
private static final FieldDescriptor BATTERYVELOCITY_DESCRIPTOR = FieldDescriptor.of("batteryVelocity");
private static final FieldDescriptor PROXIMITYON_DESCRIPTOR = FieldDescriptor.of("proximityOn");
private static final FieldDescriptor ORIENTATION_DESCRIPTOR = FieldDescriptor.of("orientation");
private static final FieldDescriptor RAMUSED_DESCRIPTOR = FieldDescriptor.of("ramUsed");
private static final FieldDescriptor DISKUSED_DESCRIPTOR = FieldDescriptor.of("diskUsed");
private CrashlyticsReportSessionEventDeviceEncoder() {
}
@Override // com.google.firebase.encoders.Encoder
public void encode(CrashlyticsReport.Session.Event.Device device, ObjectEncoderContext objectEncoderContext) throws IOException {
objectEncoderContext.add(BATTERYLEVEL_DESCRIPTOR, device.getBatteryLevel());
objectEncoderContext.add(BATTERYVELOCITY_DESCRIPTOR, device.getBatteryVelocity());
objectEncoderContext.add(PROXIMITYON_DESCRIPTOR, device.isProximityOn());
objectEncoderContext.add(ORIENTATION_DESCRIPTOR, device.getOrientation());
objectEncoderContext.add(RAMUSED_DESCRIPTOR, device.getRamUsed());
objectEncoderContext.add(DISKUSED_DESCRIPTOR, device.getDiskUsed());
}
}
/* loaded from: classes3.dex */
public static final class CrashlyticsReportSessionEventEncoder implements ObjectEncoder<CrashlyticsReport.Session.Event> {
static final CrashlyticsReportSessionEventEncoder INSTANCE = new CrashlyticsReportSessionEventEncoder();
private static final FieldDescriptor TIMESTAMP_DESCRIPTOR = FieldDescriptor.of("timestamp");
private static final FieldDescriptor TYPE_DESCRIPTOR = FieldDescriptor.of("type");
private static final FieldDescriptor APP_DESCRIPTOR = FieldDescriptor.of("app");
private static final FieldDescriptor DEVICE_DESCRIPTOR = FieldDescriptor.of("device");
private static final FieldDescriptor LOG_DESCRIPTOR = FieldDescriptor.of("log");
private static final FieldDescriptor ROLLOUTS_DESCRIPTOR = FieldDescriptor.of("rollouts");
private CrashlyticsReportSessionEventEncoder() {
}
@Override // com.google.firebase.encoders.Encoder
public void encode(CrashlyticsReport.Session.Event event, ObjectEncoderContext objectEncoderContext) throws IOException {
objectEncoderContext.add(TIMESTAMP_DESCRIPTOR, event.getTimestamp());
objectEncoderContext.add(TYPE_DESCRIPTOR, event.getType());
objectEncoderContext.add(APP_DESCRIPTOR, event.getApp());
objectEncoderContext.add(DEVICE_DESCRIPTOR, event.getDevice());
objectEncoderContext.add(LOG_DESCRIPTOR, event.getLog());
objectEncoderContext.add(ROLLOUTS_DESCRIPTOR, event.getRollouts());
}
}
/* loaded from: classes3.dex */
public static final class CrashlyticsReportSessionEventLogEncoder implements ObjectEncoder<CrashlyticsReport.Session.Event.Log> {
static final CrashlyticsReportSessionEventLogEncoder INSTANCE = new CrashlyticsReportSessionEventLogEncoder();
private static final FieldDescriptor CONTENT_DESCRIPTOR = FieldDescriptor.of(FirebaseAnalytics.Param.CONTENT);
private CrashlyticsReportSessionEventLogEncoder() {
}
@Override // com.google.firebase.encoders.Encoder
public void encode(CrashlyticsReport.Session.Event.Log log, ObjectEncoderContext objectEncoderContext) throws IOException {
objectEncoderContext.add(CONTENT_DESCRIPTOR, log.getContent());
}
}
/* loaded from: classes3.dex */
public static final class CrashlyticsReportSessionEventRolloutAssignmentEncoder implements ObjectEncoder<CrashlyticsReport.Session.Event.RolloutAssignment> {
static final CrashlyticsReportSessionEventRolloutAssignmentEncoder INSTANCE = new CrashlyticsReportSessionEventRolloutAssignmentEncoder();
private static final FieldDescriptor ROLLOUTVARIANT_DESCRIPTOR = FieldDescriptor.of("rolloutVariant");
private static final FieldDescriptor PARAMETERKEY_DESCRIPTOR = FieldDescriptor.of("parameterKey");
private static final FieldDescriptor PARAMETERVALUE_DESCRIPTOR = FieldDescriptor.of("parameterValue");
private static final FieldDescriptor TEMPLATEVERSION_DESCRIPTOR = FieldDescriptor.of(RemoteConfigConstants.ResponseFieldKey.TEMPLATE_VERSION_NUMBER);
private CrashlyticsReportSessionEventRolloutAssignmentEncoder() {
}
@Override // com.google.firebase.encoders.Encoder
public void encode(CrashlyticsReport.Session.Event.RolloutAssignment rolloutAssignment, ObjectEncoderContext objectEncoderContext) throws IOException {
objectEncoderContext.add(ROLLOUTVARIANT_DESCRIPTOR, rolloutAssignment.getRolloutVariant());
objectEncoderContext.add(PARAMETERKEY_DESCRIPTOR, rolloutAssignment.getParameterKey());
objectEncoderContext.add(PARAMETERVALUE_DESCRIPTOR, rolloutAssignment.getParameterValue());
objectEncoderContext.add(TEMPLATEVERSION_DESCRIPTOR, rolloutAssignment.getTemplateVersion());
}
}
/* loaded from: classes3.dex */
public static final class CrashlyticsReportSessionEventRolloutAssignmentRolloutVariantEncoder implements ObjectEncoder<CrashlyticsReport.Session.Event.RolloutAssignment.RolloutVariant> {
static final CrashlyticsReportSessionEventRolloutAssignmentRolloutVariantEncoder INSTANCE = new CrashlyticsReportSessionEventRolloutAssignmentRolloutVariantEncoder();
private static final FieldDescriptor ROLLOUTID_DESCRIPTOR = FieldDescriptor.of(ConfigContainer.ROLLOUT_METADATA_ID);
private static final FieldDescriptor VARIANTID_DESCRIPTOR = FieldDescriptor.of("variantId");
private CrashlyticsReportSessionEventRolloutAssignmentRolloutVariantEncoder() {
}
@Override // com.google.firebase.encoders.Encoder
public void encode(CrashlyticsReport.Session.Event.RolloutAssignment.RolloutVariant rolloutVariant, ObjectEncoderContext objectEncoderContext) throws IOException {
objectEncoderContext.add(ROLLOUTID_DESCRIPTOR, rolloutVariant.getRolloutId());
objectEncoderContext.add(VARIANTID_DESCRIPTOR, rolloutVariant.getVariantId());
}
}
/* loaded from: classes3.dex */
public static final class CrashlyticsReportSessionEventRolloutsStateEncoder implements ObjectEncoder<CrashlyticsReport.Session.Event.RolloutsState> {
static final CrashlyticsReportSessionEventRolloutsStateEncoder INSTANCE = new CrashlyticsReportSessionEventRolloutsStateEncoder();
private static final FieldDescriptor ASSIGNMENTS_DESCRIPTOR = FieldDescriptor.of("assignments");
private CrashlyticsReportSessionEventRolloutsStateEncoder() {
}
@Override // com.google.firebase.encoders.Encoder
public void encode(CrashlyticsReport.Session.Event.RolloutsState rolloutsState, ObjectEncoderContext objectEncoderContext) throws IOException {
objectEncoderContext.add(ASSIGNMENTS_DESCRIPTOR, rolloutsState.getRolloutAssignments());
}
}
/* loaded from: classes3.dex */
public static final class CrashlyticsReportSessionOperatingSystemEncoder implements ObjectEncoder<CrashlyticsReport.Session.OperatingSystem> {
static final CrashlyticsReportSessionOperatingSystemEncoder INSTANCE = new CrashlyticsReportSessionOperatingSystemEncoder();
private static final FieldDescriptor PLATFORM_DESCRIPTOR = FieldDescriptor.of("platform");
private static final FieldDescriptor VERSION_DESCRIPTOR = FieldDescriptor.of("version");
private static final FieldDescriptor BUILDVERSION_DESCRIPTOR = FieldDescriptor.of("buildVersion");
private static final FieldDescriptor JAILBROKEN_DESCRIPTOR = FieldDescriptor.of("jailbroken");
private CrashlyticsReportSessionOperatingSystemEncoder() {
}
@Override // com.google.firebase.encoders.Encoder
public void encode(CrashlyticsReport.Session.OperatingSystem operatingSystem, ObjectEncoderContext objectEncoderContext) throws IOException {
objectEncoderContext.add(PLATFORM_DESCRIPTOR, operatingSystem.getPlatform());
objectEncoderContext.add(VERSION_DESCRIPTOR, operatingSystem.getVersion());
objectEncoderContext.add(BUILDVERSION_DESCRIPTOR, operatingSystem.getBuildVersion());
objectEncoderContext.add(JAILBROKEN_DESCRIPTOR, operatingSystem.isJailbroken());
}
}
/* loaded from: classes3.dex */
public static final class CrashlyticsReportSessionUserEncoder implements ObjectEncoder<CrashlyticsReport.Session.User> {
static final CrashlyticsReportSessionUserEncoder INSTANCE = new CrashlyticsReportSessionUserEncoder();
private static final FieldDescriptor IDENTIFIER_DESCRIPTOR = FieldDescriptor.of("identifier");
private CrashlyticsReportSessionUserEncoder() {
}
@Override // com.google.firebase.encoders.Encoder
public void encode(CrashlyticsReport.Session.User user, ObjectEncoderContext objectEncoderContext) throws IOException {
objectEncoderContext.add(IDENTIFIER_DESCRIPTOR, user.getIdentifier());
}
}
private AutoCrashlyticsReportEncoder() {
}
@Override // com.google.firebase.encoders.config.Configurator
public void configure(EncoderConfig<?> encoderConfig) {
CrashlyticsReportEncoder crashlyticsReportEncoder = CrashlyticsReportEncoder.INSTANCE;
encoderConfig.registerEncoder(CrashlyticsReport.class, crashlyticsReportEncoder);
encoderConfig.registerEncoder(AutoValue_CrashlyticsReport.class, crashlyticsReportEncoder);
CrashlyticsReportSessionEncoder crashlyticsReportSessionEncoder = CrashlyticsReportSessionEncoder.INSTANCE;
encoderConfig.registerEncoder(CrashlyticsReport.Session.class, crashlyticsReportSessionEncoder);
encoderConfig.registerEncoder(AutoValue_CrashlyticsReport_Session.class, crashlyticsReportSessionEncoder);
CrashlyticsReportSessionApplicationEncoder crashlyticsReportSessionApplicationEncoder = CrashlyticsReportSessionApplicationEncoder.INSTANCE;
encoderConfig.registerEncoder(CrashlyticsReport.Session.Application.class, crashlyticsReportSessionApplicationEncoder);
encoderConfig.registerEncoder(AutoValue_CrashlyticsReport_Session_Application.class, crashlyticsReportSessionApplicationEncoder);
CrashlyticsReportSessionApplicationOrganizationEncoder crashlyticsReportSessionApplicationOrganizationEncoder = CrashlyticsReportSessionApplicationOrganizationEncoder.INSTANCE;
encoderConfig.registerEncoder(CrashlyticsReport.Session.Application.Organization.class, crashlyticsReportSessionApplicationOrganizationEncoder);
encoderConfig.registerEncoder(AutoValue_CrashlyticsReport_Session_Application_Organization.class, crashlyticsReportSessionApplicationOrganizationEncoder);
CrashlyticsReportSessionUserEncoder crashlyticsReportSessionUserEncoder = CrashlyticsReportSessionUserEncoder.INSTANCE;
encoderConfig.registerEncoder(CrashlyticsReport.Session.User.class, crashlyticsReportSessionUserEncoder);
encoderConfig.registerEncoder(AutoValue_CrashlyticsReport_Session_User.class, crashlyticsReportSessionUserEncoder);
CrashlyticsReportSessionOperatingSystemEncoder crashlyticsReportSessionOperatingSystemEncoder = CrashlyticsReportSessionOperatingSystemEncoder.INSTANCE;
encoderConfig.registerEncoder(CrashlyticsReport.Session.OperatingSystem.class, crashlyticsReportSessionOperatingSystemEncoder);
encoderConfig.registerEncoder(AutoValue_CrashlyticsReport_Session_OperatingSystem.class, crashlyticsReportSessionOperatingSystemEncoder);
CrashlyticsReportSessionDeviceEncoder crashlyticsReportSessionDeviceEncoder = CrashlyticsReportSessionDeviceEncoder.INSTANCE;
encoderConfig.registerEncoder(CrashlyticsReport.Session.Device.class, crashlyticsReportSessionDeviceEncoder);
encoderConfig.registerEncoder(AutoValue_CrashlyticsReport_Session_Device.class, crashlyticsReportSessionDeviceEncoder);
CrashlyticsReportSessionEventEncoder crashlyticsReportSessionEventEncoder = CrashlyticsReportSessionEventEncoder.INSTANCE;
encoderConfig.registerEncoder(CrashlyticsReport.Session.Event.class, crashlyticsReportSessionEventEncoder);
encoderConfig.registerEncoder(AutoValue_CrashlyticsReport_Session_Event.class, crashlyticsReportSessionEventEncoder);
CrashlyticsReportSessionEventApplicationEncoder crashlyticsReportSessionEventApplicationEncoder = CrashlyticsReportSessionEventApplicationEncoder.INSTANCE;
encoderConfig.registerEncoder(CrashlyticsReport.Session.Event.Application.class, crashlyticsReportSessionEventApplicationEncoder);
encoderConfig.registerEncoder(AutoValue_CrashlyticsReport_Session_Event_Application.class, crashlyticsReportSessionEventApplicationEncoder);
CrashlyticsReportSessionEventApplicationExecutionEncoder crashlyticsReportSessionEventApplicationExecutionEncoder = CrashlyticsReportSessionEventApplicationExecutionEncoder.INSTANCE;
encoderConfig.registerEncoder(CrashlyticsReport.Session.Event.Application.Execution.class, crashlyticsReportSessionEventApplicationExecutionEncoder);
encoderConfig.registerEncoder(AutoValue_CrashlyticsReport_Session_Event_Application_Execution.class, crashlyticsReportSessionEventApplicationExecutionEncoder);
CrashlyticsReportSessionEventApplicationExecutionThreadEncoder crashlyticsReportSessionEventApplicationExecutionThreadEncoder = CrashlyticsReportSessionEventApplicationExecutionThreadEncoder.INSTANCE;
encoderConfig.registerEncoder(CrashlyticsReport.Session.Event.Application.Execution.Thread.class, crashlyticsReportSessionEventApplicationExecutionThreadEncoder);
encoderConfig.registerEncoder(AutoValue_CrashlyticsReport_Session_Event_Application_Execution_Thread.class, crashlyticsReportSessionEventApplicationExecutionThreadEncoder);
CrashlyticsReportSessionEventApplicationExecutionThreadFrameEncoder crashlyticsReportSessionEventApplicationExecutionThreadFrameEncoder = CrashlyticsReportSessionEventApplicationExecutionThreadFrameEncoder.INSTANCE;
encoderConfig.registerEncoder(CrashlyticsReport.Session.Event.Application.Execution.Thread.Frame.class, crashlyticsReportSessionEventApplicationExecutionThreadFrameEncoder);
encoderConfig.registerEncoder(AutoValue_CrashlyticsReport_Session_Event_Application_Execution_Thread_Frame.class, crashlyticsReportSessionEventApplicationExecutionThreadFrameEncoder);
CrashlyticsReportSessionEventApplicationExecutionExceptionEncoder crashlyticsReportSessionEventApplicationExecutionExceptionEncoder = CrashlyticsReportSessionEventApplicationExecutionExceptionEncoder.INSTANCE;
encoderConfig.registerEncoder(CrashlyticsReport.Session.Event.Application.Execution.Exception.class, crashlyticsReportSessionEventApplicationExecutionExceptionEncoder);
encoderConfig.registerEncoder(AutoValue_CrashlyticsReport_Session_Event_Application_Execution_Exception.class, crashlyticsReportSessionEventApplicationExecutionExceptionEncoder);
CrashlyticsReportApplicationExitInfoEncoder crashlyticsReportApplicationExitInfoEncoder = CrashlyticsReportApplicationExitInfoEncoder.INSTANCE;
encoderConfig.registerEncoder(CrashlyticsReport.ApplicationExitInfo.class, crashlyticsReportApplicationExitInfoEncoder);
encoderConfig.registerEncoder(AutoValue_CrashlyticsReport_ApplicationExitInfo.class, crashlyticsReportApplicationExitInfoEncoder);
CrashlyticsReportApplicationExitInfoBuildIdMappingForArchEncoder crashlyticsReportApplicationExitInfoBuildIdMappingForArchEncoder = CrashlyticsReportApplicationExitInfoBuildIdMappingForArchEncoder.INSTANCE;
encoderConfig.registerEncoder(CrashlyticsReport.ApplicationExitInfo.BuildIdMappingForArch.class, crashlyticsReportApplicationExitInfoBuildIdMappingForArchEncoder);
encoderConfig.registerEncoder(AutoValue_CrashlyticsReport_ApplicationExitInfo_BuildIdMappingForArch.class, crashlyticsReportApplicationExitInfoBuildIdMappingForArchEncoder);
CrashlyticsReportSessionEventApplicationExecutionSignalEncoder crashlyticsReportSessionEventApplicationExecutionSignalEncoder = CrashlyticsReportSessionEventApplicationExecutionSignalEncoder.INSTANCE;
encoderConfig.registerEncoder(CrashlyticsReport.Session.Event.Application.Execution.Signal.class, crashlyticsReportSessionEventApplicationExecutionSignalEncoder);
encoderConfig.registerEncoder(AutoValue_CrashlyticsReport_Session_Event_Application_Execution_Signal.class, crashlyticsReportSessionEventApplicationExecutionSignalEncoder);
CrashlyticsReportSessionEventApplicationExecutionBinaryImageEncoder crashlyticsReportSessionEventApplicationExecutionBinaryImageEncoder = CrashlyticsReportSessionEventApplicationExecutionBinaryImageEncoder.INSTANCE;
encoderConfig.registerEncoder(CrashlyticsReport.Session.Event.Application.Execution.BinaryImage.class, crashlyticsReportSessionEventApplicationExecutionBinaryImageEncoder);
encoderConfig.registerEncoder(AutoValue_CrashlyticsReport_Session_Event_Application_Execution_BinaryImage.class, crashlyticsReportSessionEventApplicationExecutionBinaryImageEncoder);
CrashlyticsReportCustomAttributeEncoder crashlyticsReportCustomAttributeEncoder = CrashlyticsReportCustomAttributeEncoder.INSTANCE;
encoderConfig.registerEncoder(CrashlyticsReport.CustomAttribute.class, crashlyticsReportCustomAttributeEncoder);
encoderConfig.registerEncoder(AutoValue_CrashlyticsReport_CustomAttribute.class, crashlyticsReportCustomAttributeEncoder);
CrashlyticsReportSessionEventApplicationProcessDetailsEncoder crashlyticsReportSessionEventApplicationProcessDetailsEncoder = CrashlyticsReportSessionEventApplicationProcessDetailsEncoder.INSTANCE;
encoderConfig.registerEncoder(CrashlyticsReport.Session.Event.Application.ProcessDetails.class, crashlyticsReportSessionEventApplicationProcessDetailsEncoder);
encoderConfig.registerEncoder(AutoValue_CrashlyticsReport_Session_Event_Application_ProcessDetails.class, crashlyticsReportSessionEventApplicationProcessDetailsEncoder);
CrashlyticsReportSessionEventDeviceEncoder crashlyticsReportSessionEventDeviceEncoder = CrashlyticsReportSessionEventDeviceEncoder.INSTANCE;
encoderConfig.registerEncoder(CrashlyticsReport.Session.Event.Device.class, crashlyticsReportSessionEventDeviceEncoder);
encoderConfig.registerEncoder(AutoValue_CrashlyticsReport_Session_Event_Device.class, crashlyticsReportSessionEventDeviceEncoder);
CrashlyticsReportSessionEventLogEncoder crashlyticsReportSessionEventLogEncoder = CrashlyticsReportSessionEventLogEncoder.INSTANCE;
encoderConfig.registerEncoder(CrashlyticsReport.Session.Event.Log.class, crashlyticsReportSessionEventLogEncoder);
encoderConfig.registerEncoder(AutoValue_CrashlyticsReport_Session_Event_Log.class, crashlyticsReportSessionEventLogEncoder);
CrashlyticsReportSessionEventRolloutsStateEncoder crashlyticsReportSessionEventRolloutsStateEncoder = CrashlyticsReportSessionEventRolloutsStateEncoder.INSTANCE;
encoderConfig.registerEncoder(CrashlyticsReport.Session.Event.RolloutsState.class, crashlyticsReportSessionEventRolloutsStateEncoder);
encoderConfig.registerEncoder(AutoValue_CrashlyticsReport_Session_Event_RolloutsState.class, crashlyticsReportSessionEventRolloutsStateEncoder);
CrashlyticsReportSessionEventRolloutAssignmentEncoder crashlyticsReportSessionEventRolloutAssignmentEncoder = CrashlyticsReportSessionEventRolloutAssignmentEncoder.INSTANCE;
encoderConfig.registerEncoder(CrashlyticsReport.Session.Event.RolloutAssignment.class, crashlyticsReportSessionEventRolloutAssignmentEncoder);
encoderConfig.registerEncoder(AutoValue_CrashlyticsReport_Session_Event_RolloutAssignment.class, crashlyticsReportSessionEventRolloutAssignmentEncoder);
CrashlyticsReportSessionEventRolloutAssignmentRolloutVariantEncoder crashlyticsReportSessionEventRolloutAssignmentRolloutVariantEncoder = CrashlyticsReportSessionEventRolloutAssignmentRolloutVariantEncoder.INSTANCE;
encoderConfig.registerEncoder(CrashlyticsReport.Session.Event.RolloutAssignment.RolloutVariant.class, crashlyticsReportSessionEventRolloutAssignmentRolloutVariantEncoder);
encoderConfig.registerEncoder(AutoValue_CrashlyticsReport_Session_Event_RolloutAssignment_RolloutVariant.class, crashlyticsReportSessionEventRolloutAssignmentRolloutVariantEncoder);
CrashlyticsReportFilesPayloadEncoder crashlyticsReportFilesPayloadEncoder = CrashlyticsReportFilesPayloadEncoder.INSTANCE;
encoderConfig.registerEncoder(CrashlyticsReport.FilesPayload.class, crashlyticsReportFilesPayloadEncoder);
encoderConfig.registerEncoder(AutoValue_CrashlyticsReport_FilesPayload.class, crashlyticsReportFilesPayloadEncoder);
CrashlyticsReportFilesPayloadFileEncoder crashlyticsReportFilesPayloadFileEncoder = CrashlyticsReportFilesPayloadFileEncoder.INSTANCE;
encoderConfig.registerEncoder(CrashlyticsReport.FilesPayload.File.class, crashlyticsReportFilesPayloadFileEncoder);
encoderConfig.registerEncoder(AutoValue_CrashlyticsReport_FilesPayload_File.class, crashlyticsReportFilesPayloadFileEncoder);
}
}

View File

@@ -0,0 +1,266 @@
package com.google.firebase.crashlytics.internal.model;
import C.w;
import com.google.firebase.crashlytics.internal.model.CrashlyticsReport;
/* loaded from: classes3.dex */
final class AutoValue_CrashlyticsReport extends CrashlyticsReport {
private final CrashlyticsReport.ApplicationExitInfo appExitInfo;
private final String appQualitySessionId;
private final String buildVersion;
private final String displayVersion;
private final String firebaseInstallationId;
private final String gmpAppId;
private final String installationUuid;
private final CrashlyticsReport.FilesPayload ndkPayload;
private final int platform;
private final String sdkVersion;
private final CrashlyticsReport.Session session;
/* loaded from: classes3.dex */
public static final class Builder extends CrashlyticsReport.Builder {
private CrashlyticsReport.ApplicationExitInfo appExitInfo;
private String appQualitySessionId;
private String buildVersion;
private String displayVersion;
private String firebaseInstallationId;
private String gmpAppId;
private String installationUuid;
private CrashlyticsReport.FilesPayload ndkPayload;
private Integer platform;
private String sdkVersion;
private CrashlyticsReport.Session session;
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Builder
public CrashlyticsReport build() {
String str = this.sdkVersion == null ? " sdkVersion" : "";
if (this.gmpAppId == null) {
str = w.n(str, " gmpAppId");
}
if (this.platform == null) {
str = w.n(str, " platform");
}
if (this.installationUuid == null) {
str = w.n(str, " installationUuid");
}
if (this.buildVersion == null) {
str = w.n(str, " buildVersion");
}
if (this.displayVersion == null) {
str = w.n(str, " displayVersion");
}
if (str.isEmpty()) {
return new AutoValue_CrashlyticsReport(this.sdkVersion, this.gmpAppId, this.platform.intValue(), this.installationUuid, this.firebaseInstallationId, this.appQualitySessionId, this.buildVersion, this.displayVersion, this.session, this.ndkPayload, this.appExitInfo);
}
throw new IllegalStateException("Missing required properties:".concat(str));
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Builder
public CrashlyticsReport.Builder setAppExitInfo(CrashlyticsReport.ApplicationExitInfo applicationExitInfo) {
this.appExitInfo = applicationExitInfo;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Builder
public CrashlyticsReport.Builder setAppQualitySessionId(String str) {
this.appQualitySessionId = str;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Builder
public CrashlyticsReport.Builder setBuildVersion(String str) {
if (str == null) {
throw new NullPointerException("Null buildVersion");
}
this.buildVersion = str;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Builder
public CrashlyticsReport.Builder setDisplayVersion(String str) {
if (str == null) {
throw new NullPointerException("Null displayVersion");
}
this.displayVersion = str;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Builder
public CrashlyticsReport.Builder setFirebaseInstallationId(String str) {
this.firebaseInstallationId = str;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Builder
public CrashlyticsReport.Builder setGmpAppId(String str) {
if (str == null) {
throw new NullPointerException("Null gmpAppId");
}
this.gmpAppId = str;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Builder
public CrashlyticsReport.Builder setInstallationUuid(String str) {
if (str == null) {
throw new NullPointerException("Null installationUuid");
}
this.installationUuid = str;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Builder
public CrashlyticsReport.Builder setNdkPayload(CrashlyticsReport.FilesPayload filesPayload) {
this.ndkPayload = filesPayload;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Builder
public CrashlyticsReport.Builder setPlatform(int i) {
this.platform = Integer.valueOf(i);
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Builder
public CrashlyticsReport.Builder setSdkVersion(String str) {
if (str == null) {
throw new NullPointerException("Null sdkVersion");
}
this.sdkVersion = str;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Builder
public CrashlyticsReport.Builder setSession(CrashlyticsReport.Session session) {
this.session = session;
return this;
}
public Builder() {
}
private Builder(CrashlyticsReport crashlyticsReport) {
this.sdkVersion = crashlyticsReport.getSdkVersion();
this.gmpAppId = crashlyticsReport.getGmpAppId();
this.platform = Integer.valueOf(crashlyticsReport.getPlatform());
this.installationUuid = crashlyticsReport.getInstallationUuid();
this.firebaseInstallationId = crashlyticsReport.getFirebaseInstallationId();
this.appQualitySessionId = crashlyticsReport.getAppQualitySessionId();
this.buildVersion = crashlyticsReport.getBuildVersion();
this.displayVersion = crashlyticsReport.getDisplayVersion();
this.session = crashlyticsReport.getSession();
this.ndkPayload = crashlyticsReport.getNdkPayload();
this.appExitInfo = crashlyticsReport.getAppExitInfo();
}
}
public boolean equals(Object obj) {
String str;
String str2;
CrashlyticsReport.Session session;
CrashlyticsReport.FilesPayload filesPayload;
CrashlyticsReport.ApplicationExitInfo applicationExitInfo;
if (obj == this) {
return true;
}
if (obj instanceof CrashlyticsReport) {
CrashlyticsReport crashlyticsReport = (CrashlyticsReport) obj;
if (this.sdkVersion.equals(crashlyticsReport.getSdkVersion()) && this.gmpAppId.equals(crashlyticsReport.getGmpAppId()) && this.platform == crashlyticsReport.getPlatform() && this.installationUuid.equals(crashlyticsReport.getInstallationUuid()) && ((str = this.firebaseInstallationId) != null ? str.equals(crashlyticsReport.getFirebaseInstallationId()) : crashlyticsReport.getFirebaseInstallationId() == null) && ((str2 = this.appQualitySessionId) != null ? str2.equals(crashlyticsReport.getAppQualitySessionId()) : crashlyticsReport.getAppQualitySessionId() == null) && this.buildVersion.equals(crashlyticsReport.getBuildVersion()) && this.displayVersion.equals(crashlyticsReport.getDisplayVersion()) && ((session = this.session) != null ? session.equals(crashlyticsReport.getSession()) : crashlyticsReport.getSession() == null) && ((filesPayload = this.ndkPayload) != null ? filesPayload.equals(crashlyticsReport.getNdkPayload()) : crashlyticsReport.getNdkPayload() == null) && ((applicationExitInfo = this.appExitInfo) != null ? applicationExitInfo.equals(crashlyticsReport.getAppExitInfo()) : crashlyticsReport.getAppExitInfo() == null)) {
return true;
}
}
return false;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport
public CrashlyticsReport.ApplicationExitInfo getAppExitInfo() {
return this.appExitInfo;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport
public String getAppQualitySessionId() {
return this.appQualitySessionId;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport
public String getBuildVersion() {
return this.buildVersion;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport
public String getDisplayVersion() {
return this.displayVersion;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport
public String getFirebaseInstallationId() {
return this.firebaseInstallationId;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport
public String getGmpAppId() {
return this.gmpAppId;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport
public String getInstallationUuid() {
return this.installationUuid;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport
public CrashlyticsReport.FilesPayload getNdkPayload() {
return this.ndkPayload;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport
public int getPlatform() {
return this.platform;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport
public String getSdkVersion() {
return this.sdkVersion;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport
public CrashlyticsReport.Session getSession() {
return this.session;
}
public int hashCode() {
int hashCode = (((((((this.sdkVersion.hashCode() ^ 1000003) * 1000003) ^ this.gmpAppId.hashCode()) * 1000003) ^ this.platform) * 1000003) ^ this.installationUuid.hashCode()) * 1000003;
String str = this.firebaseInstallationId;
int hashCode2 = (hashCode ^ (str == null ? 0 : str.hashCode())) * 1000003;
String str2 = this.appQualitySessionId;
int hashCode3 = (((((hashCode2 ^ (str2 == null ? 0 : str2.hashCode())) * 1000003) ^ this.buildVersion.hashCode()) * 1000003) ^ this.displayVersion.hashCode()) * 1000003;
CrashlyticsReport.Session session = this.session;
int hashCode4 = (hashCode3 ^ (session == null ? 0 : session.hashCode())) * 1000003;
CrashlyticsReport.FilesPayload filesPayload = this.ndkPayload;
int hashCode5 = (hashCode4 ^ (filesPayload == null ? 0 : filesPayload.hashCode())) * 1000003;
CrashlyticsReport.ApplicationExitInfo applicationExitInfo = this.appExitInfo;
return hashCode5 ^ (applicationExitInfo != null ? applicationExitInfo.hashCode() : 0);
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport
public CrashlyticsReport.Builder toBuilder() {
return new Builder(this);
}
public String toString() {
return "CrashlyticsReport{sdkVersion=" + this.sdkVersion + ", gmpAppId=" + this.gmpAppId + ", platform=" + this.platform + ", installationUuid=" + this.installationUuid + ", firebaseInstallationId=" + this.firebaseInstallationId + ", appQualitySessionId=" + this.appQualitySessionId + ", buildVersion=" + this.buildVersion + ", displayVersion=" + this.displayVersion + ", session=" + this.session + ", ndkPayload=" + this.ndkPayload + ", appExitInfo=" + this.appExitInfo + "}";
}
private AutoValue_CrashlyticsReport(String str, String str2, int i, String str3, String str4, String str5, String str6, String str7, CrashlyticsReport.Session session, CrashlyticsReport.FilesPayload filesPayload, CrashlyticsReport.ApplicationExitInfo applicationExitInfo) {
this.sdkVersion = str;
this.gmpAppId = str2;
this.platform = i;
this.installationUuid = str3;
this.firebaseInstallationId = str4;
this.appQualitySessionId = str5;
this.buildVersion = str6;
this.displayVersion = str7;
this.session = session;
this.ndkPayload = filesPayload;
this.appExitInfo = applicationExitInfo;
}
}

View File

@@ -0,0 +1,205 @@
package com.google.firebase.crashlytics.internal.model;
import C.w;
import com.google.firebase.crashlytics.internal.model.CrashlyticsReport;
import java.util.List;
/* loaded from: classes3.dex */
final class AutoValue_CrashlyticsReport_ApplicationExitInfo extends CrashlyticsReport.ApplicationExitInfo {
private final List<CrashlyticsReport.ApplicationExitInfo.BuildIdMappingForArch> buildIdMappingForArch;
private final int importance;
private final int pid;
private final String processName;
private final long pss;
private final int reasonCode;
private final long rss;
private final long timestamp;
private final String traceFile;
/* loaded from: classes3.dex */
public static final class Builder extends CrashlyticsReport.ApplicationExitInfo.Builder {
private List<CrashlyticsReport.ApplicationExitInfo.BuildIdMappingForArch> buildIdMappingForArch;
private Integer importance;
private Integer pid;
private String processName;
private Long pss;
private Integer reasonCode;
private Long rss;
private Long timestamp;
private String traceFile;
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.ApplicationExitInfo.Builder
public CrashlyticsReport.ApplicationExitInfo build() {
String str = this.pid == null ? " pid" : "";
if (this.processName == null) {
str = w.n(str, " processName");
}
if (this.reasonCode == null) {
str = w.n(str, " reasonCode");
}
if (this.importance == null) {
str = w.n(str, " importance");
}
if (this.pss == null) {
str = w.n(str, " pss");
}
if (this.rss == null) {
str = w.n(str, " rss");
}
if (this.timestamp == null) {
str = w.n(str, " timestamp");
}
if (str.isEmpty()) {
return new AutoValue_CrashlyticsReport_ApplicationExitInfo(this.pid.intValue(), this.processName, this.reasonCode.intValue(), this.importance.intValue(), this.pss.longValue(), this.rss.longValue(), this.timestamp.longValue(), this.traceFile, this.buildIdMappingForArch);
}
throw new IllegalStateException("Missing required properties:".concat(str));
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.ApplicationExitInfo.Builder
public CrashlyticsReport.ApplicationExitInfo.Builder setBuildIdMappingForArch(List<CrashlyticsReport.ApplicationExitInfo.BuildIdMappingForArch> list) {
this.buildIdMappingForArch = list;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.ApplicationExitInfo.Builder
public CrashlyticsReport.ApplicationExitInfo.Builder setImportance(int i) {
this.importance = Integer.valueOf(i);
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.ApplicationExitInfo.Builder
public CrashlyticsReport.ApplicationExitInfo.Builder setPid(int i) {
this.pid = Integer.valueOf(i);
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.ApplicationExitInfo.Builder
public CrashlyticsReport.ApplicationExitInfo.Builder setProcessName(String str) {
if (str == null) {
throw new NullPointerException("Null processName");
}
this.processName = str;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.ApplicationExitInfo.Builder
public CrashlyticsReport.ApplicationExitInfo.Builder setPss(long j4) {
this.pss = Long.valueOf(j4);
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.ApplicationExitInfo.Builder
public CrashlyticsReport.ApplicationExitInfo.Builder setReasonCode(int i) {
this.reasonCode = Integer.valueOf(i);
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.ApplicationExitInfo.Builder
public CrashlyticsReport.ApplicationExitInfo.Builder setRss(long j4) {
this.rss = Long.valueOf(j4);
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.ApplicationExitInfo.Builder
public CrashlyticsReport.ApplicationExitInfo.Builder setTimestamp(long j4) {
this.timestamp = Long.valueOf(j4);
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.ApplicationExitInfo.Builder
public CrashlyticsReport.ApplicationExitInfo.Builder setTraceFile(String str) {
this.traceFile = str;
return this;
}
}
public boolean equals(Object obj) {
String str;
List<CrashlyticsReport.ApplicationExitInfo.BuildIdMappingForArch> list;
if (obj == this) {
return true;
}
if (obj instanceof CrashlyticsReport.ApplicationExitInfo) {
CrashlyticsReport.ApplicationExitInfo applicationExitInfo = (CrashlyticsReport.ApplicationExitInfo) obj;
if (this.pid == applicationExitInfo.getPid() && this.processName.equals(applicationExitInfo.getProcessName()) && this.reasonCode == applicationExitInfo.getReasonCode() && this.importance == applicationExitInfo.getImportance() && this.pss == applicationExitInfo.getPss() && this.rss == applicationExitInfo.getRss() && this.timestamp == applicationExitInfo.getTimestamp() && ((str = this.traceFile) != null ? str.equals(applicationExitInfo.getTraceFile()) : applicationExitInfo.getTraceFile() == null) && ((list = this.buildIdMappingForArch) != null ? list.equals(applicationExitInfo.getBuildIdMappingForArch()) : applicationExitInfo.getBuildIdMappingForArch() == null)) {
return true;
}
}
return false;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.ApplicationExitInfo
public List<CrashlyticsReport.ApplicationExitInfo.BuildIdMappingForArch> getBuildIdMappingForArch() {
return this.buildIdMappingForArch;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.ApplicationExitInfo
public int getImportance() {
return this.importance;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.ApplicationExitInfo
public int getPid() {
return this.pid;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.ApplicationExitInfo
public String getProcessName() {
return this.processName;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.ApplicationExitInfo
public long getPss() {
return this.pss;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.ApplicationExitInfo
public int getReasonCode() {
return this.reasonCode;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.ApplicationExitInfo
public long getRss() {
return this.rss;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.ApplicationExitInfo
public long getTimestamp() {
return this.timestamp;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.ApplicationExitInfo
public String getTraceFile() {
return this.traceFile;
}
public int hashCode() {
int hashCode = (((((((this.pid ^ 1000003) * 1000003) ^ this.processName.hashCode()) * 1000003) ^ this.reasonCode) * 1000003) ^ this.importance) * 1000003;
long j4 = this.pss;
int i = (hashCode ^ ((int) (j4 ^ (j4 >>> 32)))) * 1000003;
long j5 = this.rss;
int i4 = (i ^ ((int) (j5 ^ (j5 >>> 32)))) * 1000003;
long j6 = this.timestamp;
int i5 = (i4 ^ ((int) (j6 ^ (j6 >>> 32)))) * 1000003;
String str = this.traceFile;
int hashCode2 = (i5 ^ (str == null ? 0 : str.hashCode())) * 1000003;
List<CrashlyticsReport.ApplicationExitInfo.BuildIdMappingForArch> list = this.buildIdMappingForArch;
return hashCode2 ^ (list != null ? list.hashCode() : 0);
}
public String toString() {
return "ApplicationExitInfo{pid=" + this.pid + ", processName=" + this.processName + ", reasonCode=" + this.reasonCode + ", importance=" + this.importance + ", pss=" + this.pss + ", rss=" + this.rss + ", timestamp=" + this.timestamp + ", traceFile=" + this.traceFile + ", buildIdMappingForArch=" + this.buildIdMappingForArch + "}";
}
private AutoValue_CrashlyticsReport_ApplicationExitInfo(int i, String str, int i4, int i5, long j4, long j5, long j6, String str2, List<CrashlyticsReport.ApplicationExitInfo.BuildIdMappingForArch> list) {
this.pid = i;
this.processName = str;
this.reasonCode = i4;
this.importance = i5;
this.pss = j4;
this.rss = j5;
this.timestamp = j6;
this.traceFile = str2;
this.buildIdMappingForArch = list;
}
}

View File

@@ -0,0 +1,107 @@
package com.google.firebase.crashlytics.internal.model;
import C.w;
import com.google.firebase.crashlytics.internal.model.CrashlyticsReport;
/* loaded from: classes3.dex */
final class AutoValue_CrashlyticsReport_ApplicationExitInfo_BuildIdMappingForArch extends CrashlyticsReport.ApplicationExitInfo.BuildIdMappingForArch {
private final String arch;
private final String buildId;
private final String libraryName;
/* loaded from: classes3.dex */
public static final class Builder extends CrashlyticsReport.ApplicationExitInfo.BuildIdMappingForArch.Builder {
private String arch;
private String buildId;
private String libraryName;
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.ApplicationExitInfo.BuildIdMappingForArch.Builder
public CrashlyticsReport.ApplicationExitInfo.BuildIdMappingForArch build() {
String str = this.arch == null ? " arch" : "";
if (this.libraryName == null) {
str = w.n(str, " libraryName");
}
if (this.buildId == null) {
str = w.n(str, " buildId");
}
if (str.isEmpty()) {
return new AutoValue_CrashlyticsReport_ApplicationExitInfo_BuildIdMappingForArch(this.arch, this.libraryName, this.buildId);
}
throw new IllegalStateException("Missing required properties:".concat(str));
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.ApplicationExitInfo.BuildIdMappingForArch.Builder
public CrashlyticsReport.ApplicationExitInfo.BuildIdMappingForArch.Builder setArch(String str) {
if (str == null) {
throw new NullPointerException("Null arch");
}
this.arch = str;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.ApplicationExitInfo.BuildIdMappingForArch.Builder
public CrashlyticsReport.ApplicationExitInfo.BuildIdMappingForArch.Builder setBuildId(String str) {
if (str == null) {
throw new NullPointerException("Null buildId");
}
this.buildId = str;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.ApplicationExitInfo.BuildIdMappingForArch.Builder
public CrashlyticsReport.ApplicationExitInfo.BuildIdMappingForArch.Builder setLibraryName(String str) {
if (str == null) {
throw new NullPointerException("Null libraryName");
}
this.libraryName = str;
return this;
}
}
public boolean equals(Object obj) {
if (obj == this) {
return true;
}
if (obj instanceof CrashlyticsReport.ApplicationExitInfo.BuildIdMappingForArch) {
CrashlyticsReport.ApplicationExitInfo.BuildIdMappingForArch buildIdMappingForArch = (CrashlyticsReport.ApplicationExitInfo.BuildIdMappingForArch) obj;
if (this.arch.equals(buildIdMappingForArch.getArch()) && this.libraryName.equals(buildIdMappingForArch.getLibraryName()) && this.buildId.equals(buildIdMappingForArch.getBuildId())) {
return true;
}
}
return false;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.ApplicationExitInfo.BuildIdMappingForArch
public String getArch() {
return this.arch;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.ApplicationExitInfo.BuildIdMappingForArch
public String getBuildId() {
return this.buildId;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.ApplicationExitInfo.BuildIdMappingForArch
public String getLibraryName() {
return this.libraryName;
}
public int hashCode() {
return this.buildId.hashCode() ^ ((((this.arch.hashCode() ^ 1000003) * 1000003) ^ this.libraryName.hashCode()) * 1000003);
}
public String toString() {
StringBuilder sb = new StringBuilder("BuildIdMappingForArch{arch=");
sb.append(this.arch);
sb.append(", libraryName=");
sb.append(this.libraryName);
sb.append(", buildId=");
return w.r(sb, this.buildId, "}");
}
private AutoValue_CrashlyticsReport_ApplicationExitInfo_BuildIdMappingForArch(String str, String str2, String str3) {
this.arch = str;
this.libraryName = str2;
this.buildId = str3;
}
}

View File

@@ -0,0 +1,85 @@
package com.google.firebase.crashlytics.internal.model;
import C.w;
import com.google.firebase.crashlytics.internal.model.CrashlyticsReport;
/* loaded from: classes3.dex */
final class AutoValue_CrashlyticsReport_CustomAttribute extends CrashlyticsReport.CustomAttribute {
private final String key;
private final String value;
/* loaded from: classes3.dex */
public static final class Builder extends CrashlyticsReport.CustomAttribute.Builder {
private String key;
private String value;
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.CustomAttribute.Builder
public CrashlyticsReport.CustomAttribute build() {
String str = this.key == null ? " key" : "";
if (this.value == null) {
str = w.n(str, " value");
}
if (str.isEmpty()) {
return new AutoValue_CrashlyticsReport_CustomAttribute(this.key, this.value);
}
throw new IllegalStateException("Missing required properties:".concat(str));
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.CustomAttribute.Builder
public CrashlyticsReport.CustomAttribute.Builder setKey(String str) {
if (str == null) {
throw new NullPointerException("Null key");
}
this.key = str;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.CustomAttribute.Builder
public CrashlyticsReport.CustomAttribute.Builder setValue(String str) {
if (str == null) {
throw new NullPointerException("Null value");
}
this.value = str;
return this;
}
}
public boolean equals(Object obj) {
if (obj == this) {
return true;
}
if (obj instanceof CrashlyticsReport.CustomAttribute) {
CrashlyticsReport.CustomAttribute customAttribute = (CrashlyticsReport.CustomAttribute) obj;
if (this.key.equals(customAttribute.getKey()) && this.value.equals(customAttribute.getValue())) {
return true;
}
}
return false;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.CustomAttribute
public String getKey() {
return this.key;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.CustomAttribute
public String getValue() {
return this.value;
}
public int hashCode() {
return this.value.hashCode() ^ ((this.key.hashCode() ^ 1000003) * 1000003);
}
public String toString() {
StringBuilder sb = new StringBuilder("CustomAttribute{key=");
sb.append(this.key);
sb.append(", value=");
return w.r(sb, this.value, "}");
}
private AutoValue_CrashlyticsReport_CustomAttribute(String str, String str2) {
this.key = str;
this.value = str2;
}
}

View File

@@ -0,0 +1,96 @@
package com.google.firebase.crashlytics.internal.model;
import C.w;
import com.google.firebase.crashlytics.internal.model.CrashlyticsReport;
import java.util.List;
/* loaded from: classes3.dex */
final class AutoValue_CrashlyticsReport_FilesPayload extends CrashlyticsReport.FilesPayload {
private final List<CrashlyticsReport.FilesPayload.File> files;
private final String orgId;
/* loaded from: classes3.dex */
public static final class Builder extends CrashlyticsReport.FilesPayload.Builder {
private List<CrashlyticsReport.FilesPayload.File> files;
private String orgId;
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.FilesPayload.Builder
public CrashlyticsReport.FilesPayload build() {
String str = this.files == null ? " files" : "";
if (str.isEmpty()) {
return new AutoValue_CrashlyticsReport_FilesPayload(this.files, this.orgId);
}
throw new IllegalStateException("Missing required properties:".concat(str));
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.FilesPayload.Builder
public CrashlyticsReport.FilesPayload.Builder setFiles(List<CrashlyticsReport.FilesPayload.File> list) {
if (list == null) {
throw new NullPointerException("Null files");
}
this.files = list;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.FilesPayload.Builder
public CrashlyticsReport.FilesPayload.Builder setOrgId(String str) {
this.orgId = str;
return this;
}
public Builder() {
}
private Builder(CrashlyticsReport.FilesPayload filesPayload) {
this.files = filesPayload.getFiles();
this.orgId = filesPayload.getOrgId();
}
}
public boolean equals(Object obj) {
String str;
if (obj == this) {
return true;
}
if (obj instanceof CrashlyticsReport.FilesPayload) {
CrashlyticsReport.FilesPayload filesPayload = (CrashlyticsReport.FilesPayload) obj;
if (this.files.equals(filesPayload.getFiles()) && ((str = this.orgId) != null ? str.equals(filesPayload.getOrgId()) : filesPayload.getOrgId() == null)) {
return true;
}
}
return false;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.FilesPayload
public List<CrashlyticsReport.FilesPayload.File> getFiles() {
return this.files;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.FilesPayload
public String getOrgId() {
return this.orgId;
}
public int hashCode() {
int hashCode = (this.files.hashCode() ^ 1000003) * 1000003;
String str = this.orgId;
return (str == null ? 0 : str.hashCode()) ^ hashCode;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.FilesPayload
public CrashlyticsReport.FilesPayload.Builder toBuilder() {
return new Builder(this);
}
public String toString() {
StringBuilder sb = new StringBuilder("FilesPayload{files=");
sb.append(this.files);
sb.append(", orgId=");
return w.r(sb, this.orgId, "}");
}
private AutoValue_CrashlyticsReport_FilesPayload(List<CrashlyticsReport.FilesPayload.File> list, String str) {
this.files = list;
this.orgId = str;
}
}

View File

@@ -0,0 +1,85 @@
package com.google.firebase.crashlytics.internal.model;
import C.w;
import com.google.firebase.crashlytics.internal.model.CrashlyticsReport;
import java.util.Arrays;
/* loaded from: classes3.dex */
final class AutoValue_CrashlyticsReport_FilesPayload_File extends CrashlyticsReport.FilesPayload.File {
private final byte[] contents;
private final String filename;
/* loaded from: classes3.dex */
public static final class Builder extends CrashlyticsReport.FilesPayload.File.Builder {
private byte[] contents;
private String filename;
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.FilesPayload.File.Builder
public CrashlyticsReport.FilesPayload.File build() {
String str = this.filename == null ? " filename" : "";
if (this.contents == null) {
str = w.n(str, " contents");
}
if (str.isEmpty()) {
return new AutoValue_CrashlyticsReport_FilesPayload_File(this.filename, this.contents);
}
throw new IllegalStateException("Missing required properties:".concat(str));
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.FilesPayload.File.Builder
public CrashlyticsReport.FilesPayload.File.Builder setContents(byte[] bArr) {
if (bArr == null) {
throw new NullPointerException("Null contents");
}
this.contents = bArr;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.FilesPayload.File.Builder
public CrashlyticsReport.FilesPayload.File.Builder setFilename(String str) {
if (str == null) {
throw new NullPointerException("Null filename");
}
this.filename = str;
return this;
}
}
public boolean equals(Object obj) {
if (obj == this) {
return true;
}
if (obj instanceof CrashlyticsReport.FilesPayload.File) {
CrashlyticsReport.FilesPayload.File file = (CrashlyticsReport.FilesPayload.File) obj;
if (this.filename.equals(file.getFilename())) {
if (Arrays.equals(this.contents, file instanceof AutoValue_CrashlyticsReport_FilesPayload_File ? ((AutoValue_CrashlyticsReport_FilesPayload_File) file).contents : file.getContents())) {
return true;
}
}
}
return false;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.FilesPayload.File
public byte[] getContents() {
return this.contents;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.FilesPayload.File
public String getFilename() {
return this.filename;
}
public int hashCode() {
return Arrays.hashCode(this.contents) ^ ((this.filename.hashCode() ^ 1000003) * 1000003);
}
public String toString() {
return "File{filename=" + this.filename + ", contents=" + Arrays.toString(this.contents) + "}";
}
private AutoValue_CrashlyticsReport_FilesPayload_File(String str, byte[] bArr) {
this.filename = str;
this.contents = bArr;
}
}

View File

@@ -0,0 +1,307 @@
package com.google.firebase.crashlytics.internal.model;
import C.w;
import com.google.android.gms.measurement.internal.a;
import com.google.firebase.crashlytics.internal.model.CrashlyticsReport;
import com.google.firebase.encoders.annotations.Encodable;
import java.util.List;
/* loaded from: classes3.dex */
final class AutoValue_CrashlyticsReport_Session extends CrashlyticsReport.Session {
private final CrashlyticsReport.Session.Application app;
private final String appQualitySessionId;
private final boolean crashed;
private final CrashlyticsReport.Session.Device device;
private final Long endedAt;
private final List<CrashlyticsReport.Session.Event> events;
private final String generator;
private final int generatorType;
private final String identifier;
private final CrashlyticsReport.Session.OperatingSystem os;
private final long startedAt;
private final CrashlyticsReport.Session.User user;
/* loaded from: classes3.dex */
public static final class Builder extends CrashlyticsReport.Session.Builder {
private CrashlyticsReport.Session.Application app;
private String appQualitySessionId;
private Boolean crashed;
private CrashlyticsReport.Session.Device device;
private Long endedAt;
private List<CrashlyticsReport.Session.Event> events;
private String generator;
private Integer generatorType;
private String identifier;
private CrashlyticsReport.Session.OperatingSystem os;
private Long startedAt;
private CrashlyticsReport.Session.User user;
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Builder
public CrashlyticsReport.Session build() {
String str = this.generator == null ? " generator" : "";
if (this.identifier == null) {
str = w.n(str, " identifier");
}
if (this.startedAt == null) {
str = w.n(str, " startedAt");
}
if (this.crashed == null) {
str = w.n(str, " crashed");
}
if (this.app == null) {
str = w.n(str, " app");
}
if (this.generatorType == null) {
str = w.n(str, " generatorType");
}
if (str.isEmpty()) {
return new AutoValue_CrashlyticsReport_Session(this.generator, this.identifier, this.appQualitySessionId, this.startedAt.longValue(), this.endedAt, this.crashed.booleanValue(), this.app, this.user, this.os, this.device, this.events, this.generatorType.intValue());
}
throw new IllegalStateException("Missing required properties:".concat(str));
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Builder
public CrashlyticsReport.Session.Builder setApp(CrashlyticsReport.Session.Application application) {
if (application == null) {
throw new NullPointerException("Null app");
}
this.app = application;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Builder
public CrashlyticsReport.Session.Builder setAppQualitySessionId(String str) {
this.appQualitySessionId = str;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Builder
public CrashlyticsReport.Session.Builder setCrashed(boolean z3) {
this.crashed = Boolean.valueOf(z3);
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Builder
public CrashlyticsReport.Session.Builder setDevice(CrashlyticsReport.Session.Device device) {
this.device = device;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Builder
public CrashlyticsReport.Session.Builder setEndedAt(Long l4) {
this.endedAt = l4;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Builder
public CrashlyticsReport.Session.Builder setEvents(List<CrashlyticsReport.Session.Event> list) {
this.events = list;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Builder
public CrashlyticsReport.Session.Builder setGenerator(String str) {
if (str == null) {
throw new NullPointerException("Null generator");
}
this.generator = str;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Builder
public CrashlyticsReport.Session.Builder setGeneratorType(int i) {
this.generatorType = Integer.valueOf(i);
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Builder
public CrashlyticsReport.Session.Builder setIdentifier(String str) {
if (str == null) {
throw new NullPointerException("Null identifier");
}
this.identifier = str;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Builder
public CrashlyticsReport.Session.Builder setOs(CrashlyticsReport.Session.OperatingSystem operatingSystem) {
this.os = operatingSystem;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Builder
public CrashlyticsReport.Session.Builder setStartedAt(long j4) {
this.startedAt = Long.valueOf(j4);
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Builder
public CrashlyticsReport.Session.Builder setUser(CrashlyticsReport.Session.User user) {
this.user = user;
return this;
}
public Builder() {
}
private Builder(CrashlyticsReport.Session session) {
this.generator = session.getGenerator();
this.identifier = session.getIdentifier();
this.appQualitySessionId = session.getAppQualitySessionId();
this.startedAt = Long.valueOf(session.getStartedAt());
this.endedAt = session.getEndedAt();
this.crashed = Boolean.valueOf(session.isCrashed());
this.app = session.getApp();
this.user = session.getUser();
this.os = session.getOs();
this.device = session.getDevice();
this.events = session.getEvents();
this.generatorType = Integer.valueOf(session.getGeneratorType());
}
}
public boolean equals(Object obj) {
String str;
Long l4;
CrashlyticsReport.Session.User user;
CrashlyticsReport.Session.OperatingSystem operatingSystem;
CrashlyticsReport.Session.Device device;
List<CrashlyticsReport.Session.Event> list;
if (obj == this) {
return true;
}
if (obj instanceof CrashlyticsReport.Session) {
CrashlyticsReport.Session session = (CrashlyticsReport.Session) obj;
if (this.generator.equals(session.getGenerator()) && this.identifier.equals(session.getIdentifier()) && ((str = this.appQualitySessionId) != null ? str.equals(session.getAppQualitySessionId()) : session.getAppQualitySessionId() == null) && this.startedAt == session.getStartedAt() && ((l4 = this.endedAt) != null ? l4.equals(session.getEndedAt()) : session.getEndedAt() == null) && this.crashed == session.isCrashed() && this.app.equals(session.getApp()) && ((user = this.user) != null ? user.equals(session.getUser()) : session.getUser() == null) && ((operatingSystem = this.os) != null ? operatingSystem.equals(session.getOs()) : session.getOs() == null) && ((device = this.device) != null ? device.equals(session.getDevice()) : session.getDevice() == null) && ((list = this.events) != null ? list.equals(session.getEvents()) : session.getEvents() == null) && this.generatorType == session.getGeneratorType()) {
return true;
}
}
return false;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session
public CrashlyticsReport.Session.Application getApp() {
return this.app;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session
public String getAppQualitySessionId() {
return this.appQualitySessionId;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session
public CrashlyticsReport.Session.Device getDevice() {
return this.device;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session
public Long getEndedAt() {
return this.endedAt;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session
public List<CrashlyticsReport.Session.Event> getEvents() {
return this.events;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session
public String getGenerator() {
return this.generator;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session
public int getGeneratorType() {
return this.generatorType;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session
@Encodable.Ignore
public String getIdentifier() {
return this.identifier;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session
public CrashlyticsReport.Session.OperatingSystem getOs() {
return this.os;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session
public long getStartedAt() {
return this.startedAt;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session
public CrashlyticsReport.Session.User getUser() {
return this.user;
}
public int hashCode() {
int hashCode = (((this.generator.hashCode() ^ 1000003) * 1000003) ^ this.identifier.hashCode()) * 1000003;
String str = this.appQualitySessionId;
int hashCode2 = str == null ? 0 : str.hashCode();
long j4 = this.startedAt;
int i = (((hashCode ^ hashCode2) * 1000003) ^ ((int) (j4 ^ (j4 >>> 32)))) * 1000003;
Long l4 = this.endedAt;
int hashCode3 = (((((i ^ (l4 == null ? 0 : l4.hashCode())) * 1000003) ^ (this.crashed ? 1231 : 1237)) * 1000003) ^ this.app.hashCode()) * 1000003;
CrashlyticsReport.Session.User user = this.user;
int hashCode4 = (hashCode3 ^ (user == null ? 0 : user.hashCode())) * 1000003;
CrashlyticsReport.Session.OperatingSystem operatingSystem = this.os;
int hashCode5 = (hashCode4 ^ (operatingSystem == null ? 0 : operatingSystem.hashCode())) * 1000003;
CrashlyticsReport.Session.Device device = this.device;
int hashCode6 = (hashCode5 ^ (device == null ? 0 : device.hashCode())) * 1000003;
List<CrashlyticsReport.Session.Event> list = this.events;
return this.generatorType ^ ((hashCode6 ^ (list != null ? list.hashCode() : 0)) * 1000003);
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session
public boolean isCrashed() {
return this.crashed;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session
public CrashlyticsReport.Session.Builder toBuilder() {
return new Builder(this);
}
public String toString() {
StringBuilder sb = new StringBuilder("Session{generator=");
sb.append(this.generator);
sb.append(", identifier=");
sb.append(this.identifier);
sb.append(", appQualitySessionId=");
sb.append(this.appQualitySessionId);
sb.append(", startedAt=");
sb.append(this.startedAt);
sb.append(", endedAt=");
sb.append(this.endedAt);
sb.append(", crashed=");
sb.append(this.crashed);
sb.append(", app=");
sb.append(this.app);
sb.append(", user=");
sb.append(this.user);
sb.append(", os=");
sb.append(this.os);
sb.append(", device=");
sb.append(this.device);
sb.append(", events=");
sb.append(this.events);
sb.append(", generatorType=");
return a.m(sb, this.generatorType, "}");
}
private AutoValue_CrashlyticsReport_Session(String str, String str2, String str3, long j4, Long l4, boolean z3, CrashlyticsReport.Session.Application application, CrashlyticsReport.Session.User user, CrashlyticsReport.Session.OperatingSystem operatingSystem, CrashlyticsReport.Session.Device device, List<CrashlyticsReport.Session.Event> list, int i) {
this.generator = str;
this.identifier = str2;
this.appQualitySessionId = str3;
this.startedAt = j4;
this.endedAt = l4;
this.crashed = z3;
this.app = application;
this.user = user;
this.os = operatingSystem;
this.device = device;
this.events = list;
this.generatorType = i;
}
}

View File

@@ -0,0 +1,198 @@
package com.google.firebase.crashlytics.internal.model;
import C.w;
import com.google.firebase.crashlytics.internal.model.CrashlyticsReport;
/* loaded from: classes3.dex */
final class AutoValue_CrashlyticsReport_Session_Application extends CrashlyticsReport.Session.Application {
private final String developmentPlatform;
private final String developmentPlatformVersion;
private final String displayVersion;
private final String identifier;
private final String installationUuid;
private final CrashlyticsReport.Session.Application.Organization organization;
private final String version;
/* loaded from: classes3.dex */
public static final class Builder extends CrashlyticsReport.Session.Application.Builder {
private String developmentPlatform;
private String developmentPlatformVersion;
private String displayVersion;
private String identifier;
private String installationUuid;
private CrashlyticsReport.Session.Application.Organization organization;
private String version;
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Application.Builder
public CrashlyticsReport.Session.Application build() {
String str = this.identifier == null ? " identifier" : "";
if (this.version == null) {
str = w.n(str, " version");
}
if (str.isEmpty()) {
return new AutoValue_CrashlyticsReport_Session_Application(this.identifier, this.version, this.displayVersion, this.organization, this.installationUuid, this.developmentPlatform, this.developmentPlatformVersion);
}
throw new IllegalStateException("Missing required properties:".concat(str));
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Application.Builder
public CrashlyticsReport.Session.Application.Builder setDevelopmentPlatform(String str) {
this.developmentPlatform = str;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Application.Builder
public CrashlyticsReport.Session.Application.Builder setDevelopmentPlatformVersion(String str) {
this.developmentPlatformVersion = str;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Application.Builder
public CrashlyticsReport.Session.Application.Builder setDisplayVersion(String str) {
this.displayVersion = str;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Application.Builder
public CrashlyticsReport.Session.Application.Builder setIdentifier(String str) {
if (str == null) {
throw new NullPointerException("Null identifier");
}
this.identifier = str;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Application.Builder
public CrashlyticsReport.Session.Application.Builder setInstallationUuid(String str) {
this.installationUuid = str;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Application.Builder
public CrashlyticsReport.Session.Application.Builder setOrganization(CrashlyticsReport.Session.Application.Organization organization) {
this.organization = organization;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Application.Builder
public CrashlyticsReport.Session.Application.Builder setVersion(String str) {
if (str == null) {
throw new NullPointerException("Null version");
}
this.version = str;
return this;
}
public Builder() {
}
private Builder(CrashlyticsReport.Session.Application application) {
this.identifier = application.getIdentifier();
this.version = application.getVersion();
this.displayVersion = application.getDisplayVersion();
this.organization = application.getOrganization();
this.installationUuid = application.getInstallationUuid();
this.developmentPlatform = application.getDevelopmentPlatform();
this.developmentPlatformVersion = application.getDevelopmentPlatformVersion();
}
}
public boolean equals(Object obj) {
String str;
CrashlyticsReport.Session.Application.Organization organization;
String str2;
String str3;
String str4;
if (obj == this) {
return true;
}
if (obj instanceof CrashlyticsReport.Session.Application) {
CrashlyticsReport.Session.Application application = (CrashlyticsReport.Session.Application) obj;
if (this.identifier.equals(application.getIdentifier()) && this.version.equals(application.getVersion()) && ((str = this.displayVersion) != null ? str.equals(application.getDisplayVersion()) : application.getDisplayVersion() == null) && ((organization = this.organization) != null ? organization.equals(application.getOrganization()) : application.getOrganization() == null) && ((str2 = this.installationUuid) != null ? str2.equals(application.getInstallationUuid()) : application.getInstallationUuid() == null) && ((str3 = this.developmentPlatform) != null ? str3.equals(application.getDevelopmentPlatform()) : application.getDevelopmentPlatform() == null) && ((str4 = this.developmentPlatformVersion) != null ? str4.equals(application.getDevelopmentPlatformVersion()) : application.getDevelopmentPlatformVersion() == null)) {
return true;
}
}
return false;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Application
public String getDevelopmentPlatform() {
return this.developmentPlatform;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Application
public String getDevelopmentPlatformVersion() {
return this.developmentPlatformVersion;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Application
public String getDisplayVersion() {
return this.displayVersion;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Application
public String getIdentifier() {
return this.identifier;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Application
public String getInstallationUuid() {
return this.installationUuid;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Application
public CrashlyticsReport.Session.Application.Organization getOrganization() {
return this.organization;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Application
public String getVersion() {
return this.version;
}
public int hashCode() {
int hashCode = (((this.identifier.hashCode() ^ 1000003) * 1000003) ^ this.version.hashCode()) * 1000003;
String str = this.displayVersion;
int hashCode2 = (hashCode ^ (str == null ? 0 : str.hashCode())) * 1000003;
CrashlyticsReport.Session.Application.Organization organization = this.organization;
int hashCode3 = (hashCode2 ^ (organization == null ? 0 : organization.hashCode())) * 1000003;
String str2 = this.installationUuid;
int hashCode4 = (hashCode3 ^ (str2 == null ? 0 : str2.hashCode())) * 1000003;
String str3 = this.developmentPlatform;
int hashCode5 = (hashCode4 ^ (str3 == null ? 0 : str3.hashCode())) * 1000003;
String str4 = this.developmentPlatformVersion;
return hashCode5 ^ (str4 != null ? str4.hashCode() : 0);
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Application
public CrashlyticsReport.Session.Application.Builder toBuilder() {
return new Builder(this);
}
public String toString() {
StringBuilder sb = new StringBuilder("Application{identifier=");
sb.append(this.identifier);
sb.append(", version=");
sb.append(this.version);
sb.append(", displayVersion=");
sb.append(this.displayVersion);
sb.append(", organization=");
sb.append(this.organization);
sb.append(", installationUuid=");
sb.append(this.installationUuid);
sb.append(", developmentPlatform=");
sb.append(this.developmentPlatform);
sb.append(", developmentPlatformVersion=");
return w.r(sb, this.developmentPlatformVersion, "}");
}
private AutoValue_CrashlyticsReport_Session_Application(String str, String str2, String str3, CrashlyticsReport.Session.Application.Organization organization, String str4, String str5, String str6) {
this.identifier = str;
this.version = str2;
this.displayVersion = str3;
this.organization = organization;
this.installationUuid = str4;
this.developmentPlatform = str5;
this.developmentPlatformVersion = str6;
}
}

View File

@@ -0,0 +1,71 @@
package com.google.firebase.crashlytics.internal.model;
import C.w;
import com.google.firebase.crashlytics.internal.model.CrashlyticsReport;
/* loaded from: classes3.dex */
final class AutoValue_CrashlyticsReport_Session_Application_Organization extends CrashlyticsReport.Session.Application.Organization {
private final String clsId;
/* loaded from: classes3.dex */
public static final class Builder extends CrashlyticsReport.Session.Application.Organization.Builder {
private String clsId;
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Application.Organization.Builder
public CrashlyticsReport.Session.Application.Organization build() {
String str = this.clsId == null ? " clsId" : "";
if (str.isEmpty()) {
return new AutoValue_CrashlyticsReport_Session_Application_Organization(this.clsId);
}
throw new IllegalStateException("Missing required properties:".concat(str));
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Application.Organization.Builder
public CrashlyticsReport.Session.Application.Organization.Builder setClsId(String str) {
if (str == null) {
throw new NullPointerException("Null clsId");
}
this.clsId = str;
return this;
}
public Builder() {
}
private Builder(CrashlyticsReport.Session.Application.Organization organization) {
this.clsId = organization.getClsId();
}
}
public boolean equals(Object obj) {
if (obj == this) {
return true;
}
if (obj instanceof CrashlyticsReport.Session.Application.Organization) {
return this.clsId.equals(((CrashlyticsReport.Session.Application.Organization) obj).getClsId());
}
return false;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Application.Organization
public String getClsId() {
return this.clsId;
}
public int hashCode() {
return this.clsId.hashCode() ^ 1000003;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Application.Organization
public CrashlyticsReport.Session.Application.Organization.Builder toBuilder() {
return new Builder(this);
}
public String toString() {
return w.r(new StringBuilder("Organization{clsId="), this.clsId, "}");
}
private AutoValue_CrashlyticsReport_Session_Application_Organization(String str) {
this.clsId = str;
}
}

View File

@@ -0,0 +1,225 @@
package com.google.firebase.crashlytics.internal.model;
import C.w;
import com.google.firebase.crashlytics.internal.model.CrashlyticsReport;
/* loaded from: classes3.dex */
final class AutoValue_CrashlyticsReport_Session_Device extends CrashlyticsReport.Session.Device {
private final int arch;
private final int cores;
private final long diskSpace;
private final String manufacturer;
private final String model;
private final String modelClass;
private final long ram;
private final boolean simulator;
private final int state;
/* loaded from: classes3.dex */
public static final class Builder extends CrashlyticsReport.Session.Device.Builder {
private Integer arch;
private Integer cores;
private Long diskSpace;
private String manufacturer;
private String model;
private String modelClass;
private Long ram;
private Boolean simulator;
private Integer state;
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Device.Builder
public CrashlyticsReport.Session.Device build() {
String str = this.arch == null ? " arch" : "";
if (this.model == null) {
str = w.n(str, " model");
}
if (this.cores == null) {
str = w.n(str, " cores");
}
if (this.ram == null) {
str = w.n(str, " ram");
}
if (this.diskSpace == null) {
str = w.n(str, " diskSpace");
}
if (this.simulator == null) {
str = w.n(str, " simulator");
}
if (this.state == null) {
str = w.n(str, " state");
}
if (this.manufacturer == null) {
str = w.n(str, " manufacturer");
}
if (this.modelClass == null) {
str = w.n(str, " modelClass");
}
if (str.isEmpty()) {
return new AutoValue_CrashlyticsReport_Session_Device(this.arch.intValue(), this.model, this.cores.intValue(), this.ram.longValue(), this.diskSpace.longValue(), this.simulator.booleanValue(), this.state.intValue(), this.manufacturer, this.modelClass);
}
throw new IllegalStateException("Missing required properties:".concat(str));
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Device.Builder
public CrashlyticsReport.Session.Device.Builder setArch(int i) {
this.arch = Integer.valueOf(i);
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Device.Builder
public CrashlyticsReport.Session.Device.Builder setCores(int i) {
this.cores = Integer.valueOf(i);
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Device.Builder
public CrashlyticsReport.Session.Device.Builder setDiskSpace(long j4) {
this.diskSpace = Long.valueOf(j4);
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Device.Builder
public CrashlyticsReport.Session.Device.Builder setManufacturer(String str) {
if (str == null) {
throw new NullPointerException("Null manufacturer");
}
this.manufacturer = str;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Device.Builder
public CrashlyticsReport.Session.Device.Builder setModel(String str) {
if (str == null) {
throw new NullPointerException("Null model");
}
this.model = str;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Device.Builder
public CrashlyticsReport.Session.Device.Builder setModelClass(String str) {
if (str == null) {
throw new NullPointerException("Null modelClass");
}
this.modelClass = str;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Device.Builder
public CrashlyticsReport.Session.Device.Builder setRam(long j4) {
this.ram = Long.valueOf(j4);
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Device.Builder
public CrashlyticsReport.Session.Device.Builder setSimulator(boolean z3) {
this.simulator = Boolean.valueOf(z3);
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Device.Builder
public CrashlyticsReport.Session.Device.Builder setState(int i) {
this.state = Integer.valueOf(i);
return this;
}
}
public boolean equals(Object obj) {
if (obj == this) {
return true;
}
if (obj instanceof CrashlyticsReport.Session.Device) {
CrashlyticsReport.Session.Device device = (CrashlyticsReport.Session.Device) obj;
if (this.arch == device.getArch() && this.model.equals(device.getModel()) && this.cores == device.getCores() && this.ram == device.getRam() && this.diskSpace == device.getDiskSpace() && this.simulator == device.isSimulator() && this.state == device.getState() && this.manufacturer.equals(device.getManufacturer()) && this.modelClass.equals(device.getModelClass())) {
return true;
}
}
return false;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Device
public int getArch() {
return this.arch;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Device
public int getCores() {
return this.cores;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Device
public long getDiskSpace() {
return this.diskSpace;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Device
public String getManufacturer() {
return this.manufacturer;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Device
public String getModel() {
return this.model;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Device
public String getModelClass() {
return this.modelClass;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Device
public long getRam() {
return this.ram;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Device
public int getState() {
return this.state;
}
public int hashCode() {
int hashCode = (((((this.arch ^ 1000003) * 1000003) ^ this.model.hashCode()) * 1000003) ^ this.cores) * 1000003;
long j4 = this.ram;
int i = (hashCode ^ ((int) (j4 ^ (j4 >>> 32)))) * 1000003;
long j5 = this.diskSpace;
return this.modelClass.hashCode() ^ ((((((((i ^ ((int) (j5 ^ (j5 >>> 32)))) * 1000003) ^ (this.simulator ? 1231 : 1237)) * 1000003) ^ this.state) * 1000003) ^ this.manufacturer.hashCode()) * 1000003);
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Device
public boolean isSimulator() {
return this.simulator;
}
public String toString() {
StringBuilder sb = new StringBuilder("Device{arch=");
sb.append(this.arch);
sb.append(", model=");
sb.append(this.model);
sb.append(", cores=");
sb.append(this.cores);
sb.append(", ram=");
sb.append(this.ram);
sb.append(", diskSpace=");
sb.append(this.diskSpace);
sb.append(", simulator=");
sb.append(this.simulator);
sb.append(", state=");
sb.append(this.state);
sb.append(", manufacturer=");
sb.append(this.manufacturer);
sb.append(", modelClass=");
return w.r(sb, this.modelClass, "}");
}
private AutoValue_CrashlyticsReport_Session_Device(int i, String str, int i4, long j4, long j5, boolean z3, int i5, String str2, String str3) {
this.arch = i;
this.model = str;
this.cores = i4;
this.ram = j4;
this.diskSpace = j5;
this.simulator = z3;
this.state = i5;
this.manufacturer = str2;
this.modelClass = str3;
}
}

View File

@@ -0,0 +1,171 @@
package com.google.firebase.crashlytics.internal.model;
import C.w;
import com.google.firebase.crashlytics.internal.model.CrashlyticsReport;
/* loaded from: classes3.dex */
final class AutoValue_CrashlyticsReport_Session_Event extends CrashlyticsReport.Session.Event {
private final CrashlyticsReport.Session.Event.Application app;
private final CrashlyticsReport.Session.Event.Device device;
private final CrashlyticsReport.Session.Event.Log log;
private final CrashlyticsReport.Session.Event.RolloutsState rollouts;
private final long timestamp;
private final String type;
/* loaded from: classes3.dex */
public static final class Builder extends CrashlyticsReport.Session.Event.Builder {
private CrashlyticsReport.Session.Event.Application app;
private CrashlyticsReport.Session.Event.Device device;
private CrashlyticsReport.Session.Event.Log log;
private CrashlyticsReport.Session.Event.RolloutsState rollouts;
private Long timestamp;
private String type;
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Builder
public CrashlyticsReport.Session.Event build() {
String str = this.timestamp == null ? " timestamp" : "";
if (this.type == null) {
str = w.n(str, " type");
}
if (this.app == null) {
str = w.n(str, " app");
}
if (this.device == null) {
str = w.n(str, " device");
}
if (str.isEmpty()) {
return new AutoValue_CrashlyticsReport_Session_Event(this.timestamp.longValue(), this.type, this.app, this.device, this.log, this.rollouts);
}
throw new IllegalStateException("Missing required properties:".concat(str));
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Builder
public CrashlyticsReport.Session.Event.Builder setApp(CrashlyticsReport.Session.Event.Application application) {
if (application == null) {
throw new NullPointerException("Null app");
}
this.app = application;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Builder
public CrashlyticsReport.Session.Event.Builder setDevice(CrashlyticsReport.Session.Event.Device device) {
if (device == null) {
throw new NullPointerException("Null device");
}
this.device = device;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Builder
public CrashlyticsReport.Session.Event.Builder setLog(CrashlyticsReport.Session.Event.Log log) {
this.log = log;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Builder
public CrashlyticsReport.Session.Event.Builder setRollouts(CrashlyticsReport.Session.Event.RolloutsState rolloutsState) {
this.rollouts = rolloutsState;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Builder
public CrashlyticsReport.Session.Event.Builder setTimestamp(long j4) {
this.timestamp = Long.valueOf(j4);
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Builder
public CrashlyticsReport.Session.Event.Builder setType(String str) {
if (str == null) {
throw new NullPointerException("Null type");
}
this.type = str;
return this;
}
public Builder() {
}
private Builder(CrashlyticsReport.Session.Event event) {
this.timestamp = Long.valueOf(event.getTimestamp());
this.type = event.getType();
this.app = event.getApp();
this.device = event.getDevice();
this.log = event.getLog();
this.rollouts = event.getRollouts();
}
}
public boolean equals(Object obj) {
CrashlyticsReport.Session.Event.Log log;
CrashlyticsReport.Session.Event.RolloutsState rolloutsState;
if (obj == this) {
return true;
}
if (obj instanceof CrashlyticsReport.Session.Event) {
CrashlyticsReport.Session.Event event = (CrashlyticsReport.Session.Event) obj;
if (this.timestamp == event.getTimestamp() && this.type.equals(event.getType()) && this.app.equals(event.getApp()) && this.device.equals(event.getDevice()) && ((log = this.log) != null ? log.equals(event.getLog()) : event.getLog() == null) && ((rolloutsState = this.rollouts) != null ? rolloutsState.equals(event.getRollouts()) : event.getRollouts() == null)) {
return true;
}
}
return false;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event
public CrashlyticsReport.Session.Event.Application getApp() {
return this.app;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event
public CrashlyticsReport.Session.Event.Device getDevice() {
return this.device;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event
public CrashlyticsReport.Session.Event.Log getLog() {
return this.log;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event
public CrashlyticsReport.Session.Event.RolloutsState getRollouts() {
return this.rollouts;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event
public long getTimestamp() {
return this.timestamp;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event
public String getType() {
return this.type;
}
public int hashCode() {
long j4 = this.timestamp;
int hashCode = (((((((((int) (j4 ^ (j4 >>> 32))) ^ 1000003) * 1000003) ^ this.type.hashCode()) * 1000003) ^ this.app.hashCode()) * 1000003) ^ this.device.hashCode()) * 1000003;
CrashlyticsReport.Session.Event.Log log = this.log;
int hashCode2 = (hashCode ^ (log == null ? 0 : log.hashCode())) * 1000003;
CrashlyticsReport.Session.Event.RolloutsState rolloutsState = this.rollouts;
return hashCode2 ^ (rolloutsState != null ? rolloutsState.hashCode() : 0);
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event
public CrashlyticsReport.Session.Event.Builder toBuilder() {
return new Builder(this);
}
public String toString() {
return "Event{timestamp=" + this.timestamp + ", type=" + this.type + ", app=" + this.app + ", device=" + this.device + ", log=" + this.log + ", rollouts=" + this.rollouts + "}";
}
private AutoValue_CrashlyticsReport_Session_Event(long j4, String str, CrashlyticsReport.Session.Event.Application application, CrashlyticsReport.Session.Event.Device device, CrashlyticsReport.Session.Event.Log log, CrashlyticsReport.Session.Event.RolloutsState rolloutsState) {
this.timestamp = j4;
this.type = str;
this.app = application;
this.device = device;
this.log = log;
this.rollouts = rolloutsState;
}
}

View File

@@ -0,0 +1,197 @@
package com.google.firebase.crashlytics.internal.model;
import C.w;
import com.google.android.gms.measurement.internal.a;
import com.google.firebase.crashlytics.internal.model.CrashlyticsReport;
import java.util.List;
/* loaded from: classes3.dex */
final class AutoValue_CrashlyticsReport_Session_Event_Application extends CrashlyticsReport.Session.Event.Application {
private final List<CrashlyticsReport.Session.Event.Application.ProcessDetails> appProcessDetails;
private final Boolean background;
private final CrashlyticsReport.Session.Event.Application.ProcessDetails currentProcessDetails;
private final List<CrashlyticsReport.CustomAttribute> customAttributes;
private final CrashlyticsReport.Session.Event.Application.Execution execution;
private final List<CrashlyticsReport.CustomAttribute> internalKeys;
private final int uiOrientation;
/* loaded from: classes3.dex */
public static final class Builder extends CrashlyticsReport.Session.Event.Application.Builder {
private List<CrashlyticsReport.Session.Event.Application.ProcessDetails> appProcessDetails;
private Boolean background;
private CrashlyticsReport.Session.Event.Application.ProcessDetails currentProcessDetails;
private List<CrashlyticsReport.CustomAttribute> customAttributes;
private CrashlyticsReport.Session.Event.Application.Execution execution;
private List<CrashlyticsReport.CustomAttribute> internalKeys;
private Integer uiOrientation;
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Builder
public CrashlyticsReport.Session.Event.Application build() {
String str = this.execution == null ? " execution" : "";
if (this.uiOrientation == null) {
str = w.n(str, " uiOrientation");
}
if (str.isEmpty()) {
return new AutoValue_CrashlyticsReport_Session_Event_Application(this.execution, this.customAttributes, this.internalKeys, this.background, this.currentProcessDetails, this.appProcessDetails, this.uiOrientation.intValue());
}
throw new IllegalStateException("Missing required properties:".concat(str));
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Builder
public CrashlyticsReport.Session.Event.Application.Builder setAppProcessDetails(List<CrashlyticsReport.Session.Event.Application.ProcessDetails> list) {
this.appProcessDetails = list;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Builder
public CrashlyticsReport.Session.Event.Application.Builder setBackground(Boolean bool) {
this.background = bool;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Builder
public CrashlyticsReport.Session.Event.Application.Builder setCurrentProcessDetails(CrashlyticsReport.Session.Event.Application.ProcessDetails processDetails) {
this.currentProcessDetails = processDetails;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Builder
public CrashlyticsReport.Session.Event.Application.Builder setCustomAttributes(List<CrashlyticsReport.CustomAttribute> list) {
this.customAttributes = list;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Builder
public CrashlyticsReport.Session.Event.Application.Builder setExecution(CrashlyticsReport.Session.Event.Application.Execution execution) {
if (execution == null) {
throw new NullPointerException("Null execution");
}
this.execution = execution;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Builder
public CrashlyticsReport.Session.Event.Application.Builder setInternalKeys(List<CrashlyticsReport.CustomAttribute> list) {
this.internalKeys = list;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Builder
public CrashlyticsReport.Session.Event.Application.Builder setUiOrientation(int i) {
this.uiOrientation = Integer.valueOf(i);
return this;
}
public Builder() {
}
private Builder(CrashlyticsReport.Session.Event.Application application) {
this.execution = application.getExecution();
this.customAttributes = application.getCustomAttributes();
this.internalKeys = application.getInternalKeys();
this.background = application.getBackground();
this.currentProcessDetails = application.getCurrentProcessDetails();
this.appProcessDetails = application.getAppProcessDetails();
this.uiOrientation = Integer.valueOf(application.getUiOrientation());
}
}
public boolean equals(Object obj) {
List<CrashlyticsReport.CustomAttribute> list;
List<CrashlyticsReport.CustomAttribute> list2;
Boolean bool;
CrashlyticsReport.Session.Event.Application.ProcessDetails processDetails;
List<CrashlyticsReport.Session.Event.Application.ProcessDetails> list3;
if (obj == this) {
return true;
}
if (obj instanceof CrashlyticsReport.Session.Event.Application) {
CrashlyticsReport.Session.Event.Application application = (CrashlyticsReport.Session.Event.Application) obj;
if (this.execution.equals(application.getExecution()) && ((list = this.customAttributes) != null ? list.equals(application.getCustomAttributes()) : application.getCustomAttributes() == null) && ((list2 = this.internalKeys) != null ? list2.equals(application.getInternalKeys()) : application.getInternalKeys() == null) && ((bool = this.background) != null ? bool.equals(application.getBackground()) : application.getBackground() == null) && ((processDetails = this.currentProcessDetails) != null ? processDetails.equals(application.getCurrentProcessDetails()) : application.getCurrentProcessDetails() == null) && ((list3 = this.appProcessDetails) != null ? list3.equals(application.getAppProcessDetails()) : application.getAppProcessDetails() == null) && this.uiOrientation == application.getUiOrientation()) {
return true;
}
}
return false;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application
public List<CrashlyticsReport.Session.Event.Application.ProcessDetails> getAppProcessDetails() {
return this.appProcessDetails;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application
public Boolean getBackground() {
return this.background;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application
public CrashlyticsReport.Session.Event.Application.ProcessDetails getCurrentProcessDetails() {
return this.currentProcessDetails;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application
public List<CrashlyticsReport.CustomAttribute> getCustomAttributes() {
return this.customAttributes;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application
public CrashlyticsReport.Session.Event.Application.Execution getExecution() {
return this.execution;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application
public List<CrashlyticsReport.CustomAttribute> getInternalKeys() {
return this.internalKeys;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application
public int getUiOrientation() {
return this.uiOrientation;
}
public int hashCode() {
int hashCode = (this.execution.hashCode() ^ 1000003) * 1000003;
List<CrashlyticsReport.CustomAttribute> list = this.customAttributes;
int hashCode2 = (hashCode ^ (list == null ? 0 : list.hashCode())) * 1000003;
List<CrashlyticsReport.CustomAttribute> list2 = this.internalKeys;
int hashCode3 = (hashCode2 ^ (list2 == null ? 0 : list2.hashCode())) * 1000003;
Boolean bool = this.background;
int hashCode4 = (hashCode3 ^ (bool == null ? 0 : bool.hashCode())) * 1000003;
CrashlyticsReport.Session.Event.Application.ProcessDetails processDetails = this.currentProcessDetails;
int hashCode5 = (hashCode4 ^ (processDetails == null ? 0 : processDetails.hashCode())) * 1000003;
List<CrashlyticsReport.Session.Event.Application.ProcessDetails> list3 = this.appProcessDetails;
return this.uiOrientation ^ ((hashCode5 ^ (list3 != null ? list3.hashCode() : 0)) * 1000003);
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application
public CrashlyticsReport.Session.Event.Application.Builder toBuilder() {
return new Builder(this);
}
public String toString() {
StringBuilder sb = new StringBuilder("Application{execution=");
sb.append(this.execution);
sb.append(", customAttributes=");
sb.append(this.customAttributes);
sb.append(", internalKeys=");
sb.append(this.internalKeys);
sb.append(", background=");
sb.append(this.background);
sb.append(", currentProcessDetails=");
sb.append(this.currentProcessDetails);
sb.append(", appProcessDetails=");
sb.append(this.appProcessDetails);
sb.append(", uiOrientation=");
return a.m(sb, this.uiOrientation, "}");
}
private AutoValue_CrashlyticsReport_Session_Event_Application(CrashlyticsReport.Session.Event.Application.Execution execution, List<CrashlyticsReport.CustomAttribute> list, List<CrashlyticsReport.CustomAttribute> list2, Boolean bool, CrashlyticsReport.Session.Event.Application.ProcessDetails processDetails, List<CrashlyticsReport.Session.Event.Application.ProcessDetails> list3, int i) {
this.execution = execution;
this.customAttributes = list;
this.internalKeys = list2;
this.background = bool;
this.currentProcessDetails = processDetails;
this.appProcessDetails = list3;
this.uiOrientation = i;
}
}

View File

@@ -0,0 +1,139 @@
package com.google.firebase.crashlytics.internal.model;
import C.w;
import com.google.firebase.crashlytics.internal.model.CrashlyticsReport;
import java.util.List;
/* loaded from: classes3.dex */
final class AutoValue_CrashlyticsReport_Session_Event_Application_Execution extends CrashlyticsReport.Session.Event.Application.Execution {
private final CrashlyticsReport.ApplicationExitInfo appExitInfo;
private final List<CrashlyticsReport.Session.Event.Application.Execution.BinaryImage> binaries;
private final CrashlyticsReport.Session.Event.Application.Execution.Exception exception;
private final CrashlyticsReport.Session.Event.Application.Execution.Signal signal;
private final List<CrashlyticsReport.Session.Event.Application.Execution.Thread> threads;
/* loaded from: classes3.dex */
public static final class Builder extends CrashlyticsReport.Session.Event.Application.Execution.Builder {
private CrashlyticsReport.ApplicationExitInfo appExitInfo;
private List<CrashlyticsReport.Session.Event.Application.Execution.BinaryImage> binaries;
private CrashlyticsReport.Session.Event.Application.Execution.Exception exception;
private CrashlyticsReport.Session.Event.Application.Execution.Signal signal;
private List<CrashlyticsReport.Session.Event.Application.Execution.Thread> threads;
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.Builder
public CrashlyticsReport.Session.Event.Application.Execution build() {
String str = this.signal == null ? " signal" : "";
if (this.binaries == null) {
str = w.n(str, " binaries");
}
if (str.isEmpty()) {
return new AutoValue_CrashlyticsReport_Session_Event_Application_Execution(this.threads, this.exception, this.appExitInfo, this.signal, this.binaries);
}
throw new IllegalStateException("Missing required properties:".concat(str));
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.Builder
public CrashlyticsReport.Session.Event.Application.Execution.Builder setAppExitInfo(CrashlyticsReport.ApplicationExitInfo applicationExitInfo) {
this.appExitInfo = applicationExitInfo;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.Builder
public CrashlyticsReport.Session.Event.Application.Execution.Builder setBinaries(List<CrashlyticsReport.Session.Event.Application.Execution.BinaryImage> list) {
if (list == null) {
throw new NullPointerException("Null binaries");
}
this.binaries = list;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.Builder
public CrashlyticsReport.Session.Event.Application.Execution.Builder setException(CrashlyticsReport.Session.Event.Application.Execution.Exception exception) {
this.exception = exception;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.Builder
public CrashlyticsReport.Session.Event.Application.Execution.Builder setSignal(CrashlyticsReport.Session.Event.Application.Execution.Signal signal) {
if (signal == null) {
throw new NullPointerException("Null signal");
}
this.signal = signal;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.Builder
public CrashlyticsReport.Session.Event.Application.Execution.Builder setThreads(List<CrashlyticsReport.Session.Event.Application.Execution.Thread> list) {
this.threads = list;
return this;
}
}
public boolean equals(Object obj) {
if (obj == this) {
return true;
}
if (obj instanceof CrashlyticsReport.Session.Event.Application.Execution) {
CrashlyticsReport.Session.Event.Application.Execution execution = (CrashlyticsReport.Session.Event.Application.Execution) obj;
List<CrashlyticsReport.Session.Event.Application.Execution.Thread> list = this.threads;
if (list != null ? list.equals(execution.getThreads()) : execution.getThreads() == null) {
CrashlyticsReport.Session.Event.Application.Execution.Exception exception = this.exception;
if (exception != null ? exception.equals(execution.getException()) : execution.getException() == null) {
CrashlyticsReport.ApplicationExitInfo applicationExitInfo = this.appExitInfo;
if (applicationExitInfo != null ? applicationExitInfo.equals(execution.getAppExitInfo()) : execution.getAppExitInfo() == null) {
if (this.signal.equals(execution.getSignal()) && this.binaries.equals(execution.getBinaries())) {
return true;
}
}
}
}
}
return false;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution
public CrashlyticsReport.ApplicationExitInfo getAppExitInfo() {
return this.appExitInfo;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution
public List<CrashlyticsReport.Session.Event.Application.Execution.BinaryImage> getBinaries() {
return this.binaries;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution
public CrashlyticsReport.Session.Event.Application.Execution.Exception getException() {
return this.exception;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution
public CrashlyticsReport.Session.Event.Application.Execution.Signal getSignal() {
return this.signal;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution
public List<CrashlyticsReport.Session.Event.Application.Execution.Thread> getThreads() {
return this.threads;
}
public int hashCode() {
List<CrashlyticsReport.Session.Event.Application.Execution.Thread> list = this.threads;
int hashCode = ((list == null ? 0 : list.hashCode()) ^ 1000003) * 1000003;
CrashlyticsReport.Session.Event.Application.Execution.Exception exception = this.exception;
int hashCode2 = (hashCode ^ (exception == null ? 0 : exception.hashCode())) * 1000003;
CrashlyticsReport.ApplicationExitInfo applicationExitInfo = this.appExitInfo;
return this.binaries.hashCode() ^ ((((hashCode2 ^ (applicationExitInfo != null ? applicationExitInfo.hashCode() : 0)) * 1000003) ^ this.signal.hashCode()) * 1000003);
}
public String toString() {
return "Execution{threads=" + this.threads + ", exception=" + this.exception + ", appExitInfo=" + this.appExitInfo + ", signal=" + this.signal + ", binaries=" + this.binaries + "}";
}
private AutoValue_CrashlyticsReport_Session_Event_Application_Execution(List<CrashlyticsReport.Session.Event.Application.Execution.Thread> list, CrashlyticsReport.Session.Event.Application.Execution.Exception exception, CrashlyticsReport.ApplicationExitInfo applicationExitInfo, CrashlyticsReport.Session.Event.Application.Execution.Signal signal, List<CrashlyticsReport.Session.Event.Application.Execution.BinaryImage> list2) {
this.threads = list;
this.exception = exception;
this.appExitInfo = applicationExitInfo;
this.signal = signal;
this.binaries = list2;
}
}

View File

@@ -0,0 +1,124 @@
package com.google.firebase.crashlytics.internal.model;
import C.w;
import com.google.firebase.crashlytics.internal.model.CrashlyticsReport;
import com.google.firebase.encoders.annotations.Encodable;
/* loaded from: classes3.dex */
final class AutoValue_CrashlyticsReport_Session_Event_Application_Execution_BinaryImage extends CrashlyticsReport.Session.Event.Application.Execution.BinaryImage {
private final long baseAddress;
private final String name;
private final long size;
private final String uuid;
/* loaded from: classes3.dex */
public static final class Builder extends CrashlyticsReport.Session.Event.Application.Execution.BinaryImage.Builder {
private Long baseAddress;
private String name;
private Long size;
private String uuid;
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.BinaryImage.Builder
public CrashlyticsReport.Session.Event.Application.Execution.BinaryImage build() {
String str = this.baseAddress == null ? " baseAddress" : "";
if (this.size == null) {
str = w.n(str, " size");
}
if (this.name == null) {
str = w.n(str, " name");
}
if (str.isEmpty()) {
return new AutoValue_CrashlyticsReport_Session_Event_Application_Execution_BinaryImage(this.baseAddress.longValue(), this.size.longValue(), this.name, this.uuid);
}
throw new IllegalStateException("Missing required properties:".concat(str));
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.BinaryImage.Builder
public CrashlyticsReport.Session.Event.Application.Execution.BinaryImage.Builder setBaseAddress(long j4) {
this.baseAddress = Long.valueOf(j4);
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.BinaryImage.Builder
public CrashlyticsReport.Session.Event.Application.Execution.BinaryImage.Builder setName(String str) {
if (str == null) {
throw new NullPointerException("Null name");
}
this.name = str;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.BinaryImage.Builder
public CrashlyticsReport.Session.Event.Application.Execution.BinaryImage.Builder setSize(long j4) {
this.size = Long.valueOf(j4);
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.BinaryImage.Builder
public CrashlyticsReport.Session.Event.Application.Execution.BinaryImage.Builder setUuid(String str) {
this.uuid = str;
return this;
}
}
public boolean equals(Object obj) {
String str;
if (obj == this) {
return true;
}
if (obj instanceof CrashlyticsReport.Session.Event.Application.Execution.BinaryImage) {
CrashlyticsReport.Session.Event.Application.Execution.BinaryImage binaryImage = (CrashlyticsReport.Session.Event.Application.Execution.BinaryImage) obj;
if (this.baseAddress == binaryImage.getBaseAddress() && this.size == binaryImage.getSize() && this.name.equals(binaryImage.getName()) && ((str = this.uuid) != null ? str.equals(binaryImage.getUuid()) : binaryImage.getUuid() == null)) {
return true;
}
}
return false;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.BinaryImage
public long getBaseAddress() {
return this.baseAddress;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.BinaryImage
public String getName() {
return this.name;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.BinaryImage
public long getSize() {
return this.size;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.BinaryImage
@Encodable.Ignore
public String getUuid() {
return this.uuid;
}
public int hashCode() {
long j4 = this.baseAddress;
long j5 = this.size;
int hashCode = (((((((int) (j4 ^ (j4 >>> 32))) ^ 1000003) * 1000003) ^ ((int) ((j5 >>> 32) ^ j5))) * 1000003) ^ this.name.hashCode()) * 1000003;
String str = this.uuid;
return (str == null ? 0 : str.hashCode()) ^ hashCode;
}
public String toString() {
StringBuilder sb = new StringBuilder("BinaryImage{baseAddress=");
sb.append(this.baseAddress);
sb.append(", size=");
sb.append(this.size);
sb.append(", name=");
sb.append(this.name);
sb.append(", uuid=");
return w.r(sb, this.uuid, "}");
}
private AutoValue_CrashlyticsReport_Session_Event_Application_Execution_BinaryImage(long j4, long j5, String str, String str2) {
this.baseAddress = j4;
this.size = j5;
this.name = str;
this.uuid = str2;
}
}

View File

@@ -0,0 +1,144 @@
package com.google.firebase.crashlytics.internal.model;
import C.w;
import com.google.android.gms.measurement.internal.a;
import com.google.firebase.crashlytics.internal.model.CrashlyticsReport;
import java.util.List;
/* loaded from: classes3.dex */
final class AutoValue_CrashlyticsReport_Session_Event_Application_Execution_Exception extends CrashlyticsReport.Session.Event.Application.Execution.Exception {
private final CrashlyticsReport.Session.Event.Application.Execution.Exception causedBy;
private final List<CrashlyticsReport.Session.Event.Application.Execution.Thread.Frame> frames;
private final int overflowCount;
private final String reason;
private final String type;
/* loaded from: classes3.dex */
public static final class Builder extends CrashlyticsReport.Session.Event.Application.Execution.Exception.Builder {
private CrashlyticsReport.Session.Event.Application.Execution.Exception causedBy;
private List<CrashlyticsReport.Session.Event.Application.Execution.Thread.Frame> frames;
private Integer overflowCount;
private String reason;
private String type;
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.Exception.Builder
public CrashlyticsReport.Session.Event.Application.Execution.Exception build() {
String str = this.type == null ? " type" : "";
if (this.frames == null) {
str = w.n(str, " frames");
}
if (this.overflowCount == null) {
str = w.n(str, " overflowCount");
}
if (str.isEmpty()) {
return new AutoValue_CrashlyticsReport_Session_Event_Application_Execution_Exception(this.type, this.reason, this.frames, this.causedBy, this.overflowCount.intValue());
}
throw new IllegalStateException("Missing required properties:".concat(str));
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.Exception.Builder
public CrashlyticsReport.Session.Event.Application.Execution.Exception.Builder setCausedBy(CrashlyticsReport.Session.Event.Application.Execution.Exception exception) {
this.causedBy = exception;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.Exception.Builder
public CrashlyticsReport.Session.Event.Application.Execution.Exception.Builder setFrames(List<CrashlyticsReport.Session.Event.Application.Execution.Thread.Frame> list) {
if (list == null) {
throw new NullPointerException("Null frames");
}
this.frames = list;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.Exception.Builder
public CrashlyticsReport.Session.Event.Application.Execution.Exception.Builder setOverflowCount(int i) {
this.overflowCount = Integer.valueOf(i);
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.Exception.Builder
public CrashlyticsReport.Session.Event.Application.Execution.Exception.Builder setReason(String str) {
this.reason = str;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.Exception.Builder
public CrashlyticsReport.Session.Event.Application.Execution.Exception.Builder setType(String str) {
if (str == null) {
throw new NullPointerException("Null type");
}
this.type = str;
return this;
}
}
public boolean equals(Object obj) {
String str;
CrashlyticsReport.Session.Event.Application.Execution.Exception exception;
if (obj == this) {
return true;
}
if (obj instanceof CrashlyticsReport.Session.Event.Application.Execution.Exception) {
CrashlyticsReport.Session.Event.Application.Execution.Exception exception2 = (CrashlyticsReport.Session.Event.Application.Execution.Exception) obj;
if (this.type.equals(exception2.getType()) && ((str = this.reason) != null ? str.equals(exception2.getReason()) : exception2.getReason() == null) && this.frames.equals(exception2.getFrames()) && ((exception = this.causedBy) != null ? exception.equals(exception2.getCausedBy()) : exception2.getCausedBy() == null) && this.overflowCount == exception2.getOverflowCount()) {
return true;
}
}
return false;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.Exception
public CrashlyticsReport.Session.Event.Application.Execution.Exception getCausedBy() {
return this.causedBy;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.Exception
public List<CrashlyticsReport.Session.Event.Application.Execution.Thread.Frame> getFrames() {
return this.frames;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.Exception
public int getOverflowCount() {
return this.overflowCount;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.Exception
public String getReason() {
return this.reason;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.Exception
public String getType() {
return this.type;
}
public int hashCode() {
int hashCode = (this.type.hashCode() ^ 1000003) * 1000003;
String str = this.reason;
int hashCode2 = (((hashCode ^ (str == null ? 0 : str.hashCode())) * 1000003) ^ this.frames.hashCode()) * 1000003;
CrashlyticsReport.Session.Event.Application.Execution.Exception exception = this.causedBy;
return this.overflowCount ^ ((hashCode2 ^ (exception != null ? exception.hashCode() : 0)) * 1000003);
}
public String toString() {
StringBuilder sb = new StringBuilder("Exception{type=");
sb.append(this.type);
sb.append(", reason=");
sb.append(this.reason);
sb.append(", frames=");
sb.append(this.frames);
sb.append(", causedBy=");
sb.append(this.causedBy);
sb.append(", overflowCount=");
return a.m(sb, this.overflowCount, "}");
}
private AutoValue_CrashlyticsReport_Session_Event_Application_Execution_Exception(String str, String str2, List<CrashlyticsReport.Session.Event.Application.Execution.Thread.Frame> list, CrashlyticsReport.Session.Event.Application.Execution.Exception exception, int i) {
this.type = str;
this.reason = str2;
this.frames = list;
this.causedBy = exception;
this.overflowCount = i;
}
}

View File

@@ -0,0 +1,106 @@
package com.google.firebase.crashlytics.internal.model;
import C.w;
import com.google.firebase.crashlytics.internal.model.CrashlyticsReport;
/* loaded from: classes3.dex */
final class AutoValue_CrashlyticsReport_Session_Event_Application_Execution_Signal extends CrashlyticsReport.Session.Event.Application.Execution.Signal {
private final long address;
private final String code;
private final String name;
/* loaded from: classes3.dex */
public static final class Builder extends CrashlyticsReport.Session.Event.Application.Execution.Signal.Builder {
private Long address;
private String code;
private String name;
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.Signal.Builder
public CrashlyticsReport.Session.Event.Application.Execution.Signal build() {
String str = this.name == null ? " name" : "";
if (this.code == null) {
str = w.n(str, " code");
}
if (this.address == null) {
str = w.n(str, " address");
}
if (str.isEmpty()) {
return new AutoValue_CrashlyticsReport_Session_Event_Application_Execution_Signal(this.name, this.code, this.address.longValue());
}
throw new IllegalStateException("Missing required properties:".concat(str));
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.Signal.Builder
public CrashlyticsReport.Session.Event.Application.Execution.Signal.Builder setAddress(long j4) {
this.address = Long.valueOf(j4);
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.Signal.Builder
public CrashlyticsReport.Session.Event.Application.Execution.Signal.Builder setCode(String str) {
if (str == null) {
throw new NullPointerException("Null code");
}
this.code = str;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.Signal.Builder
public CrashlyticsReport.Session.Event.Application.Execution.Signal.Builder setName(String str) {
if (str == null) {
throw new NullPointerException("Null name");
}
this.name = str;
return this;
}
}
public boolean equals(Object obj) {
if (obj == this) {
return true;
}
if (obj instanceof CrashlyticsReport.Session.Event.Application.Execution.Signal) {
CrashlyticsReport.Session.Event.Application.Execution.Signal signal = (CrashlyticsReport.Session.Event.Application.Execution.Signal) obj;
if (this.name.equals(signal.getName()) && this.code.equals(signal.getCode()) && this.address == signal.getAddress()) {
return true;
}
}
return false;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.Signal
public long getAddress() {
return this.address;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.Signal
public String getCode() {
return this.code;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.Signal
public String getName() {
return this.name;
}
public int hashCode() {
int hashCode = (((this.name.hashCode() ^ 1000003) * 1000003) ^ this.code.hashCode()) * 1000003;
long j4 = this.address;
return ((int) (j4 ^ (j4 >>> 32))) ^ hashCode;
}
public String toString() {
StringBuilder sb = new StringBuilder("Signal{name=");
sb.append(this.name);
sb.append(", code=");
sb.append(this.code);
sb.append(", address=");
return w.q(sb, this.address, "}");
}
private AutoValue_CrashlyticsReport_Session_Event_Application_Execution_Signal(String str, String str2, long j4) {
this.name = str;
this.code = str2;
this.address = j4;
}
}

View File

@@ -0,0 +1,100 @@
package com.google.firebase.crashlytics.internal.model;
import C.w;
import com.google.firebase.crashlytics.internal.model.CrashlyticsReport;
import java.util.List;
/* loaded from: classes3.dex */
final class AutoValue_CrashlyticsReport_Session_Event_Application_Execution_Thread extends CrashlyticsReport.Session.Event.Application.Execution.Thread {
private final List<CrashlyticsReport.Session.Event.Application.Execution.Thread.Frame> frames;
private final int importance;
private final String name;
/* loaded from: classes3.dex */
public static final class Builder extends CrashlyticsReport.Session.Event.Application.Execution.Thread.Builder {
private List<CrashlyticsReport.Session.Event.Application.Execution.Thread.Frame> frames;
private Integer importance;
private String name;
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.Thread.Builder
public CrashlyticsReport.Session.Event.Application.Execution.Thread build() {
String str = this.name == null ? " name" : "";
if (this.importance == null) {
str = w.n(str, " importance");
}
if (this.frames == null) {
str = w.n(str, " frames");
}
if (str.isEmpty()) {
return new AutoValue_CrashlyticsReport_Session_Event_Application_Execution_Thread(this.name, this.importance.intValue(), this.frames);
}
throw new IllegalStateException("Missing required properties:".concat(str));
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.Thread.Builder
public CrashlyticsReport.Session.Event.Application.Execution.Thread.Builder setFrames(List<CrashlyticsReport.Session.Event.Application.Execution.Thread.Frame> list) {
if (list == null) {
throw new NullPointerException("Null frames");
}
this.frames = list;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.Thread.Builder
public CrashlyticsReport.Session.Event.Application.Execution.Thread.Builder setImportance(int i) {
this.importance = Integer.valueOf(i);
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.Thread.Builder
public CrashlyticsReport.Session.Event.Application.Execution.Thread.Builder setName(String str) {
if (str == null) {
throw new NullPointerException("Null name");
}
this.name = str;
return this;
}
}
public boolean equals(Object obj) {
if (obj == this) {
return true;
}
if (obj instanceof CrashlyticsReport.Session.Event.Application.Execution.Thread) {
CrashlyticsReport.Session.Event.Application.Execution.Thread thread = (CrashlyticsReport.Session.Event.Application.Execution.Thread) obj;
if (this.name.equals(thread.getName()) && this.importance == thread.getImportance() && this.frames.equals(thread.getFrames())) {
return true;
}
}
return false;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.Thread
public List<CrashlyticsReport.Session.Event.Application.Execution.Thread.Frame> getFrames() {
return this.frames;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.Thread
public int getImportance() {
return this.importance;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.Thread
public String getName() {
return this.name;
}
public int hashCode() {
return this.frames.hashCode() ^ ((((this.name.hashCode() ^ 1000003) * 1000003) ^ this.importance) * 1000003);
}
public String toString() {
return "Thread{name=" + this.name + ", importance=" + this.importance + ", frames=" + this.frames + "}";
}
private AutoValue_CrashlyticsReport_Session_Event_Application_Execution_Thread(String str, int i, List<CrashlyticsReport.Session.Event.Application.Execution.Thread.Frame> list) {
this.name = str;
this.importance = i;
this.frames = list;
}
}

View File

@@ -0,0 +1,143 @@
package com.google.firebase.crashlytics.internal.model;
import C.w;
import com.google.android.gms.measurement.internal.a;
import com.google.firebase.crashlytics.internal.model.CrashlyticsReport;
/* loaded from: classes3.dex */
final class AutoValue_CrashlyticsReport_Session_Event_Application_Execution_Thread_Frame extends CrashlyticsReport.Session.Event.Application.Execution.Thread.Frame {
private final String file;
private final int importance;
private final long offset;
private final long pc;
private final String symbol;
/* loaded from: classes3.dex */
public static final class Builder extends CrashlyticsReport.Session.Event.Application.Execution.Thread.Frame.Builder {
private String file;
private Integer importance;
private Long offset;
private Long pc;
private String symbol;
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.Thread.Frame.Builder
public CrashlyticsReport.Session.Event.Application.Execution.Thread.Frame build() {
String str = this.pc == null ? " pc" : "";
if (this.symbol == null) {
str = w.n(str, " symbol");
}
if (this.offset == null) {
str = w.n(str, " offset");
}
if (this.importance == null) {
str = w.n(str, " importance");
}
if (str.isEmpty()) {
return new AutoValue_CrashlyticsReport_Session_Event_Application_Execution_Thread_Frame(this.pc.longValue(), this.symbol, this.file, this.offset.longValue(), this.importance.intValue());
}
throw new IllegalStateException("Missing required properties:".concat(str));
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.Thread.Frame.Builder
public CrashlyticsReport.Session.Event.Application.Execution.Thread.Frame.Builder setFile(String str) {
this.file = str;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.Thread.Frame.Builder
public CrashlyticsReport.Session.Event.Application.Execution.Thread.Frame.Builder setImportance(int i) {
this.importance = Integer.valueOf(i);
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.Thread.Frame.Builder
public CrashlyticsReport.Session.Event.Application.Execution.Thread.Frame.Builder setOffset(long j4) {
this.offset = Long.valueOf(j4);
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.Thread.Frame.Builder
public CrashlyticsReport.Session.Event.Application.Execution.Thread.Frame.Builder setPc(long j4) {
this.pc = Long.valueOf(j4);
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.Thread.Frame.Builder
public CrashlyticsReport.Session.Event.Application.Execution.Thread.Frame.Builder setSymbol(String str) {
if (str == null) {
throw new NullPointerException("Null symbol");
}
this.symbol = str;
return this;
}
}
public boolean equals(Object obj) {
String str;
if (obj == this) {
return true;
}
if (obj instanceof CrashlyticsReport.Session.Event.Application.Execution.Thread.Frame) {
CrashlyticsReport.Session.Event.Application.Execution.Thread.Frame frame = (CrashlyticsReport.Session.Event.Application.Execution.Thread.Frame) obj;
if (this.pc == frame.getPc() && this.symbol.equals(frame.getSymbol()) && ((str = this.file) != null ? str.equals(frame.getFile()) : frame.getFile() == null) && this.offset == frame.getOffset() && this.importance == frame.getImportance()) {
return true;
}
}
return false;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.Thread.Frame
public String getFile() {
return this.file;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.Thread.Frame
public int getImportance() {
return this.importance;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.Thread.Frame
public long getOffset() {
return this.offset;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.Thread.Frame
public long getPc() {
return this.pc;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.Execution.Thread.Frame
public String getSymbol() {
return this.symbol;
}
public int hashCode() {
long j4 = this.pc;
int hashCode = (((((int) (j4 ^ (j4 >>> 32))) ^ 1000003) * 1000003) ^ this.symbol.hashCode()) * 1000003;
String str = this.file;
int hashCode2 = (hashCode ^ (str == null ? 0 : str.hashCode())) * 1000003;
long j5 = this.offset;
return this.importance ^ ((hashCode2 ^ ((int) ((j5 >>> 32) ^ j5))) * 1000003);
}
public String toString() {
StringBuilder sb = new StringBuilder("Frame{pc=");
sb.append(this.pc);
sb.append(", symbol=");
sb.append(this.symbol);
sb.append(", file=");
sb.append(this.file);
sb.append(", offset=");
sb.append(this.offset);
sb.append(", importance=");
return a.m(sb, this.importance, "}");
}
private AutoValue_CrashlyticsReport_Session_Event_Application_Execution_Thread_Frame(long j4, String str, String str2, long j5, int i) {
this.pc = j4;
this.symbol = str;
this.file = str2;
this.offset = j5;
this.importance = i;
}
}

View File

@@ -0,0 +1,113 @@
package com.google.firebase.crashlytics.internal.model;
import C.w;
import com.google.firebase.crashlytics.internal.model.CrashlyticsReport;
/* loaded from: classes3.dex */
final class AutoValue_CrashlyticsReport_Session_Event_Application_ProcessDetails extends CrashlyticsReport.Session.Event.Application.ProcessDetails {
private final boolean defaultProcess;
private final int importance;
private final int pid;
private final String processName;
/* loaded from: classes3.dex */
public static final class Builder extends CrashlyticsReport.Session.Event.Application.ProcessDetails.Builder {
private Boolean defaultProcess;
private Integer importance;
private Integer pid;
private String processName;
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.ProcessDetails.Builder
public CrashlyticsReport.Session.Event.Application.ProcessDetails build() {
String str = this.processName == null ? " processName" : "";
if (this.pid == null) {
str = w.n(str, " pid");
}
if (this.importance == null) {
str = w.n(str, " importance");
}
if (this.defaultProcess == null) {
str = w.n(str, " defaultProcess");
}
if (str.isEmpty()) {
return new AutoValue_CrashlyticsReport_Session_Event_Application_ProcessDetails(this.processName, this.pid.intValue(), this.importance.intValue(), this.defaultProcess.booleanValue());
}
throw new IllegalStateException("Missing required properties:".concat(str));
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.ProcessDetails.Builder
public CrashlyticsReport.Session.Event.Application.ProcessDetails.Builder setDefaultProcess(boolean z3) {
this.defaultProcess = Boolean.valueOf(z3);
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.ProcessDetails.Builder
public CrashlyticsReport.Session.Event.Application.ProcessDetails.Builder setImportance(int i) {
this.importance = Integer.valueOf(i);
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.ProcessDetails.Builder
public CrashlyticsReport.Session.Event.Application.ProcessDetails.Builder setPid(int i) {
this.pid = Integer.valueOf(i);
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.ProcessDetails.Builder
public CrashlyticsReport.Session.Event.Application.ProcessDetails.Builder setProcessName(String str) {
if (str == null) {
throw new NullPointerException("Null processName");
}
this.processName = str;
return this;
}
}
public boolean equals(Object obj) {
if (obj == this) {
return true;
}
if (obj instanceof CrashlyticsReport.Session.Event.Application.ProcessDetails) {
CrashlyticsReport.Session.Event.Application.ProcessDetails processDetails = (CrashlyticsReport.Session.Event.Application.ProcessDetails) obj;
if (this.processName.equals(processDetails.getProcessName()) && this.pid == processDetails.getPid() && this.importance == processDetails.getImportance() && this.defaultProcess == processDetails.isDefaultProcess()) {
return true;
}
}
return false;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.ProcessDetails
public int getImportance() {
return this.importance;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.ProcessDetails
public int getPid() {
return this.pid;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.ProcessDetails
public String getProcessName() {
return this.processName;
}
public int hashCode() {
return (this.defaultProcess ? 1231 : 1237) ^ ((((((this.processName.hashCode() ^ 1000003) * 1000003) ^ this.pid) * 1000003) ^ this.importance) * 1000003);
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Application.ProcessDetails
public boolean isDefaultProcess() {
return this.defaultProcess;
}
public String toString() {
return "ProcessDetails{processName=" + this.processName + ", pid=" + this.pid + ", importance=" + this.importance + ", defaultProcess=" + this.defaultProcess + "}";
}
private AutoValue_CrashlyticsReport_Session_Event_Application_ProcessDetails(String str, int i, int i4, boolean z3) {
this.processName = str;
this.pid = i;
this.importance = i4;
this.defaultProcess = z3;
}
}

View File

@@ -0,0 +1,159 @@
package com.google.firebase.crashlytics.internal.model;
import C.w;
import com.google.firebase.crashlytics.internal.model.CrashlyticsReport;
/* loaded from: classes3.dex */
final class AutoValue_CrashlyticsReport_Session_Event_Device extends CrashlyticsReport.Session.Event.Device {
private final Double batteryLevel;
private final int batteryVelocity;
private final long diskUsed;
private final int orientation;
private final boolean proximityOn;
private final long ramUsed;
/* loaded from: classes3.dex */
public static final class Builder extends CrashlyticsReport.Session.Event.Device.Builder {
private Double batteryLevel;
private Integer batteryVelocity;
private Long diskUsed;
private Integer orientation;
private Boolean proximityOn;
private Long ramUsed;
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Device.Builder
public CrashlyticsReport.Session.Event.Device build() {
String str = this.batteryVelocity == null ? " batteryVelocity" : "";
if (this.proximityOn == null) {
str = w.n(str, " proximityOn");
}
if (this.orientation == null) {
str = w.n(str, " orientation");
}
if (this.ramUsed == null) {
str = w.n(str, " ramUsed");
}
if (this.diskUsed == null) {
str = w.n(str, " diskUsed");
}
if (str.isEmpty()) {
return new AutoValue_CrashlyticsReport_Session_Event_Device(this.batteryLevel, this.batteryVelocity.intValue(), this.proximityOn.booleanValue(), this.orientation.intValue(), this.ramUsed.longValue(), this.diskUsed.longValue());
}
throw new IllegalStateException("Missing required properties:".concat(str));
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Device.Builder
public CrashlyticsReport.Session.Event.Device.Builder setBatteryLevel(Double d4) {
this.batteryLevel = d4;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Device.Builder
public CrashlyticsReport.Session.Event.Device.Builder setBatteryVelocity(int i) {
this.batteryVelocity = Integer.valueOf(i);
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Device.Builder
public CrashlyticsReport.Session.Event.Device.Builder setDiskUsed(long j4) {
this.diskUsed = Long.valueOf(j4);
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Device.Builder
public CrashlyticsReport.Session.Event.Device.Builder setOrientation(int i) {
this.orientation = Integer.valueOf(i);
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Device.Builder
public CrashlyticsReport.Session.Event.Device.Builder setProximityOn(boolean z3) {
this.proximityOn = Boolean.valueOf(z3);
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Device.Builder
public CrashlyticsReport.Session.Event.Device.Builder setRamUsed(long j4) {
this.ramUsed = Long.valueOf(j4);
return this;
}
}
public boolean equals(Object obj) {
if (obj == this) {
return true;
}
if (obj instanceof CrashlyticsReport.Session.Event.Device) {
CrashlyticsReport.Session.Event.Device device = (CrashlyticsReport.Session.Event.Device) obj;
Double d4 = this.batteryLevel;
if (d4 != null ? d4.equals(device.getBatteryLevel()) : device.getBatteryLevel() == null) {
if (this.batteryVelocity == device.getBatteryVelocity() && this.proximityOn == device.isProximityOn() && this.orientation == device.getOrientation() && this.ramUsed == device.getRamUsed() && this.diskUsed == device.getDiskUsed()) {
return true;
}
}
}
return false;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Device
public Double getBatteryLevel() {
return this.batteryLevel;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Device
public int getBatteryVelocity() {
return this.batteryVelocity;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Device
public long getDiskUsed() {
return this.diskUsed;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Device
public int getOrientation() {
return this.orientation;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Device
public long getRamUsed() {
return this.ramUsed;
}
public int hashCode() {
Double d4 = this.batteryLevel;
int hashCode = ((((((((d4 == null ? 0 : d4.hashCode()) ^ 1000003) * 1000003) ^ this.batteryVelocity) * 1000003) ^ (this.proximityOn ? 1231 : 1237)) * 1000003) ^ this.orientation) * 1000003;
long j4 = this.ramUsed;
long j5 = this.diskUsed;
return ((int) (j5 ^ (j5 >>> 32))) ^ ((hashCode ^ ((int) (j4 ^ (j4 >>> 32)))) * 1000003);
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Device
public boolean isProximityOn() {
return this.proximityOn;
}
public String toString() {
StringBuilder sb = new StringBuilder("Device{batteryLevel=");
sb.append(this.batteryLevel);
sb.append(", batteryVelocity=");
sb.append(this.batteryVelocity);
sb.append(", proximityOn=");
sb.append(this.proximityOn);
sb.append(", orientation=");
sb.append(this.orientation);
sb.append(", ramUsed=");
sb.append(this.ramUsed);
sb.append(", diskUsed=");
return w.q(sb, this.diskUsed, "}");
}
private AutoValue_CrashlyticsReport_Session_Event_Device(Double d4, int i, boolean z3, int i4, long j4, long j5) {
this.batteryLevel = d4;
this.batteryVelocity = i;
this.proximityOn = z3;
this.orientation = i4;
this.ramUsed = j4;
this.diskUsed = j5;
}
}

View File

@@ -0,0 +1,59 @@
package com.google.firebase.crashlytics.internal.model;
import C.w;
import com.google.firebase.crashlytics.internal.model.CrashlyticsReport;
/* loaded from: classes3.dex */
final class AutoValue_CrashlyticsReport_Session_Event_Log extends CrashlyticsReport.Session.Event.Log {
private final String content;
/* loaded from: classes3.dex */
public static final class Builder extends CrashlyticsReport.Session.Event.Log.Builder {
private String content;
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Log.Builder
public CrashlyticsReport.Session.Event.Log build() {
String str = this.content == null ? " content" : "";
if (str.isEmpty()) {
return new AutoValue_CrashlyticsReport_Session_Event_Log(this.content);
}
throw new IllegalStateException("Missing required properties:".concat(str));
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Log.Builder
public CrashlyticsReport.Session.Event.Log.Builder setContent(String str) {
if (str == null) {
throw new NullPointerException("Null content");
}
this.content = str;
return this;
}
}
public boolean equals(Object obj) {
if (obj == this) {
return true;
}
if (obj instanceof CrashlyticsReport.Session.Event.Log) {
return this.content.equals(((CrashlyticsReport.Session.Event.Log) obj).getContent());
}
return false;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.Log
public String getContent() {
return this.content;
}
public int hashCode() {
return this.content.hashCode() ^ 1000003;
}
public String toString() {
return w.r(new StringBuilder("Log{content="), this.content, "}");
}
private AutoValue_CrashlyticsReport_Session_Event_Log(String str) {
this.content = str;
}
}

View File

@@ -0,0 +1,128 @@
package com.google.firebase.crashlytics.internal.model;
import C.w;
import com.google.firebase.crashlytics.internal.model.CrashlyticsReport;
/* loaded from: classes3.dex */
final class AutoValue_CrashlyticsReport_Session_Event_RolloutAssignment extends CrashlyticsReport.Session.Event.RolloutAssignment {
private final String parameterKey;
private final String parameterValue;
private final CrashlyticsReport.Session.Event.RolloutAssignment.RolloutVariant rolloutVariant;
private final long templateVersion;
/* loaded from: classes3.dex */
public static final class Builder extends CrashlyticsReport.Session.Event.RolloutAssignment.Builder {
private String parameterKey;
private String parameterValue;
private CrashlyticsReport.Session.Event.RolloutAssignment.RolloutVariant rolloutVariant;
private Long templateVersion;
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.RolloutAssignment.Builder
public CrashlyticsReport.Session.Event.RolloutAssignment build() {
String str = this.rolloutVariant == null ? " rolloutVariant" : "";
if (this.parameterKey == null) {
str = w.n(str, " parameterKey");
}
if (this.parameterValue == null) {
str = w.n(str, " parameterValue");
}
if (this.templateVersion == null) {
str = w.n(str, " templateVersion");
}
if (str.isEmpty()) {
return new AutoValue_CrashlyticsReport_Session_Event_RolloutAssignment(this.rolloutVariant, this.parameterKey, this.parameterValue, this.templateVersion.longValue());
}
throw new IllegalStateException("Missing required properties:".concat(str));
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.RolloutAssignment.Builder
public CrashlyticsReport.Session.Event.RolloutAssignment.Builder setParameterKey(String str) {
if (str == null) {
throw new NullPointerException("Null parameterKey");
}
this.parameterKey = str;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.RolloutAssignment.Builder
public CrashlyticsReport.Session.Event.RolloutAssignment.Builder setParameterValue(String str) {
if (str == null) {
throw new NullPointerException("Null parameterValue");
}
this.parameterValue = str;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.RolloutAssignment.Builder
public CrashlyticsReport.Session.Event.RolloutAssignment.Builder setRolloutVariant(CrashlyticsReport.Session.Event.RolloutAssignment.RolloutVariant rolloutVariant) {
if (rolloutVariant == null) {
throw new NullPointerException("Null rolloutVariant");
}
this.rolloutVariant = rolloutVariant;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.RolloutAssignment.Builder
public CrashlyticsReport.Session.Event.RolloutAssignment.Builder setTemplateVersion(long j4) {
this.templateVersion = Long.valueOf(j4);
return this;
}
}
public boolean equals(Object obj) {
if (obj == this) {
return true;
}
if (obj instanceof CrashlyticsReport.Session.Event.RolloutAssignment) {
CrashlyticsReport.Session.Event.RolloutAssignment rolloutAssignment = (CrashlyticsReport.Session.Event.RolloutAssignment) obj;
if (this.rolloutVariant.equals(rolloutAssignment.getRolloutVariant()) && this.parameterKey.equals(rolloutAssignment.getParameterKey()) && this.parameterValue.equals(rolloutAssignment.getParameterValue()) && this.templateVersion == rolloutAssignment.getTemplateVersion()) {
return true;
}
}
return false;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.RolloutAssignment
public String getParameterKey() {
return this.parameterKey;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.RolloutAssignment
public String getParameterValue() {
return this.parameterValue;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.RolloutAssignment
public CrashlyticsReport.Session.Event.RolloutAssignment.RolloutVariant getRolloutVariant() {
return this.rolloutVariant;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.RolloutAssignment
public long getTemplateVersion() {
return this.templateVersion;
}
public int hashCode() {
int hashCode = (((((this.rolloutVariant.hashCode() ^ 1000003) * 1000003) ^ this.parameterKey.hashCode()) * 1000003) ^ this.parameterValue.hashCode()) * 1000003;
long j4 = this.templateVersion;
return ((int) (j4 ^ (j4 >>> 32))) ^ hashCode;
}
public String toString() {
StringBuilder sb = new StringBuilder("RolloutAssignment{rolloutVariant=");
sb.append(this.rolloutVariant);
sb.append(", parameterKey=");
sb.append(this.parameterKey);
sb.append(", parameterValue=");
sb.append(this.parameterValue);
sb.append(", templateVersion=");
return w.q(sb, this.templateVersion, "}");
}
private AutoValue_CrashlyticsReport_Session_Event_RolloutAssignment(CrashlyticsReport.Session.Event.RolloutAssignment.RolloutVariant rolloutVariant, String str, String str2, long j4) {
this.rolloutVariant = rolloutVariant;
this.parameterKey = str;
this.parameterValue = str2;
this.templateVersion = j4;
}
}

View File

@@ -0,0 +1,85 @@
package com.google.firebase.crashlytics.internal.model;
import C.w;
import com.google.firebase.crashlytics.internal.model.CrashlyticsReport;
/* loaded from: classes3.dex */
final class AutoValue_CrashlyticsReport_Session_Event_RolloutAssignment_RolloutVariant extends CrashlyticsReport.Session.Event.RolloutAssignment.RolloutVariant {
private final String rolloutId;
private final String variantId;
/* loaded from: classes3.dex */
public static final class Builder extends CrashlyticsReport.Session.Event.RolloutAssignment.RolloutVariant.Builder {
private String rolloutId;
private String variantId;
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.RolloutAssignment.RolloutVariant.Builder
public CrashlyticsReport.Session.Event.RolloutAssignment.RolloutVariant build() {
String str = this.rolloutId == null ? " rolloutId" : "";
if (this.variantId == null) {
str = w.n(str, " variantId");
}
if (str.isEmpty()) {
return new AutoValue_CrashlyticsReport_Session_Event_RolloutAssignment_RolloutVariant(this.rolloutId, this.variantId);
}
throw new IllegalStateException("Missing required properties:".concat(str));
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.RolloutAssignment.RolloutVariant.Builder
public CrashlyticsReport.Session.Event.RolloutAssignment.RolloutVariant.Builder setRolloutId(String str) {
if (str == null) {
throw new NullPointerException("Null rolloutId");
}
this.rolloutId = str;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.RolloutAssignment.RolloutVariant.Builder
public CrashlyticsReport.Session.Event.RolloutAssignment.RolloutVariant.Builder setVariantId(String str) {
if (str == null) {
throw new NullPointerException("Null variantId");
}
this.variantId = str;
return this;
}
}
public boolean equals(Object obj) {
if (obj == this) {
return true;
}
if (obj instanceof CrashlyticsReport.Session.Event.RolloutAssignment.RolloutVariant) {
CrashlyticsReport.Session.Event.RolloutAssignment.RolloutVariant rolloutVariant = (CrashlyticsReport.Session.Event.RolloutAssignment.RolloutVariant) obj;
if (this.rolloutId.equals(rolloutVariant.getRolloutId()) && this.variantId.equals(rolloutVariant.getVariantId())) {
return true;
}
}
return false;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.RolloutAssignment.RolloutVariant
public String getRolloutId() {
return this.rolloutId;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.RolloutAssignment.RolloutVariant
public String getVariantId() {
return this.variantId;
}
public int hashCode() {
return this.variantId.hashCode() ^ ((this.rolloutId.hashCode() ^ 1000003) * 1000003);
}
public String toString() {
StringBuilder sb = new StringBuilder("RolloutVariant{rolloutId=");
sb.append(this.rolloutId);
sb.append(", variantId=");
return w.r(sb, this.variantId, "}");
}
private AutoValue_CrashlyticsReport_Session_Event_RolloutAssignment_RolloutVariant(String str, String str2) {
this.rolloutId = str;
this.variantId = str2;
}
}

View File

@@ -0,0 +1,61 @@
package com.google.firebase.crashlytics.internal.model;
import com.google.firebase.crashlytics.internal.model.CrashlyticsReport;
import com.google.firebase.encoders.annotations.Encodable;
import java.util.List;
/* loaded from: classes3.dex */
final class AutoValue_CrashlyticsReport_Session_Event_RolloutsState extends CrashlyticsReport.Session.Event.RolloutsState {
private final List<CrashlyticsReport.Session.Event.RolloutAssignment> rolloutAssignments;
/* loaded from: classes3.dex */
public static final class Builder extends CrashlyticsReport.Session.Event.RolloutsState.Builder {
private List<CrashlyticsReport.Session.Event.RolloutAssignment> rolloutAssignments;
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.RolloutsState.Builder
public CrashlyticsReport.Session.Event.RolloutsState build() {
String str = this.rolloutAssignments == null ? " rolloutAssignments" : "";
if (str.isEmpty()) {
return new AutoValue_CrashlyticsReport_Session_Event_RolloutsState(this.rolloutAssignments);
}
throw new IllegalStateException("Missing required properties:".concat(str));
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.RolloutsState.Builder
public CrashlyticsReport.Session.Event.RolloutsState.Builder setRolloutAssignments(List<CrashlyticsReport.Session.Event.RolloutAssignment> list) {
if (list == null) {
throw new NullPointerException("Null rolloutAssignments");
}
this.rolloutAssignments = list;
return this;
}
}
public boolean equals(Object obj) {
if (obj == this) {
return true;
}
if (obj instanceof CrashlyticsReport.Session.Event.RolloutsState) {
return this.rolloutAssignments.equals(((CrashlyticsReport.Session.Event.RolloutsState) obj).getRolloutAssignments());
}
return false;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.Event.RolloutsState
@Encodable.Field(name = "assignments")
public List<CrashlyticsReport.Session.Event.RolloutAssignment> getRolloutAssignments() {
return this.rolloutAssignments;
}
public int hashCode() {
return this.rolloutAssignments.hashCode() ^ 1000003;
}
public String toString() {
return "RolloutsState{rolloutAssignments=" + this.rolloutAssignments + "}";
}
private AutoValue_CrashlyticsReport_Session_Event_RolloutsState(List<CrashlyticsReport.Session.Event.RolloutAssignment> list) {
this.rolloutAssignments = list;
}
}

View File

@@ -0,0 +1,116 @@
package com.google.firebase.crashlytics.internal.model;
import C.w;
import com.google.firebase.crashlytics.internal.model.CrashlyticsReport;
/* loaded from: classes3.dex */
final class AutoValue_CrashlyticsReport_Session_OperatingSystem extends CrashlyticsReport.Session.OperatingSystem {
private final String buildVersion;
private final boolean jailbroken;
private final int platform;
private final String version;
/* loaded from: classes3.dex */
public static final class Builder extends CrashlyticsReport.Session.OperatingSystem.Builder {
private String buildVersion;
private Boolean jailbroken;
private Integer platform;
private String version;
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.OperatingSystem.Builder
public CrashlyticsReport.Session.OperatingSystem build() {
String str = this.platform == null ? " platform" : "";
if (this.version == null) {
str = w.n(str, " version");
}
if (this.buildVersion == null) {
str = w.n(str, " buildVersion");
}
if (this.jailbroken == null) {
str = w.n(str, " jailbroken");
}
if (str.isEmpty()) {
return new AutoValue_CrashlyticsReport_Session_OperatingSystem(this.platform.intValue(), this.version, this.buildVersion, this.jailbroken.booleanValue());
}
throw new IllegalStateException("Missing required properties:".concat(str));
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.OperatingSystem.Builder
public CrashlyticsReport.Session.OperatingSystem.Builder setBuildVersion(String str) {
if (str == null) {
throw new NullPointerException("Null buildVersion");
}
this.buildVersion = str;
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.OperatingSystem.Builder
public CrashlyticsReport.Session.OperatingSystem.Builder setJailbroken(boolean z3) {
this.jailbroken = Boolean.valueOf(z3);
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.OperatingSystem.Builder
public CrashlyticsReport.Session.OperatingSystem.Builder setPlatform(int i) {
this.platform = Integer.valueOf(i);
return this;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.OperatingSystem.Builder
public CrashlyticsReport.Session.OperatingSystem.Builder setVersion(String str) {
if (str == null) {
throw new NullPointerException("Null version");
}
this.version = str;
return this;
}
}
public boolean equals(Object obj) {
if (obj == this) {
return true;
}
if (obj instanceof CrashlyticsReport.Session.OperatingSystem) {
CrashlyticsReport.Session.OperatingSystem operatingSystem = (CrashlyticsReport.Session.OperatingSystem) obj;
if (this.platform == operatingSystem.getPlatform() && this.version.equals(operatingSystem.getVersion()) && this.buildVersion.equals(operatingSystem.getBuildVersion()) && this.jailbroken == operatingSystem.isJailbroken()) {
return true;
}
}
return false;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.OperatingSystem
public String getBuildVersion() {
return this.buildVersion;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.OperatingSystem
public int getPlatform() {
return this.platform;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.OperatingSystem
public String getVersion() {
return this.version;
}
public int hashCode() {
return (this.jailbroken ? 1231 : 1237) ^ ((((((this.platform ^ 1000003) * 1000003) ^ this.version.hashCode()) * 1000003) ^ this.buildVersion.hashCode()) * 1000003);
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.OperatingSystem
public boolean isJailbroken() {
return this.jailbroken;
}
public String toString() {
return "OperatingSystem{platform=" + this.platform + ", version=" + this.version + ", buildVersion=" + this.buildVersion + ", jailbroken=" + this.jailbroken + "}";
}
private AutoValue_CrashlyticsReport_Session_OperatingSystem(int i, String str, String str2, boolean z3) {
this.platform = i;
this.version = str;
this.buildVersion = str2;
this.jailbroken = z3;
}
}

View File

@@ -0,0 +1,59 @@
package com.google.firebase.crashlytics.internal.model;
import C.w;
import com.google.firebase.crashlytics.internal.model.CrashlyticsReport;
/* loaded from: classes3.dex */
final class AutoValue_CrashlyticsReport_Session_User extends CrashlyticsReport.Session.User {
private final String identifier;
/* loaded from: classes3.dex */
public static final class Builder extends CrashlyticsReport.Session.User.Builder {
private String identifier;
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.User.Builder
public CrashlyticsReport.Session.User build() {
String str = this.identifier == null ? " identifier" : "";
if (str.isEmpty()) {
return new AutoValue_CrashlyticsReport_Session_User(this.identifier);
}
throw new IllegalStateException("Missing required properties:".concat(str));
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.User.Builder
public CrashlyticsReport.Session.User.Builder setIdentifier(String str) {
if (str == null) {
throw new NullPointerException("Null identifier");
}
this.identifier = str;
return this;
}
}
public boolean equals(Object obj) {
if (obj == this) {
return true;
}
if (obj instanceof CrashlyticsReport.Session.User) {
return this.identifier.equals(((CrashlyticsReport.Session.User) obj).getIdentifier());
}
return false;
}
@Override // com.google.firebase.crashlytics.internal.model.CrashlyticsReport.Session.User
public String getIdentifier() {
return this.identifier;
}
public int hashCode() {
return this.identifier.hashCode() ^ 1000003;
}
public String toString() {
return w.r(new StringBuilder("User{identifier="), this.identifier, "}");
}
private AutoValue_CrashlyticsReport_Session_User(String str) {
this.identifier = str;
}
}

View File

@@ -0,0 +1,62 @@
package com.google.firebase.crashlytics.internal.model;
import com.google.firebase.crashlytics.internal.model.StaticSessionData;
/* JADX INFO: Access modifiers changed from: package-private */
/* loaded from: classes3.dex */
public final class AutoValue_StaticSessionData extends StaticSessionData {
private final StaticSessionData.AppData appData;
private final StaticSessionData.DeviceData deviceData;
private final StaticSessionData.OsData osData;
public AutoValue_StaticSessionData(StaticSessionData.AppData appData, StaticSessionData.OsData osData, StaticSessionData.DeviceData deviceData) {
if (appData == null) {
throw new NullPointerException("Null appData");
}
this.appData = appData;
if (osData == null) {
throw new NullPointerException("Null osData");
}
this.osData = osData;
if (deviceData == null) {
throw new NullPointerException("Null deviceData");
}
this.deviceData = deviceData;
}
@Override // com.google.firebase.crashlytics.internal.model.StaticSessionData
public StaticSessionData.AppData appData() {
return this.appData;
}
@Override // com.google.firebase.crashlytics.internal.model.StaticSessionData
public StaticSessionData.DeviceData deviceData() {
return this.deviceData;
}
public boolean equals(Object obj) {
if (obj == this) {
return true;
}
if (obj instanceof StaticSessionData) {
StaticSessionData staticSessionData = (StaticSessionData) obj;
if (this.appData.equals(staticSessionData.appData()) && this.osData.equals(staticSessionData.osData()) && this.deviceData.equals(staticSessionData.deviceData())) {
return true;
}
}
return false;
}
public int hashCode() {
return this.deviceData.hashCode() ^ ((((this.appData.hashCode() ^ 1000003) * 1000003) ^ this.osData.hashCode()) * 1000003);
}
@Override // com.google.firebase.crashlytics.internal.model.StaticSessionData
public StaticSessionData.OsData osData() {
return this.osData;
}
public String toString() {
return "StaticSessionData{appData=" + this.appData + ", osData=" + this.osData + ", deviceData=" + this.deviceData + "}";
}
}

View File

@@ -0,0 +1,90 @@
package com.google.firebase.crashlytics.internal.model;
import com.google.firebase.crashlytics.internal.DevelopmentPlatformProvider;
import com.google.firebase.crashlytics.internal.model.StaticSessionData;
/* JADX INFO: Access modifiers changed from: package-private */
/* loaded from: classes3.dex */
public final class AutoValue_StaticSessionData_AppData extends StaticSessionData.AppData {
private final String appIdentifier;
private final int deliveryMechanism;
private final DevelopmentPlatformProvider developmentPlatformProvider;
private final String installUuid;
private final String versionCode;
private final String versionName;
public AutoValue_StaticSessionData_AppData(String str, String str2, String str3, String str4, int i, DevelopmentPlatformProvider developmentPlatformProvider) {
if (str == null) {
throw new NullPointerException("Null appIdentifier");
}
this.appIdentifier = str;
if (str2 == null) {
throw new NullPointerException("Null versionCode");
}
this.versionCode = str2;
if (str3 == null) {
throw new NullPointerException("Null versionName");
}
this.versionName = str3;
if (str4 == null) {
throw new NullPointerException("Null installUuid");
}
this.installUuid = str4;
this.deliveryMechanism = i;
if (developmentPlatformProvider == null) {
throw new NullPointerException("Null developmentPlatformProvider");
}
this.developmentPlatformProvider = developmentPlatformProvider;
}
@Override // com.google.firebase.crashlytics.internal.model.StaticSessionData.AppData
public String appIdentifier() {
return this.appIdentifier;
}
@Override // com.google.firebase.crashlytics.internal.model.StaticSessionData.AppData
public int deliveryMechanism() {
return this.deliveryMechanism;
}
@Override // com.google.firebase.crashlytics.internal.model.StaticSessionData.AppData
public DevelopmentPlatformProvider developmentPlatformProvider() {
return this.developmentPlatformProvider;
}
public boolean equals(Object obj) {
if (obj == this) {
return true;
}
if (obj instanceof StaticSessionData.AppData) {
StaticSessionData.AppData appData = (StaticSessionData.AppData) obj;
if (this.appIdentifier.equals(appData.appIdentifier()) && this.versionCode.equals(appData.versionCode()) && this.versionName.equals(appData.versionName()) && this.installUuid.equals(appData.installUuid()) && this.deliveryMechanism == appData.deliveryMechanism() && this.developmentPlatformProvider.equals(appData.developmentPlatformProvider())) {
return true;
}
}
return false;
}
public int hashCode() {
return this.developmentPlatformProvider.hashCode() ^ ((((((((((this.appIdentifier.hashCode() ^ 1000003) * 1000003) ^ this.versionCode.hashCode()) * 1000003) ^ this.versionName.hashCode()) * 1000003) ^ this.installUuid.hashCode()) * 1000003) ^ this.deliveryMechanism) * 1000003);
}
@Override // com.google.firebase.crashlytics.internal.model.StaticSessionData.AppData
public String installUuid() {
return this.installUuid;
}
public String toString() {
return "AppData{appIdentifier=" + this.appIdentifier + ", versionCode=" + this.versionCode + ", versionName=" + this.versionName + ", installUuid=" + this.installUuid + ", deliveryMechanism=" + this.deliveryMechanism + ", developmentPlatformProvider=" + this.developmentPlatformProvider + "}";
}
@Override // com.google.firebase.crashlytics.internal.model.StaticSessionData.AppData
public String versionCode() {
return this.versionCode;
}
@Override // com.google.firebase.crashlytics.internal.model.StaticSessionData.AppData
public String versionName() {
return this.versionName;
}
}

View File

@@ -0,0 +1,126 @@
package com.google.firebase.crashlytics.internal.model;
import C.w;
import com.google.firebase.crashlytics.internal.model.StaticSessionData;
/* JADX INFO: Access modifiers changed from: package-private */
/* loaded from: classes3.dex */
public final class AutoValue_StaticSessionData_DeviceData extends StaticSessionData.DeviceData {
private final int arch;
private final int availableProcessors;
private final long diskSpace;
private final boolean isEmulator;
private final String manufacturer;
private final String model;
private final String modelClass;
private final int state;
private final long totalRam;
public AutoValue_StaticSessionData_DeviceData(int i, String str, int i4, long j4, long j5, boolean z3, int i5, String str2, String str3) {
this.arch = i;
if (str == null) {
throw new NullPointerException("Null model");
}
this.model = str;
this.availableProcessors = i4;
this.totalRam = j4;
this.diskSpace = j5;
this.isEmulator = z3;
this.state = i5;
if (str2 == null) {
throw new NullPointerException("Null manufacturer");
}
this.manufacturer = str2;
if (str3 == null) {
throw new NullPointerException("Null modelClass");
}
this.modelClass = str3;
}
@Override // com.google.firebase.crashlytics.internal.model.StaticSessionData.DeviceData
public int arch() {
return this.arch;
}
@Override // com.google.firebase.crashlytics.internal.model.StaticSessionData.DeviceData
public int availableProcessors() {
return this.availableProcessors;
}
@Override // com.google.firebase.crashlytics.internal.model.StaticSessionData.DeviceData
public long diskSpace() {
return this.diskSpace;
}
public boolean equals(Object obj) {
if (obj == this) {
return true;
}
if (obj instanceof StaticSessionData.DeviceData) {
StaticSessionData.DeviceData deviceData = (StaticSessionData.DeviceData) obj;
if (this.arch == deviceData.arch() && this.model.equals(deviceData.model()) && this.availableProcessors == deviceData.availableProcessors() && this.totalRam == deviceData.totalRam() && this.diskSpace == deviceData.diskSpace() && this.isEmulator == deviceData.isEmulator() && this.state == deviceData.state() && this.manufacturer.equals(deviceData.manufacturer()) && this.modelClass.equals(deviceData.modelClass())) {
return true;
}
}
return false;
}
public int hashCode() {
int hashCode = (((((this.arch ^ 1000003) * 1000003) ^ this.model.hashCode()) * 1000003) ^ this.availableProcessors) * 1000003;
long j4 = this.totalRam;
int i = (hashCode ^ ((int) (j4 ^ (j4 >>> 32)))) * 1000003;
long j5 = this.diskSpace;
return this.modelClass.hashCode() ^ ((((((((i ^ ((int) (j5 ^ (j5 >>> 32)))) * 1000003) ^ (this.isEmulator ? 1231 : 1237)) * 1000003) ^ this.state) * 1000003) ^ this.manufacturer.hashCode()) * 1000003);
}
@Override // com.google.firebase.crashlytics.internal.model.StaticSessionData.DeviceData
public boolean isEmulator() {
return this.isEmulator;
}
@Override // com.google.firebase.crashlytics.internal.model.StaticSessionData.DeviceData
public String manufacturer() {
return this.manufacturer;
}
@Override // com.google.firebase.crashlytics.internal.model.StaticSessionData.DeviceData
public String model() {
return this.model;
}
@Override // com.google.firebase.crashlytics.internal.model.StaticSessionData.DeviceData
public String modelClass() {
return this.modelClass;
}
@Override // com.google.firebase.crashlytics.internal.model.StaticSessionData.DeviceData
public int state() {
return this.state;
}
public String toString() {
StringBuilder sb = new StringBuilder("DeviceData{arch=");
sb.append(this.arch);
sb.append(", model=");
sb.append(this.model);
sb.append(", availableProcessors=");
sb.append(this.availableProcessors);
sb.append(", totalRam=");
sb.append(this.totalRam);
sb.append(", diskSpace=");
sb.append(this.diskSpace);
sb.append(", isEmulator=");
sb.append(this.isEmulator);
sb.append(", state=");
sb.append(this.state);
sb.append(", manufacturer=");
sb.append(this.manufacturer);
sb.append(", modelClass=");
return w.r(sb, this.modelClass, "}");
}
@Override // com.google.firebase.crashlytics.internal.model.StaticSessionData.DeviceData
public long totalRam() {
return this.totalRam;
}
}

View File

@@ -0,0 +1,59 @@
package com.google.firebase.crashlytics.internal.model;
import com.google.firebase.crashlytics.internal.model.StaticSessionData;
/* JADX INFO: Access modifiers changed from: package-private */
/* loaded from: classes3.dex */
public final class AutoValue_StaticSessionData_OsData extends StaticSessionData.OsData {
private final boolean isRooted;
private final String osCodeName;
private final String osRelease;
public AutoValue_StaticSessionData_OsData(String str, String str2, boolean z3) {
if (str == null) {
throw new NullPointerException("Null osRelease");
}
this.osRelease = str;
if (str2 == null) {
throw new NullPointerException("Null osCodeName");
}
this.osCodeName = str2;
this.isRooted = z3;
}
public boolean equals(Object obj) {
if (obj == this) {
return true;
}
if (obj instanceof StaticSessionData.OsData) {
StaticSessionData.OsData osData = (StaticSessionData.OsData) obj;
if (this.osRelease.equals(osData.osRelease()) && this.osCodeName.equals(osData.osCodeName()) && this.isRooted == osData.isRooted()) {
return true;
}
}
return false;
}
public int hashCode() {
return (this.isRooted ? 1231 : 1237) ^ ((((this.osRelease.hashCode() ^ 1000003) * 1000003) ^ this.osCodeName.hashCode()) * 1000003);
}
@Override // com.google.firebase.crashlytics.internal.model.StaticSessionData.OsData
public boolean isRooted() {
return this.isRooted;
}
@Override // com.google.firebase.crashlytics.internal.model.StaticSessionData.OsData
public String osCodeName() {
return this.osCodeName;
}
@Override // com.google.firebase.crashlytics.internal.model.StaticSessionData.OsData
public String osRelease() {
return this.osRelease;
}
public String toString() {
return "OsData{osRelease=" + this.osRelease + ", osCodeName=" + this.osCodeName + ", isRooted=" + this.isRooted + "}";
}
}

View File

@@ -0,0 +1,79 @@
package com.google.firebase.crashlytics.internal.model;
import com.google.auto.value.AutoValue;
import com.google.firebase.crashlytics.internal.DevelopmentPlatformProvider;
@AutoValue
/* loaded from: classes3.dex */
public abstract class StaticSessionData {
@AutoValue
/* loaded from: classes3.dex */
public static abstract class AppData {
public static AppData create(String str, String str2, String str3, String str4, int i, DevelopmentPlatformProvider developmentPlatformProvider) {
return new AutoValue_StaticSessionData_AppData(str, str2, str3, str4, i, developmentPlatformProvider);
}
public abstract String appIdentifier();
public abstract int deliveryMechanism();
public abstract DevelopmentPlatformProvider developmentPlatformProvider();
public abstract String installUuid();
public abstract String versionCode();
public abstract String versionName();
}
@AutoValue
/* loaded from: classes3.dex */
public static abstract class DeviceData {
public static DeviceData create(int i, String str, int i4, long j4, long j5, boolean z3, int i5, String str2, String str3) {
return new AutoValue_StaticSessionData_DeviceData(i, str, i4, j4, j5, z3, i5, str2, str3);
}
public abstract int arch();
public abstract int availableProcessors();
public abstract long diskSpace();
public abstract boolean isEmulator();
public abstract String manufacturer();
public abstract String model();
public abstract String modelClass();
public abstract int state();
public abstract long totalRam();
}
@AutoValue
/* loaded from: classes3.dex */
public static abstract class OsData {
public static OsData create(String str, String str2, boolean z3) {
return new AutoValue_StaticSessionData_OsData(str, str2, z3);
}
public abstract boolean isRooted();
public abstract String osCodeName();
public abstract String osRelease();
}
public static StaticSessionData create(AppData appData, OsData osData, DeviceData deviceData) {
return new AutoValue_StaticSessionData(appData, osData, deviceData);
}
public abstract AppData appData();
public abstract DeviceData deviceData();
public abstract OsData osData();
}

Some files were not shown because too many files have changed in this diff Show More