Initial import of ADIF API reverse-engineering toolkit

This commit is contained in:
2025-12-16 08:37:56 +01:00
commit 60388529c1
11486 changed files with 1086536 additions and 0 deletions

View File

@@ -0,0 +1,113 @@
package com.google.firebase.crashlytics;
import android.os.Bundle;
import com.google.android.gms.measurement.AppMeasurement;
import com.google.firebase.analytics.connector.AnalyticsConnector;
import com.google.firebase.annotations.DeferredApi;
import com.google.firebase.crashlytics.internal.Logger;
import com.google.firebase.crashlytics.internal.analytics.AnalyticsEventLogger;
import com.google.firebase.crashlytics.internal.analytics.BlockingAnalyticsEventLogger;
import com.google.firebase.crashlytics.internal.analytics.BreadcrumbAnalyticsEventReceiver;
import com.google.firebase.crashlytics.internal.analytics.CrashlyticsOriginAnalyticsEventLogger;
import com.google.firebase.crashlytics.internal.analytics.UnavailableAnalyticsEventLogger;
import com.google.firebase.crashlytics.internal.breadcrumbs.BreadcrumbHandler;
import com.google.firebase.crashlytics.internal.breadcrumbs.BreadcrumbSource;
import com.google.firebase.crashlytics.internal.breadcrumbs.DisabledBreadcrumbSource;
import com.google.firebase.inject.Deferred;
import com.google.firebase.inject.Provider;
import com.google.firebase.messaging.ServiceStarter;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.concurrent.TimeUnit;
/* loaded from: classes3.dex */
public class AnalyticsDeferredProxy {
private final Deferred<AnalyticsConnector> analyticsConnectorDeferred;
private volatile AnalyticsEventLogger analyticsEventLogger;
private final List<BreadcrumbHandler> breadcrumbHandlerList;
private volatile BreadcrumbSource breadcrumbSource;
public AnalyticsDeferredProxy(Deferred<AnalyticsConnector> deferred) {
this(deferred, new DisabledBreadcrumbSource(), new UnavailableAnalyticsEventLogger());
}
private void init() {
this.analyticsConnectorDeferred.whenAvailable(new a(this));
}
public /* synthetic */ void lambda$getAnalyticsEventLogger$1(String str, Bundle bundle) {
this.analyticsEventLogger.logEvent(str, bundle);
}
public /* synthetic */ void lambda$getDeferredBreadcrumbSource$0(BreadcrumbHandler breadcrumbHandler) {
synchronized (this) {
try {
if (this.breadcrumbSource instanceof DisabledBreadcrumbSource) {
this.breadcrumbHandlerList.add(breadcrumbHandler);
}
this.breadcrumbSource.registerBreadcrumbHandler(breadcrumbHandler);
} catch (Throwable th) {
throw th;
}
}
}
public /* synthetic */ void lambda$init$2(Provider provider) {
Logger.getLogger().d("AnalyticsConnector now available.");
AnalyticsConnector analyticsConnector = (AnalyticsConnector) provider.get();
CrashlyticsOriginAnalyticsEventLogger crashlyticsOriginAnalyticsEventLogger = new CrashlyticsOriginAnalyticsEventLogger(analyticsConnector);
CrashlyticsAnalyticsListener crashlyticsAnalyticsListener = new CrashlyticsAnalyticsListener();
if (subscribeToAnalyticsEvents(analyticsConnector, crashlyticsAnalyticsListener) == null) {
Logger.getLogger().w("Could not register Firebase Analytics listener; a listener is already registered.");
return;
}
Logger.getLogger().d("Registered Firebase Analytics listener.");
BreadcrumbAnalyticsEventReceiver breadcrumbAnalyticsEventReceiver = new BreadcrumbAnalyticsEventReceiver();
BlockingAnalyticsEventLogger blockingAnalyticsEventLogger = new BlockingAnalyticsEventLogger(crashlyticsOriginAnalyticsEventLogger, ServiceStarter.ERROR_UNKNOWN, TimeUnit.MILLISECONDS);
synchronized (this) {
try {
Iterator<BreadcrumbHandler> it = this.breadcrumbHandlerList.iterator();
while (it.hasNext()) {
breadcrumbAnalyticsEventReceiver.registerBreadcrumbHandler(it.next());
}
crashlyticsAnalyticsListener.setBreadcrumbEventReceiver(breadcrumbAnalyticsEventReceiver);
crashlyticsAnalyticsListener.setCrashlyticsOriginEventReceiver(blockingAnalyticsEventLogger);
this.breadcrumbSource = breadcrumbAnalyticsEventReceiver;
this.analyticsEventLogger = blockingAnalyticsEventLogger;
} catch (Throwable th) {
throw th;
}
}
}
@DeferredApi
private static AnalyticsConnector.AnalyticsConnectorHandle subscribeToAnalyticsEvents(AnalyticsConnector analyticsConnector, CrashlyticsAnalyticsListener crashlyticsAnalyticsListener) {
AnalyticsConnector.AnalyticsConnectorHandle registerAnalyticsConnectorListener = analyticsConnector.registerAnalyticsConnectorListener("clx", crashlyticsAnalyticsListener);
if (registerAnalyticsConnectorListener != null) {
return registerAnalyticsConnectorListener;
}
Logger.getLogger().d("Could not register AnalyticsConnectorListener with Crashlytics origin.");
AnalyticsConnector.AnalyticsConnectorHandle registerAnalyticsConnectorListener2 = analyticsConnector.registerAnalyticsConnectorListener(AppMeasurement.CRASH_ORIGIN, crashlyticsAnalyticsListener);
if (registerAnalyticsConnectorListener2 != null) {
Logger.getLogger().w("A new version of the Google Analytics for Firebase SDK is now available. For improved performance and compatibility with Crashlytics, please update to the latest version.");
}
return registerAnalyticsConnectorListener2;
}
public AnalyticsEventLogger getAnalyticsEventLogger() {
return new a(this);
}
public BreadcrumbSource getDeferredBreadcrumbSource() {
return new a(this);
}
public AnalyticsDeferredProxy(Deferred<AnalyticsConnector> deferred, BreadcrumbSource breadcrumbSource, AnalyticsEventLogger analyticsEventLogger) {
this.analyticsConnectorDeferred = deferred;
this.breadcrumbSource = breadcrumbSource;
this.breadcrumbHandlerList = new ArrayList();
this.analyticsEventLogger = analyticsEventLogger;
init();
}
}

View File

@@ -0,0 +1,9 @@
package com.google.firebase.crashlytics;
/* loaded from: classes3.dex */
public final class BuildConfig {
public static final String BUILD_TYPE = "release";
public static final boolean DEBUG = false;
public static final String LIBRARY_PACKAGE_NAME = "com.google.firebase.crashlytics";
public static final String VERSION_NAME = "18.6.0";
}

View File

@@ -0,0 +1,52 @@
package com.google.firebase.crashlytics;
import android.os.Bundle;
import com.google.firebase.analytics.connector.AnalyticsConnector;
import com.google.firebase.crashlytics.internal.Logger;
import com.google.firebase.crashlytics.internal.analytics.AnalyticsEventReceiver;
import java.util.Locale;
/* loaded from: classes3.dex */
class CrashlyticsAnalyticsListener implements AnalyticsConnector.AnalyticsConnectorListener {
static final String CRASHLYTICS_ORIGIN = "clx";
static final String EVENT_NAME_KEY = "name";
static final String EVENT_ORIGIN_KEY = "_o";
static final String EVENT_PARAMS_KEY = "params";
private AnalyticsEventReceiver breadcrumbEventReceiver;
private AnalyticsEventReceiver crashlyticsOriginEventReceiver;
private static void notifyEventReceiver(AnalyticsEventReceiver analyticsEventReceiver, String str, Bundle bundle) {
if (analyticsEventReceiver == null) {
return;
}
analyticsEventReceiver.onEvent(str, bundle);
}
private void notifyEventReceivers(String str, Bundle bundle) {
notifyEventReceiver(CRASHLYTICS_ORIGIN.equals(bundle.getString(EVENT_ORIGIN_KEY)) ? this.crashlyticsOriginEventReceiver : this.breadcrumbEventReceiver, str, bundle);
}
@Override // com.google.firebase.analytics.connector.AnalyticsConnector.AnalyticsConnectorListener
public void onMessageTriggered(int i, Bundle bundle) {
String string;
Logger logger = Logger.getLogger();
Locale locale = Locale.US;
logger.v("Analytics listener received message. ID: " + i + ", Extras: " + bundle);
if (bundle == null || (string = bundle.getString("name")) == null) {
return;
}
Bundle bundle2 = bundle.getBundle(EVENT_PARAMS_KEY);
if (bundle2 == null) {
bundle2 = new Bundle();
}
notifyEventReceivers(string, bundle2);
}
public void setBreadcrumbEventReceiver(AnalyticsEventReceiver analyticsEventReceiver) {
this.breadcrumbEventReceiver = analyticsEventReceiver;
}
public void setCrashlyticsOriginEventReceiver(AnalyticsEventReceiver analyticsEventReceiver) {
this.crashlyticsOriginEventReceiver = analyticsEventReceiver;
}
}

View File

@@ -0,0 +1,35 @@
package com.google.firebase.crashlytics;
import com.google.firebase.FirebaseApp;
import com.google.firebase.analytics.connector.AnalyticsConnector;
import com.google.firebase.components.Component;
import com.google.firebase.components.ComponentContainer;
import com.google.firebase.components.ComponentRegistrar;
import com.google.firebase.components.Dependency;
import com.google.firebase.crashlytics.internal.CrashlyticsNativeComponent;
import com.google.firebase.heartbeatinfo.b;
import com.google.firebase.installations.FirebaseInstallationsApi;
import com.google.firebase.platforminfo.LibraryVersionComponent;
import com.google.firebase.remoteconfig.interop.FirebaseRemoteConfigInterop;
import com.google.firebase.sessions.api.FirebaseSessionsDependencies;
import com.google.firebase.sessions.api.SessionSubscriber;
import java.util.Arrays;
import java.util.List;
/* loaded from: classes3.dex */
public class CrashlyticsRegistrar implements ComponentRegistrar {
private static final String LIBRARY_NAME = "fire-cls";
static {
FirebaseSessionsDependencies.INSTANCE.addDependency(SessionSubscriber.Name.CRASHLYTICS);
}
public FirebaseCrashlytics buildCrashlytics(ComponentContainer componentContainer) {
return FirebaseCrashlytics.init((FirebaseApp) componentContainer.get(FirebaseApp.class), (FirebaseInstallationsApi) componentContainer.get(FirebaseInstallationsApi.class), componentContainer.getDeferred(CrashlyticsNativeComponent.class), componentContainer.getDeferred(AnalyticsConnector.class), componentContainer.getDeferred(FirebaseRemoteConfigInterop.class));
}
@Override // com.google.firebase.components.ComponentRegistrar
public List<Component<?>> getComponents() {
return Arrays.asList(Component.builder(FirebaseCrashlytics.class).name(LIBRARY_NAME).add(Dependency.required((Class<?>) FirebaseApp.class)).add(Dependency.required((Class<?>) FirebaseInstallationsApi.class)).add(Dependency.deferred((Class<?>) CrashlyticsNativeComponent.class)).add(Dependency.deferred((Class<?>) AnalyticsConnector.class)).add(Dependency.deferred((Class<?>) FirebaseRemoteConfigInterop.class)).factory(new b(this, 2)).eagerInDefaultApp().build(), LibraryVersionComponent.create(LIBRARY_NAME, BuildConfig.VERSION_NAME));
}
}

View File

@@ -0,0 +1,52 @@
package com.google.firebase.crashlytics;
import java.util.HashMap;
import java.util.Map;
/* loaded from: classes3.dex */
public class CustomKeysAndValues {
final Map<String, String> keysAndValues;
/* loaded from: classes3.dex */
public static class Builder {
private Map<String, String> keysAndValues = new HashMap();
public CustomKeysAndValues build() {
return new CustomKeysAndValues(this);
}
public Builder putBoolean(String str, boolean z3) {
this.keysAndValues.put(str, Boolean.toString(z3));
return this;
}
public Builder putDouble(String str, double d4) {
this.keysAndValues.put(str, Double.toString(d4));
return this;
}
public Builder putFloat(String str, float f2) {
this.keysAndValues.put(str, Float.toString(f2));
return this;
}
public Builder putInt(String str, int i) {
this.keysAndValues.put(str, Integer.toString(i));
return this;
}
public Builder putLong(String str, long j4) {
this.keysAndValues.put(str, Long.toString(j4));
return this;
}
public Builder putString(String str, String str2) {
this.keysAndValues.put(str, str2);
return this;
}
}
public CustomKeysAndValues(Builder builder) {
this.keysAndValues = builder.keysAndValues;
}
}

View File

@@ -0,0 +1,173 @@
package com.google.firebase.crashlytics;
import android.content.Context;
import android.content.pm.PackageManager;
import com.google.android.gms.tasks.Continuation;
import com.google.android.gms.tasks.Task;
import com.google.android.gms.tasks.Tasks;
import com.google.firebase.FirebaseApp;
import com.google.firebase.analytics.connector.AnalyticsConnector;
import com.google.firebase.crashlytics.internal.CrashlyticsNativeComponent;
import com.google.firebase.crashlytics.internal.CrashlyticsNativeComponentDeferredProxy;
import com.google.firebase.crashlytics.internal.DevelopmentPlatformProvider;
import com.google.firebase.crashlytics.internal.Logger;
import com.google.firebase.crashlytics.internal.RemoteConfigDeferredProxy;
import com.google.firebase.crashlytics.internal.common.AppData;
import com.google.firebase.crashlytics.internal.common.BuildIdInfo;
import com.google.firebase.crashlytics.internal.common.CommonUtils;
import com.google.firebase.crashlytics.internal.common.CrashlyticsAppQualitySessionsSubscriber;
import com.google.firebase.crashlytics.internal.common.CrashlyticsCore;
import com.google.firebase.crashlytics.internal.common.DataCollectionArbiter;
import com.google.firebase.crashlytics.internal.common.ExecutorUtils;
import com.google.firebase.crashlytics.internal.common.IdManager;
import com.google.firebase.crashlytics.internal.network.HttpRequestFactory;
import com.google.firebase.crashlytics.internal.persistence.FileStore;
import com.google.firebase.crashlytics.internal.settings.SettingsController;
import com.google.firebase.inject.Deferred;
import com.google.firebase.installations.FirebaseInstallationsApi;
import com.google.firebase.remoteconfig.interop.FirebaseRemoteConfigInterop;
import com.google.firebase.sessions.api.FirebaseSessionsDependencies;
import java.util.List;
import java.util.concurrent.Callable;
import java.util.concurrent.ExecutorService;
/* loaded from: classes3.dex */
public class FirebaseCrashlytics {
static final int APP_EXCEPTION_CALLBACK_TIMEOUT_MS = 500;
static final String FIREBASE_CRASHLYTICS_ANALYTICS_ORIGIN = "clx";
static final String LEGACY_CRASH_ANALYTICS_ORIGIN = "crash";
final CrashlyticsCore core;
private FirebaseCrashlytics(CrashlyticsCore crashlyticsCore) {
this.core = crashlyticsCore;
}
public static FirebaseCrashlytics getInstance() {
FirebaseCrashlytics firebaseCrashlytics = (FirebaseCrashlytics) FirebaseApp.getInstance().get(FirebaseCrashlytics.class);
if (firebaseCrashlytics != null) {
return firebaseCrashlytics;
}
throw new NullPointerException("FirebaseCrashlytics component is not present.");
}
public static FirebaseCrashlytics init(FirebaseApp firebaseApp, FirebaseInstallationsApi firebaseInstallationsApi, Deferred<CrashlyticsNativeComponent> deferred, Deferred<AnalyticsConnector> deferred2, Deferred<FirebaseRemoteConfigInterop> deferred3) {
Context applicationContext = firebaseApp.getApplicationContext();
String packageName = applicationContext.getPackageName();
Logger.getLogger().i("Initializing Firebase Crashlytics " + CrashlyticsCore.getVersion() + " for " + packageName);
FileStore fileStore = new FileStore(applicationContext);
DataCollectionArbiter dataCollectionArbiter = new DataCollectionArbiter(firebaseApp);
IdManager idManager = new IdManager(applicationContext, packageName, firebaseInstallationsApi, dataCollectionArbiter);
CrashlyticsNativeComponentDeferredProxy crashlyticsNativeComponentDeferredProxy = new CrashlyticsNativeComponentDeferredProxy(deferred);
AnalyticsDeferredProxy analyticsDeferredProxy = new AnalyticsDeferredProxy(deferred2);
ExecutorService buildSingleThreadExecutorService = ExecutorUtils.buildSingleThreadExecutorService("Crashlytics Exception Handler");
CrashlyticsAppQualitySessionsSubscriber crashlyticsAppQualitySessionsSubscriber = new CrashlyticsAppQualitySessionsSubscriber(dataCollectionArbiter, fileStore);
FirebaseSessionsDependencies.register(crashlyticsAppQualitySessionsSubscriber);
final CrashlyticsCore crashlyticsCore = new CrashlyticsCore(firebaseApp, idManager, crashlyticsNativeComponentDeferredProxy, dataCollectionArbiter, analyticsDeferredProxy.getDeferredBreadcrumbSource(), analyticsDeferredProxy.getAnalyticsEventLogger(), fileStore, buildSingleThreadExecutorService, crashlyticsAppQualitySessionsSubscriber, new RemoteConfigDeferredProxy(deferred3));
String applicationId = firebaseApp.getOptions().getApplicationId();
String mappingFileId = CommonUtils.getMappingFileId(applicationContext);
List<BuildIdInfo> buildIdInfo = CommonUtils.getBuildIdInfo(applicationContext);
Logger.getLogger().d("Mapping file ID is: " + mappingFileId);
for (BuildIdInfo buildIdInfo2 : buildIdInfo) {
Logger.getLogger().d("Build id for " + buildIdInfo2.getLibraryName() + " on " + buildIdInfo2.getArch() + ": " + buildIdInfo2.getBuildId());
}
try {
AppData create = AppData.create(applicationContext, idManager, applicationId, mappingFileId, buildIdInfo, new DevelopmentPlatformProvider(applicationContext));
Logger.getLogger().v("Installer package name is: " + create.installerPackageName);
ExecutorService buildSingleThreadExecutorService2 = ExecutorUtils.buildSingleThreadExecutorService("com.google.firebase.crashlytics.startup");
final SettingsController create2 = SettingsController.create(applicationContext, applicationId, idManager, new HttpRequestFactory(), create.versionCode, create.versionName, fileStore, dataCollectionArbiter);
create2.loadSettingsData(buildSingleThreadExecutorService2).continueWith(buildSingleThreadExecutorService2, new Continuation<Void, Object>() { // from class: com.google.firebase.crashlytics.FirebaseCrashlytics.1
@Override // com.google.android.gms.tasks.Continuation
public Object then(Task<Void> task) throws Exception {
if (task.isSuccessful()) {
return null;
}
Logger.getLogger().e("Error fetching settings.", task.getException());
return null;
}
});
final boolean onPreExecute = crashlyticsCore.onPreExecute(create, create2);
Tasks.call(buildSingleThreadExecutorService2, new Callable<Void>() { // from class: com.google.firebase.crashlytics.FirebaseCrashlytics.2
@Override // java.util.concurrent.Callable
public Void call() throws Exception {
if (!onPreExecute) {
return null;
}
crashlyticsCore.doBackgroundInitializationAsync(create2);
return null;
}
});
return new FirebaseCrashlytics(crashlyticsCore);
} catch (PackageManager.NameNotFoundException e4) {
Logger.getLogger().e("Error retrieving app package info.", e4);
return null;
}
}
public Task<Boolean> checkForUnsentReports() {
return this.core.checkForUnsentReports();
}
public void deleteUnsentReports() {
this.core.deleteUnsentReports();
}
public boolean didCrashOnPreviousExecution() {
return this.core.didCrashOnPreviousExecution();
}
public void log(String str) {
this.core.log(str);
}
public void recordException(Throwable th) {
if (th == null) {
Logger.getLogger().w("A null value was passed to recordException. Ignoring.");
} else {
this.core.logException(th);
}
}
public void sendUnsentReports() {
this.core.sendUnsentReports();
}
public void setCrashlyticsCollectionEnabled(boolean z3) {
this.core.setCrashlyticsCollectionEnabled(Boolean.valueOf(z3));
}
public void setCustomKey(String str, boolean z3) {
this.core.setCustomKey(str, Boolean.toString(z3));
}
public void setCustomKeys(CustomKeysAndValues customKeysAndValues) {
this.core.setCustomKeys(customKeysAndValues.keysAndValues);
}
public void setUserId(String str) {
this.core.setUserId(str);
}
public void setCrashlyticsCollectionEnabled(Boolean bool) {
this.core.setCrashlyticsCollectionEnabled(bool);
}
public void setCustomKey(String str, double d4) {
this.core.setCustomKey(str, Double.toString(d4));
}
public void setCustomKey(String str, float f2) {
this.core.setCustomKey(str, Float.toString(f2));
}
public void setCustomKey(String str, int i) {
this.core.setCustomKey(str, Integer.toString(i));
}
public void setCustomKey(String str, long j4) {
this.core.setCustomKey(str, Long.toString(j4));
}
public void setCustomKey(String str, String str2) {
this.core.setCustomKey(str, str2);
}
}

View File

@@ -0,0 +1,24 @@
package com.google.firebase.crashlytics;
import com.google.firebase.Firebase;
import kotlin.Metadata;
import kotlin.Unit;
import kotlin.jvm.functions.Function1;
import kotlin.jvm.internal.Intrinsics;
@Metadata(d1 = {"\u0000\"\n\u0000\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\b\u0003\n\u0002\u0010\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0000\u001a#\u0010\u0005\u001a\u00020\u0006*\u00020\u00012\u0017\u0010\u0007\u001a\u0013\u0012\u0004\u0012\u00020\t\u0012\u0004\u0012\u00020\u00060\\u0006\u0002\b\n\"\u0015\u0010\u0000\u001a\u00020\u0001*\u00020\u00028F¢\u0006\u0006\u001a\u0004\b\u0003\u0010\u0004¨\u0006\u000b"}, d2 = {"crashlytics", "Lcom/google/firebase/crashlytics/FirebaseCrashlytics;", "Lcom/google/firebase/Firebase;", "getCrashlytics", "(Lcom/google/firebase/Firebase;)Lcom/google/firebase/crashlytics/FirebaseCrashlytics;", "setCustomKeys", "", "init", "Lkotlin/Function1;", "Lcom/google/firebase/crashlytics/KeyValueBuilder;", "Lkotlin/ExtensionFunctionType;", "com.google.firebase-firebase-crashlytics"}, k = 2, mv = {1, 7, 1}, xi = 48)
/* loaded from: classes3.dex */
public final class FirebaseCrashlyticsKt {
public static final FirebaseCrashlytics getCrashlytics(Firebase firebase) {
Intrinsics.checkNotNullParameter(firebase, "<this>");
FirebaseCrashlytics firebaseCrashlytics = FirebaseCrashlytics.getInstance();
Intrinsics.checkNotNullExpressionValue(firebaseCrashlytics, "getInstance()");
return firebaseCrashlytics;
}
public static final void setCustomKeys(FirebaseCrashlytics firebaseCrashlytics, Function1<? super KeyValueBuilder, Unit> init) {
Intrinsics.checkNotNullParameter(firebaseCrashlytics, "<this>");
Intrinsics.checkNotNullParameter(init, "init");
init.invoke(new KeyValueBuilder(firebaseCrashlytics));
}
}

View File

@@ -0,0 +1,18 @@
package com.google.firebase.crashlytics;
import androidx.annotation.Keep;
import com.google.firebase.components.Component;
import com.google.firebase.components.ComponentRegistrar;
import java.util.List;
import kotlin.Metadata;
import kotlin.collections.CollectionsKt;
@Keep
@Metadata(d1 = {"\u0000\u0018\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\b\u0002\n\u0002\u0010 \n\u0002\u0018\u0002\n\u0002\b\u0002\b\u0001\u0018\u0000 \u00062\u00020\u0001:\u0001\u0006B\u0005¢\u0006\u0002\u0010\u0002J\u0012\u0010\u0003\u001a\f\u0012\b\u0012\u0006\u0012\u0002\b\u00030\u00050\u0004H\u0016¨\u0006\u0007"}, d2 = {"Lcom/google/firebase/crashlytics/FirebaseCrashlyticsKtxRegistrar;", "Lcom/google/firebase/components/ComponentRegistrar;", "()V", "getComponents", "", "Lcom/google/firebase/components/Component;", "Companion", "com.google.firebase-firebase-crashlytics"}, k = 1, mv = {1, 7, 1}, xi = 48)
/* loaded from: classes3.dex */
public final class FirebaseCrashlyticsKtxRegistrar implements ComponentRegistrar {
@Override // com.google.firebase.components.ComponentRegistrar
public List<Component<?>> getComponents() {
return CollectionsKt.emptyList();
}
}

View File

@@ -0,0 +1,46 @@
package com.google.firebase.crashlytics;
import kotlin.Metadata;
import kotlin.jvm.internal.Intrinsics;
@Metadata(d1 = {"\u00002\n\u0002\u0018\u0002\n\u0002\u0010\u0000\n\u0000\n\u0002\u0018\u0002\n\u0002\b\u0002\n\u0002\u0010\u0002\n\u0002\u0010\u000e\n\u0000\n\u0002\u0010\u000b\n\u0002\u0010\u0006\n\u0002\u0010\u0007\n\u0002\u0010\b\n\u0002\u0010\t\n\u0000\u0018\u00002\u00020\u0001B\r\u0012\u0006\u0010\u0002\u001a\u00020\u0003¢\u0006\u0002\u0010\u0004J\u0016\u0010\u0005\u001a\u00020\u00062\u0006\u0010\u0005\u001a\u00020\u00072\u0006\u0010\b\u001a\u00020\tJ\u0016\u0010\u0005\u001a\u00020\u00062\u0006\u0010\u0005\u001a\u00020\u00072\u0006\u0010\b\u001a\u00020\nJ\u0016\u0010\u0005\u001a\u00020\u00062\u0006\u0010\u0005\u001a\u00020\u00072\u0006\u0010\b\u001a\u00020\u000bJ\u0016\u0010\u0005\u001a\u00020\u00062\u0006\u0010\u0005\u001a\u00020\u00072\u0006\u0010\b\u001a\u00020\fJ\u0016\u0010\u0005\u001a\u00020\u00062\u0006\u0010\u0005\u001a\u00020\u00072\u0006\u0010\b\u001a\u00020\rJ\u0016\u0010\u0005\u001a\u00020\u00062\u0006\u0010\u0005\u001a\u00020\u00072\u0006\u0010\b\u001a\u00020\u0007R\u000e\u0010\u0002\u001a\u00020\u0003X\u0082\u0004¢\u0006\u0002\n\u0000¨\u0006\u000e"}, d2 = {"Lcom/google/firebase/crashlytics/KeyValueBuilder;", "", "crashlytics", "Lcom/google/firebase/crashlytics/FirebaseCrashlytics;", "(Lcom/google/firebase/crashlytics/FirebaseCrashlytics;)V", "key", "", "", "value", "", "", "", "", "", "com.google.firebase-firebase-crashlytics"}, k = 1, mv = {1, 7, 1}, xi = 48)
/* loaded from: classes3.dex */
public final class KeyValueBuilder {
private final FirebaseCrashlytics crashlytics;
public KeyValueBuilder(FirebaseCrashlytics crashlytics) {
Intrinsics.checkNotNullParameter(crashlytics, "crashlytics");
this.crashlytics = crashlytics;
}
public final void key(String key, boolean value) {
Intrinsics.checkNotNullParameter(key, "key");
this.crashlytics.setCustomKey(key, value);
}
public final void key(String key, double value) {
Intrinsics.checkNotNullParameter(key, "key");
this.crashlytics.setCustomKey(key, value);
}
public final void key(String key, float value) {
Intrinsics.checkNotNullParameter(key, "key");
this.crashlytics.setCustomKey(key, value);
}
public final void key(String key, int value) {
Intrinsics.checkNotNullParameter(key, "key");
this.crashlytics.setCustomKey(key, value);
}
public final void key(String key, long value) {
Intrinsics.checkNotNullParameter(key, "key");
this.crashlytics.setCustomKey(key, value);
}
public final void key(String key, String value) {
Intrinsics.checkNotNullParameter(key, "key");
Intrinsics.checkNotNullParameter(value, "value");
this.crashlytics.setCustomKey(key, value);
}
}

View File

@@ -0,0 +1,290 @@
package com.google.firebase.crashlytics;
/* loaded from: classes3.dex */
public final class R {
/* loaded from: classes3.dex */
public static final class attr {
public static final int alpha = 0x7f030031;
public static final int coordinatorLayoutStyle = 0x7f03016c;
public static final int font = 0x7f03022d;
public static final int fontProviderAuthority = 0x7f03022f;
public static final int fontProviderCerts = 0x7f030230;
public static final int fontProviderFetchStrategy = 0x7f030231;
public static final int fontProviderFetchTimeout = 0x7f030232;
public static final int fontProviderPackage = 0x7f030233;
public static final int fontProviderQuery = 0x7f030234;
public static final int fontStyle = 0x7f030236;
public static final int fontVariationSettings = 0x7f030237;
public static final int fontWeight = 0x7f030238;
public static final int keylines = 0x7f0302b5;
public static final int layout_anchor = 0x7f0302c6;
public static final int layout_anchorGravity = 0x7f0302c7;
public static final int layout_behavior = 0x7f0302c9;
public static final int layout_dodgeInsetEdges = 0x7f0302fa;
public static final int layout_insetEdge = 0x7f030305;
public static final int layout_keyline = 0x7f030306;
public static final int statusBarBackground = 0x7f030488;
public static final int ttcIndex = 0x7f030559;
private attr() {
}
}
/* loaded from: classes3.dex */
public static final class color {
public static final int notification_action_color_filter = 0x7f050315;
public static final int notification_icon_bg_color = 0x7f050316;
public static final int ripple_material_light = 0x7f050322;
public static final int secondary_text_default_material_light = 0x7f050324;
private color() {
}
}
/* loaded from: classes3.dex */
public static final class dimen {
public static final int compat_button_inset_horizontal_material = 0x7f06006d;
public static final int compat_button_inset_vertical_material = 0x7f06006e;
public static final int compat_button_padding_horizontal_material = 0x7f06006f;
public static final int compat_button_padding_vertical_material = 0x7f060070;
public static final int compat_control_corner_material = 0x7f060071;
public static final int compat_notification_large_icon_max_height = 0x7f060072;
public static final int compat_notification_large_icon_max_width = 0x7f060073;
public static final int notification_action_icon_size = 0x7f060385;
public static final int notification_action_text_size = 0x7f060386;
public static final int notification_big_circle_margin = 0x7f060387;
public static final int notification_content_margin_start = 0x7f060388;
public static final int notification_large_icon_height = 0x7f06038d;
public static final int notification_large_icon_width = 0x7f06038e;
public static final int notification_main_column_padding_top = 0x7f06038f;
public static final int notification_media_narrow_margin = 0x7f060391;
public static final int notification_right_icon_size = 0x7f060393;
public static final int notification_right_side_padding_top = 0x7f060394;
public static final int notification_small_icon_background_padding = 0x7f060395;
public static final int notification_small_icon_size_as_large = 0x7f060396;
public static final int notification_subtext_size = 0x7f060397;
public static final int notification_top_pad = 0x7f06039b;
public static final int notification_top_pad_large_text = 0x7f06039c;
private dimen() {
}
}
/* loaded from: classes3.dex */
public static final class drawable {
public static final int notification_action_background = 0x7f070181;
public static final int notification_bg = 0x7f070182;
public static final int notification_bg_low = 0x7f070183;
public static final int notification_bg_low_normal = 0x7f070184;
public static final int notification_bg_low_pressed = 0x7f070185;
public static final int notification_bg_normal = 0x7f070186;
public static final int notification_bg_normal_pressed = 0x7f070187;
public static final int notification_icon_background = 0x7f070188;
public static final int notification_template_icon_bg = 0x7f07018a;
public static final int notification_template_icon_low_bg = 0x7f07018b;
public static final int notification_tile_bg = 0x7f07018c;
public static final int notify_panel_notification_icon_bg = 0x7f07018d;
private drawable() {
}
}
/* loaded from: classes3.dex */
public static final class id {
public static final int accessibility_action_clickable_span = 0x7f090013;
public static final int accessibility_custom_action_0 = 0x7f090014;
public static final int accessibility_custom_action_1 = 0x7f090015;
public static final int accessibility_custom_action_10 = 0x7f090016;
public static final int accessibility_custom_action_11 = 0x7f090017;
public static final int accessibility_custom_action_12 = 0x7f090018;
public static final int accessibility_custom_action_13 = 0x7f090019;
public static final int accessibility_custom_action_14 = 0x7f09001a;
public static final int accessibility_custom_action_15 = 0x7f09001b;
public static final int accessibility_custom_action_16 = 0x7f09001c;
public static final int accessibility_custom_action_17 = 0x7f09001d;
public static final int accessibility_custom_action_18 = 0x7f09001e;
public static final int accessibility_custom_action_19 = 0x7f09001f;
public static final int accessibility_custom_action_2 = 0x7f090020;
public static final int accessibility_custom_action_20 = 0x7f090021;
public static final int accessibility_custom_action_21 = 0x7f090022;
public static final int accessibility_custom_action_22 = 0x7f090023;
public static final int accessibility_custom_action_23 = 0x7f090024;
public static final int accessibility_custom_action_24 = 0x7f090025;
public static final int accessibility_custom_action_25 = 0x7f090026;
public static final int accessibility_custom_action_26 = 0x7f090027;
public static final int accessibility_custom_action_27 = 0x7f090028;
public static final int accessibility_custom_action_28 = 0x7f090029;
public static final int accessibility_custom_action_29 = 0x7f09002a;
public static final int accessibility_custom_action_3 = 0x7f09002b;
public static final int accessibility_custom_action_30 = 0x7f09002c;
public static final int accessibility_custom_action_31 = 0x7f09002d;
public static final int accessibility_custom_action_4 = 0x7f09002e;
public static final int accessibility_custom_action_5 = 0x7f09002f;
public static final int accessibility_custom_action_6 = 0x7f090030;
public static final int accessibility_custom_action_7 = 0x7f090031;
public static final int accessibility_custom_action_8 = 0x7f090032;
public static final int accessibility_custom_action_9 = 0x7f090033;
public static final int action_container = 0x7f090045;
public static final int action_divider = 0x7f090048;
public static final int action_image = 0x7f09004a;
public static final int action_text = 0x7f090051;
public static final int actions = 0x7f090052;
public static final int async = 0x7f090071;
public static final int blocking = 0x7f090082;
public static final int bottom = 0x7f090083;
public static final int chronometer = 0x7f0900a9;
public static final int dialog_button = 0x7f09010b;
public static final int end = 0x7f090133;
public static final int forever = 0x7f090152;
public static final int icon = 0x7f090195;
public static final int icon_group = 0x7f090196;
public static final int info = 0x7f0901a9;
public static final int italic = 0x7f0901be;
public static final int left = 0x7f0901e2;
public static final int line1 = 0x7f0901e9;
public static final int line3 = 0x7f0901ea;
public static final int none = 0x7f090264;
public static final int normal = 0x7f090265;
public static final int notification_background = 0x7f090269;
public static final int notification_main_column = 0x7f09026a;
public static final int notification_main_column_container = 0x7f09026b;
public static final int right = 0x7f0902cd;
public static final int right_icon = 0x7f0902cf;
public static final int right_side = 0x7f0902d0;
public static final int start = 0x7f090322;
public static final int tag_accessibility_actions = 0x7f09035c;
public static final int tag_accessibility_clickable_spans = 0x7f09035d;
public static final int tag_accessibility_heading = 0x7f09035e;
public static final int tag_accessibility_pane_title = 0x7f09035f;
public static final int tag_screen_reader_focusable = 0x7f090363;
public static final int tag_transition_group = 0x7f090365;
public static final int tag_unhandled_key_event_manager = 0x7f090366;
public static final int tag_unhandled_key_listeners = 0x7f090367;
public static final int text = 0x7f09036d;
public static final int text2 = 0x7f09036e;
public static final int time = 0x7f09038e;
public static final int title = 0x7f090393;
public static final int top = 0x7f0903ac;
private id() {
}
}
/* loaded from: classes3.dex */
public static final class integer {
public static final int google_play_services_version = 0x7f0a0009;
public static final int status_bar_notification_info_maxnum = 0x7f0a0045;
private integer() {
}
}
/* loaded from: classes3.dex */
public static final class layout {
public static final int custom_dialog = 0x7f0c0026;
public static final int notification_action = 0x7f0c00a8;
public static final int notification_action_tombstone = 0x7f0c00a9;
public static final int notification_template_custom_big = 0x7f0c00aa;
public static final int notification_template_icon_group = 0x7f0c00ab;
public static final int notification_template_part_chronometer = 0x7f0c00ac;
public static final int notification_template_part_time = 0x7f0c00ad;
private layout() {
}
}
/* loaded from: classes3.dex */
public static final class raw {
public static final int firebase_common_keep = 0x7f120000;
private raw() {
}
}
/* loaded from: classes3.dex */
public static final class string {
public static final int common_google_play_services_unknown_issue = 0x7f1300bc;
public static final int status_bar_notification_info_overflow = 0x7f13023b;
private string() {
}
}
/* loaded from: classes3.dex */
public static final class style {
public static final int TextAppearance_Compat_Notification = 0x7f1401fb;
public static final int TextAppearance_Compat_Notification_Info = 0x7f1401fc;
public static final int TextAppearance_Compat_Notification_Line2 = 0x7f1401fd;
public static final int TextAppearance_Compat_Notification_Time = 0x7f1401fe;
public static final int TextAppearance_Compat_Notification_Title = 0x7f1401ff;
public static final int Widget_Compat_NotificationActionContainer = 0x7f1403a1;
public static final int Widget_Compat_NotificationActionText = 0x7f1403a2;
public static final int Widget_Support_CoordinatorLayout = 0x7f1404d7;
private style() {
}
}
/* loaded from: classes3.dex */
public static final class styleable {
public static final int ColorStateListItem_alpha = 0x00000003;
public static final int ColorStateListItem_android_alpha = 0x00000001;
public static final int ColorStateListItem_android_color = 0x00000000;
public static final int ColorStateListItem_android_lStar = 0x00000002;
public static final int ColorStateListItem_lStar = 0x00000004;
public static final int CoordinatorLayout_Layout_android_layout_gravity = 0x00000000;
public static final int CoordinatorLayout_Layout_layout_anchor = 0x00000001;
public static final int CoordinatorLayout_Layout_layout_anchorGravity = 0x00000002;
public static final int CoordinatorLayout_Layout_layout_behavior = 0x00000003;
public static final int CoordinatorLayout_Layout_layout_dodgeInsetEdges = 0x00000004;
public static final int CoordinatorLayout_Layout_layout_insetEdge = 0x00000005;
public static final int CoordinatorLayout_Layout_layout_keyline = 0x00000006;
public static final int CoordinatorLayout_keylines = 0x00000000;
public static final int CoordinatorLayout_statusBarBackground = 0x00000001;
public static final int FontFamilyFont_android_font = 0x00000000;
public static final int FontFamilyFont_android_fontStyle = 0x00000002;
public static final int FontFamilyFont_android_fontVariationSettings = 0x00000004;
public static final int FontFamilyFont_android_fontWeight = 0x00000001;
public static final int FontFamilyFont_android_ttcIndex = 0x00000003;
public static final int FontFamilyFont_font = 0x00000005;
public static final int FontFamilyFont_fontStyle = 0x00000006;
public static final int FontFamilyFont_fontVariationSettings = 0x00000007;
public static final int FontFamilyFont_fontWeight = 0x00000008;
public static final int FontFamilyFont_ttcIndex = 0x00000009;
public static final int FontFamily_fontProviderAuthority = 0x00000000;
public static final int FontFamily_fontProviderCerts = 0x00000001;
public static final int FontFamily_fontProviderFetchStrategy = 0x00000002;
public static final int FontFamily_fontProviderFetchTimeout = 0x00000003;
public static final int FontFamily_fontProviderPackage = 0x00000004;
public static final int FontFamily_fontProviderQuery = 0x00000005;
public static final int FontFamily_fontProviderSystemFontFamily = 0x00000006;
public static final int GradientColorItem_android_color = 0x00000000;
public static final int GradientColorItem_android_offset = 0x00000001;
public static final int GradientColor_android_centerColor = 0x00000007;
public static final int GradientColor_android_centerX = 0x00000003;
public static final int GradientColor_android_centerY = 0x00000004;
public static final int GradientColor_android_endColor = 0x00000001;
public static final int GradientColor_android_endX = 0x0000000a;
public static final int GradientColor_android_endY = 0x0000000b;
public static final int GradientColor_android_gradientRadius = 0x00000005;
public static final int GradientColor_android_startColor = 0x00000000;
public static final int GradientColor_android_startX = 0x00000008;
public static final int GradientColor_android_startY = 0x00000009;
public static final int GradientColor_android_tileMode = 0x00000006;
public static final int GradientColor_android_type = 0x00000002;
public static final int[] ColorStateListItem = {android.R.attr.color, android.R.attr.alpha, 16844359, com.adif.elcanomovil.R.attr.alpha, com.adif.elcanomovil.R.attr.lStar};
public static final int[] CoordinatorLayout = {com.adif.elcanomovil.R.attr.keylines, com.adif.elcanomovil.R.attr.statusBarBackground};
public static final int[] CoordinatorLayout_Layout = {android.R.attr.layout_gravity, com.adif.elcanomovil.R.attr.layout_anchor, com.adif.elcanomovil.R.attr.layout_anchorGravity, com.adif.elcanomovil.R.attr.layout_behavior, com.adif.elcanomovil.R.attr.layout_dodgeInsetEdges, com.adif.elcanomovil.R.attr.layout_insetEdge, com.adif.elcanomovil.R.attr.layout_keyline};
public static final int[] FontFamily = {com.adif.elcanomovil.R.attr.fontProviderAuthority, com.adif.elcanomovil.R.attr.fontProviderCerts, com.adif.elcanomovil.R.attr.fontProviderFetchStrategy, com.adif.elcanomovil.R.attr.fontProviderFetchTimeout, com.adif.elcanomovil.R.attr.fontProviderPackage, com.adif.elcanomovil.R.attr.fontProviderQuery, com.adif.elcanomovil.R.attr.fontProviderSystemFontFamily};
public static final int[] FontFamilyFont = {android.R.attr.font, android.R.attr.fontWeight, android.R.attr.fontStyle, android.R.attr.ttcIndex, android.R.attr.fontVariationSettings, com.adif.elcanomovil.R.attr.font, com.adif.elcanomovil.R.attr.fontStyle, com.adif.elcanomovil.R.attr.fontVariationSettings, com.adif.elcanomovil.R.attr.fontWeight, com.adif.elcanomovil.R.attr.ttcIndex};
public static final int[] GradientColor = {android.R.attr.startColor, android.R.attr.endColor, android.R.attr.type, android.R.attr.centerX, android.R.attr.centerY, android.R.attr.gradientRadius, android.R.attr.tileMode, android.R.attr.centerColor, android.R.attr.startX, android.R.attr.startY, android.R.attr.endX, android.R.attr.endY};
public static final int[] GradientColorItem = {android.R.attr.color, android.R.attr.offset};
private styleable() {
}
}
private R() {
}
}

View File

@@ -0,0 +1,34 @@
package com.google.firebase.crashlytics;
import android.os.Bundle;
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.inject.Deferred;
import com.google.firebase.inject.Provider;
/* loaded from: classes3.dex */
public final /* synthetic */ class a implements BreadcrumbSource, AnalyticsEventLogger, Deferred.DeferredHandler {
/* renamed from: a, reason: collision with root package name */
public final /* synthetic */ AnalyticsDeferredProxy f5966a;
public /* synthetic */ a(AnalyticsDeferredProxy analyticsDeferredProxy) {
this.f5966a = analyticsDeferredProxy;
}
@Override // com.google.firebase.inject.Deferred.DeferredHandler
public void handle(Provider provider) {
AnalyticsDeferredProxy.a(this.f5966a, provider);
}
@Override // com.google.firebase.crashlytics.internal.analytics.AnalyticsEventLogger
public void logEvent(String str, Bundle bundle) {
AnalyticsDeferredProxy.b(this.f5966a, str, bundle);
}
@Override // com.google.firebase.crashlytics.internal.breadcrumbs.BreadcrumbSource
public void registerBreadcrumbHandler(BreadcrumbHandler breadcrumbHandler) {
AnalyticsDeferredProxy.c(this.f5966a, breadcrumbHandler);
}
}

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\\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;
}
}

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