Skip to content

Commit f30f48c

Browse files
authored
Merge branch 'main' into td/record-exception
2 parents 8a3b6e9 + c00de5a commit f30f48c

File tree

3 files changed

+11
-5
lines changed

3 files changed

+11
-5
lines changed

firebase-crashlytics/CHANGELOG.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# Unreleased
2-
2+
* [fixed] Execute failure listener outside the main thread [#6535]
33

44
# 19.0.0
55
* [fixed] Force validation or rotation of FIDs.
@@ -574,4 +574,3 @@ The following release notes describe changes in the new SDK.
574574
from your `AndroidManifest.xml` file.
575575
* [removed] The `fabric.properties` and `crashlytics.properties` files are no
576576
longer supported. Remove them from your app.
577-

firebase-crashlytics/src/main/java/com/google/firebase/crashlytics/CrashlyticsRegistrar.java

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
import com.google.firebase.analytics.connector.AnalyticsConnector;
1919
import com.google.firebase.annotations.concurrent.Background;
2020
import com.google.firebase.annotations.concurrent.Blocking;
21+
import com.google.firebase.annotations.concurrent.Lightweight;
2122
import com.google.firebase.components.Component;
2223
import com.google.firebase.components.ComponentContainer;
2324
import com.google.firebase.components.ComponentRegistrar;
@@ -42,6 +43,8 @@ public class CrashlyticsRegistrar implements ComponentRegistrar {
4243
Qualified.qualified(Background.class, ExecutorService.class);
4344
private final Qualified<ExecutorService> blockingExecutorService =
4445
Qualified.qualified(Blocking.class, ExecutorService.class);
46+
private final Qualified<ExecutorService> lightweightExecutorService =
47+
Qualified.qualified(Lightweight.class, ExecutorService.class);
4548

4649
static {
4750
// Add Crashlytics as a dependency of Sessions when this class is loaded into memory.
@@ -57,6 +60,7 @@ public List<Component<?>> getComponents() {
5760
.add(Dependency.required(FirebaseInstallationsApi.class))
5861
.add(Dependency.required(backgroundExecutorService))
5962
.add(Dependency.required(blockingExecutorService))
63+
.add(Dependency.required(lightweightExecutorService))
6064
.add(Dependency.deferred(CrashlyticsNativeComponent.class))
6165
.add(Dependency.deferred(AnalyticsConnector.class))
6266
.add(Dependency.deferred(FirebaseRemoteConfigInterop.class))
@@ -79,7 +83,8 @@ private FirebaseCrashlytics buildCrashlytics(ComponentContainer container) {
7983
container.getDeferred(AnalyticsConnector.class),
8084
container.getDeferred(FirebaseRemoteConfigInterop.class),
8185
container.get(backgroundExecutorService),
82-
container.get(blockingExecutorService));
86+
container.get(blockingExecutorService),
87+
container.get(lightweightExecutorService));
8388

8489
long duration = System.currentTimeMillis() - startTime;
8590
if (duration > 16) {

firebase-crashlytics/src/main/java/com/google/firebase/crashlytics/FirebaseCrashlytics.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,8 @@ public class FirebaseCrashlytics {
6868
@NonNull Deferred<AnalyticsConnector> analyticsConnector,
6969
@NonNull Deferred<FirebaseRemoteConfigInterop> remoteConfigInteropDeferred,
7070
ExecutorService backgroundExecutorService,
71-
ExecutorService blockingExecutorService) {
71+
ExecutorService blockingExecutorService,
72+
ExecutorService lightExecutorService) {
7273

7374
Context context = app.getApplicationContext();
7475
final String appIdentifier = context.getPackageName();
@@ -161,7 +162,8 @@ public class FirebaseCrashlytics {
161162
// Kick off actually fetching the settings.
162163
settingsController
163164
.loadSettingsData(crashlyticsWorkers)
164-
.addOnFailureListener(ex -> Logger.getLogger().e("Error fetching settings.", ex));
165+
.addOnFailureListener(
166+
lightExecutorService, ex -> Logger.getLogger().e("Error fetching settings.", ex));
165167

166168
final boolean finishCoreInBackground = core.onPreExecute(appData, settingsController);
167169

0 commit comments

Comments
 (0)