Initial import of ADIF API reverse-engineering toolkit
This commit is contained in:
@@ -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();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user