FirebaseCrashlytics.smali
.class public Lcom/google/firebase/crashlytics/FirebaseCrashlytics;
.super Ljava/lang/Object;
# instance fields
.field private final a:Lcom/google/firebase/crashlytics/internal/common/CrashlyticsCore;
# direct methods
.method private constructor <init>(Lcom/google/firebase/crashlytics/internal/common/CrashlyticsCore;)V
.registers 2
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Lcom/google/firebase/crashlytics/FirebaseCrashlytics;->a:Lcom/google/firebase/crashlytics/internal/common/CrashlyticsCore;
return-void
.end method
.method public static a()Lcom/google/firebase/crashlytics/FirebaseCrashlytics;
.registers 2
invoke-static {}, Lcom/google/firebase/FirebaseApp;->h()Lcom/google/firebase/FirebaseApp;
move-result-object v0
const-class v1, Lcom/google/firebase/crashlytics/FirebaseCrashlytics;
invoke-virtual {v0, v1}, Lcom/google/firebase/FirebaseApp;->f(Ljava/lang/Class;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/google/firebase/crashlytics/FirebaseCrashlytics;
if-eqz v0, :cond_f
return-object v0
:cond_f
new-instance v0, Ljava/lang/NullPointerException;
const-string v1, "FirebaseCrashlytics component is not present."
invoke-direct {v0, v1}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method static b(Lcom/google/firebase/FirebaseApp;Lcom/google/firebase/iid/internal/FirebaseInstanceIdInternal;Lcom/google/firebase/crashlytics/internal/CrashlyticsNativeComponent;Lcom/google/firebase/analytics/connector/AnalyticsConnector;)Lcom/google/firebase/crashlytics/FirebaseCrashlytics;
.registers 20
move-object/from16 v8, p0
move-object/from16 v0, p3
invoke-virtual/range {p0 .. p0}, Lcom/google/firebase/FirebaseApp;->g()Landroid/content/Context;
move-result-object v9
invoke-virtual {v9}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
move-result-object v1
new-instance v2, Lcom/google/firebase/crashlytics/internal/common/IdManager;
move-object/from16 v3, p1
invoke-direct {v2, v9, v1, v3}, Lcom/google/firebase/crashlytics/internal/common/IdManager;-><init>(Landroid/content/Context;Ljava/lang/String;Lcom/google/firebase/iid/internal/FirebaseInstanceIdInternal;)V
new-instance v4, Lcom/google/firebase/crashlytics/internal/common/DataCollectionArbiter;
invoke-direct {v4, v8}, Lcom/google/firebase/crashlytics/internal/common/DataCollectionArbiter;-><init>(Lcom/google/firebase/FirebaseApp;)V
if-nez p2, :cond_21
new-instance v1, Lcom/google/firebase/crashlytics/internal/MissingNativeComponent;
invoke-direct {v1}, Lcom/google/firebase/crashlytics/internal/MissingNativeComponent;-><init>()V
move-object v3, v1
goto :goto_23
:cond_21
move-object/from16 v3, p2
:goto_23
new-instance v11, Lcom/google/firebase/crashlytics/internal/Onboarding;
invoke-direct {v11, v8, v9, v2, v4}, Lcom/google/firebase/crashlytics/internal/Onboarding;-><init>(Lcom/google/firebase/FirebaseApp;Landroid/content/Context;Lcom/google/firebase/crashlytics/internal/common/IdManager;Lcom/google/firebase/crashlytics/internal/common/DataCollectionArbiter;)V
if-eqz v0, :cond_71
invoke-static {}, Lcom/google/firebase/crashlytics/internal/Logger;->f()Lcom/google/firebase/crashlytics/internal/Logger;
move-result-object v1
const-string v5, "Firebase Analytics is available."
invoke-virtual {v1, v5}, Lcom/google/firebase/crashlytics/internal/Logger;->b(Ljava/lang/String;)V
new-instance v1, Lcom/google/firebase/crashlytics/internal/analytics/CrashlyticsOriginAnalyticsEventLogger;
invoke-direct {v1, v0}, Lcom/google/firebase/crashlytics/internal/analytics/CrashlyticsOriginAnalyticsEventLogger;-><init>(Lcom/google/firebase/analytics/connector/AnalyticsConnector;)V
new-instance v5, Lcom/google/firebase/crashlytics/CrashlyticsAnalyticsListener;
invoke-direct {v5}, Lcom/google/firebase/crashlytics/CrashlyticsAnalyticsListener;-><init>()V
invoke-static {v0, v5}, Lcom/google/firebase/crashlytics/FirebaseCrashlytics;->g(Lcom/google/firebase/analytics/connector/AnalyticsConnector;Lcom/google/firebase/crashlytics/CrashlyticsAnalyticsListener;)Lcom/google/firebase/analytics/connector/AnalyticsConnector$AnalyticsConnectorHandle;
move-result-object v0
if-eqz v0, :cond_62
invoke-static {}, Lcom/google/firebase/crashlytics/internal/Logger;->f()Lcom/google/firebase/crashlytics/internal/Logger;
move-result-object v0
const-string v6, "Firebase Analytics listener registered successfully."
invoke-virtual {v0, v6}, Lcom/google/firebase/crashlytics/internal/Logger;->b(Ljava/lang/String;)V
new-instance v0, Lcom/google/firebase/crashlytics/internal/analytics/BreadcrumbAnalyticsEventReceiver;
invoke-direct {v0}, Lcom/google/firebase/crashlytics/internal/analytics/BreadcrumbAnalyticsEventReceiver;-><init>()V
new-instance v6, Lcom/google/firebase/crashlytics/internal/analytics/BlockingAnalyticsEventLogger;
const/16 v7, 0x1f4
sget-object v10, Ljava/util/concurrent/TimeUnit;->MILLISECONDS:Ljava/util/concurrent/TimeUnit;
invoke-direct {v6, v1, v7, v10}, Lcom/google/firebase/crashlytics/internal/analytics/BlockingAnalyticsEventLogger;-><init>(Lcom/google/firebase/crashlytics/internal/analytics/CrashlyticsOriginAnalyticsEventLogger;ILjava/util/concurrent/TimeUnit;)V
invoke-virtual {v5, v0}, Lcom/google/firebase/crashlytics/CrashlyticsAnalyticsListener;->d(Lcom/google/firebase/crashlytics/internal/analytics/AnalyticsEventReceiver;)V
invoke-virtual {v5, v6}, Lcom/google/firebase/crashlytics/CrashlyticsAnalyticsListener;->e(Lcom/google/firebase/crashlytics/internal/analytics/AnalyticsEventReceiver;)V
move-object v1, v6
goto :goto_84
:cond_62
invoke-static {}, Lcom/google/firebase/crashlytics/internal/Logger;->f()Lcom/google/firebase/crashlytics/internal/Logger;
move-result-object v0
const-string v5, "Firebase Analytics listener registration failed."
invoke-virtual {v0, v5}, Lcom/google/firebase/crashlytics/internal/Logger;->b(Ljava/lang/String;)V
new-instance v0, Lcom/google/firebase/crashlytics/internal/breadcrumbs/DisabledBreadcrumbSource;
invoke-direct {v0}, Lcom/google/firebase/crashlytics/internal/breadcrumbs/DisabledBreadcrumbSource;-><init>()V
goto :goto_84
:cond_71
invoke-static {}, Lcom/google/firebase/crashlytics/internal/Logger;->f()Lcom/google/firebase/crashlytics/internal/Logger;
move-result-object v0
const-string v1, "Firebase Analytics is unavailable."
invoke-virtual {v0, v1}, Lcom/google/firebase/crashlytics/internal/Logger;->b(Ljava/lang/String;)V
new-instance v0, Lcom/google/firebase/crashlytics/internal/breadcrumbs/DisabledBreadcrumbSource;
invoke-direct {v0}, Lcom/google/firebase/crashlytics/internal/breadcrumbs/DisabledBreadcrumbSource;-><init>()V
new-instance v1, Lcom/google/firebase/crashlytics/internal/analytics/UnavailableAnalyticsEventLogger;
invoke-direct {v1}, Lcom/google/firebase/crashlytics/internal/analytics/UnavailableAnalyticsEventLogger;-><init>()V
:goto_84
move-object v5, v0
move-object v6, v1
const-string v0, "Crashlytics Exception Handler"
invoke-static {v0}, Lcom/google/firebase/crashlytics/internal/common/ExecutorUtils;->c(Ljava/lang/String;)Ljava/util/concurrent/ExecutorService;
move-result-object v7
new-instance v15, Lcom/google/firebase/crashlytics/internal/common/CrashlyticsCore;
move-object v0, v15
move-object/from16 v1, p0
invoke-direct/range {v0 .. v7}, Lcom/google/firebase/crashlytics/internal/common/CrashlyticsCore;-><init>(Lcom/google/firebase/FirebaseApp;Lcom/google/firebase/crashlytics/internal/common/IdManager;Lcom/google/firebase/crashlytics/internal/CrashlyticsNativeComponent;Lcom/google/firebase/crashlytics/internal/common/DataCollectionArbiter;Lcom/google/firebase/crashlytics/internal/breadcrumbs/BreadcrumbSource;Lcom/google/firebase/crashlytics/internal/analytics/AnalyticsEventLogger;Ljava/util/concurrent/ExecutorService;)V
invoke-virtual {v11}, Lcom/google/firebase/crashlytics/internal/Onboarding;->h()Z
move-result v0
if-nez v0, :cond_a5
invoke-static {}, Lcom/google/firebase/crashlytics/internal/Logger;->f()Lcom/google/firebase/crashlytics/internal/Logger;
move-result-object v0
const-string v1, "Unable to start Crashlytics."
invoke-virtual {v0, v1}, Lcom/google/firebase/crashlytics/internal/Logger;->d(Ljava/lang/String;)V
const/4 v0, 0x0
return-object v0
:cond_a5
const-string v0, "com.google.firebase.crashlytics.startup"
invoke-static {v0}, Lcom/google/firebase/crashlytics/internal/common/ExecutorUtils;->c(Ljava/lang/String;)Ljava/util/concurrent/ExecutorService;
move-result-object v0
invoke-virtual {v11, v9, v8, v0}, Lcom/google/firebase/crashlytics/internal/Onboarding;->l(Landroid/content/Context;Lcom/google/firebase/FirebaseApp;Ljava/util/concurrent/Executor;)Lcom/google/firebase/crashlytics/internal/settings/SettingsController;
move-result-object v13
invoke-virtual {v15, v13}, Lcom/google/firebase/crashlytics/internal/common/CrashlyticsCore;->o(Lcom/google/firebase/crashlytics/internal/settings/SettingsDataProvider;)Z
move-result v14
new-instance v1, Lcom/google/firebase/crashlytics/FirebaseCrashlytics$1;
move-object v10, v1
move-object v12, v0
move-object v2, v15
invoke-direct/range {v10 .. v15}, Lcom/google/firebase/crashlytics/FirebaseCrashlytics$1;-><init>(Lcom/google/firebase/crashlytics/internal/Onboarding;Ljava/util/concurrent/ExecutorService;Lcom/google/firebase/crashlytics/internal/settings/SettingsController;ZLcom/google/firebase/crashlytics/internal/common/CrashlyticsCore;)V
invoke-static {v0, v1}, Lcom/google/android/gms/tasks/Tasks;->c(Ljava/util/concurrent/Executor;Ljava/util/concurrent/Callable;)Lcom/google/android/gms/tasks/Task;
new-instance v0, Lcom/google/firebase/crashlytics/FirebaseCrashlytics;
invoke-direct {v0, v2}, Lcom/google/firebase/crashlytics/FirebaseCrashlytics;-><init>(Lcom/google/firebase/crashlytics/internal/common/CrashlyticsCore;)V
return-object v0
.end method
.method private static g(Lcom/google/firebase/analytics/connector/AnalyticsConnector;Lcom/google/firebase/crashlytics/CrashlyticsAnalyticsListener;)Lcom/google/firebase/analytics/connector/AnalyticsConnector$AnalyticsConnectorHandle;
.registers 4
const-string v0, "clx"
invoke-interface {p0, v0, p1}, Lcom/google/firebase/analytics/connector/AnalyticsConnector;->c(Ljava/lang/String;Lcom/google/firebase/analytics/connector/AnalyticsConnector$AnalyticsConnectorListener;)Lcom/google/firebase/analytics/connector/AnalyticsConnector$AnalyticsConnectorHandle;
move-result-object v0
if-nez v0, :cond_22
invoke-static {}, Lcom/google/firebase/crashlytics/internal/Logger;->f()Lcom/google/firebase/crashlytics/internal/Logger;
move-result-object v0
const-string v1, "Could not register AnalyticsConnectorListener with Crashlytics origin."
invoke-virtual {v0, v1}, Lcom/google/firebase/crashlytics/internal/Logger;->b(Ljava/lang/String;)V
const-string v0, "crash"
invoke-interface {p0, v0, p1}, Lcom/google/firebase/analytics/connector/AnalyticsConnector;->c(Ljava/lang/String;Lcom/google/firebase/analytics/connector/AnalyticsConnector$AnalyticsConnectorListener;)Lcom/google/firebase/analytics/connector/AnalyticsConnector$AnalyticsConnectorHandle;
move-result-object v0
if-eqz v0, :cond_22
invoke-static {}, Lcom/google/firebase/crashlytics/internal/Logger;->f()Lcom/google/firebase/crashlytics/internal/Logger;
move-result-object p0
const-string p1, "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."
invoke-virtual {p0, p1}, Lcom/google/firebase/crashlytics/internal/Logger;->i(Ljava/lang/String;)V
:cond_22
return-object v0
.end method
# virtual methods
.method public c(Ljava/lang/String;)V
.registers 3
iget-object v0, p0, Lcom/google/firebase/crashlytics/FirebaseCrashlytics;->a:Lcom/google/firebase/crashlytics/internal/common/CrashlyticsCore;
invoke-virtual {v0, p1}, Lcom/google/firebase/crashlytics/internal/common/CrashlyticsCore;->k(Ljava/lang/String;)V
return-void
.end method
.method public d(Ljava/lang/Throwable;)V
.registers 3
if-nez p1, :cond_c
invoke-static {}, Lcom/google/firebase/crashlytics/internal/Logger;->f()Lcom/google/firebase/crashlytics/internal/Logger;
move-result-object p1
const-string v0, "Crashlytics is ignoring a request to log a null exception."
invoke-virtual {p1, v0}, Lcom/google/firebase/crashlytics/internal/Logger;->i(Ljava/lang/String;)V
return-void
:cond_c
iget-object v0, p0, Lcom/google/firebase/crashlytics/FirebaseCrashlytics;->a:Lcom/google/firebase/crashlytics/internal/common/CrashlyticsCore;
invoke-virtual {v0, p1}, Lcom/google/firebase/crashlytics/internal/common/CrashlyticsCore;->l(Ljava/lang/Throwable;)V
return-void
.end method
.method public e(Ljava/lang/String;Ljava/lang/String;)V
.registers 4
iget-object v0, p0, Lcom/google/firebase/crashlytics/FirebaseCrashlytics;->a:Lcom/google/firebase/crashlytics/internal/common/CrashlyticsCore;
invoke-virtual {v0, p1, p2}, Lcom/google/firebase/crashlytics/internal/common/CrashlyticsCore;->p(Ljava/lang/String;Ljava/lang/String;)V
return-void
.end method
.method public f(Ljava/lang/String;)V
.registers 3
iget-object v0, p0, Lcom/google/firebase/crashlytics/FirebaseCrashlytics;->a:Lcom/google/firebase/crashlytics/internal/common/CrashlyticsCore;
invoke-virtual {v0, p1}, Lcom/google/firebase/crashlytics/internal/common/CrashlyticsCore;->q(Ljava/lang/String;)V
return-void
.end method