mirror of https://github.com/tasks/tasks
You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
35 lines
929 B
Java
35 lines
929 B
Java
package org.tasks.analytics;
|
|
|
|
import android.content.Context;
|
|
import com.crashlytics.android.Crashlytics;
|
|
import com.google.firebase.analytics.FirebaseAnalytics;
|
|
import io.fabric.sdk.android.Fabric;
|
|
import javax.inject.Inject;
|
|
import org.tasks.injection.ApplicationScope;
|
|
import org.tasks.injection.ForApplication;
|
|
import org.tasks.preferences.Preferences;
|
|
import timber.log.Timber;
|
|
|
|
@ApplicationScope
|
|
public class Tracker {
|
|
|
|
private static boolean enabled;
|
|
|
|
@Inject
|
|
public Tracker(@ForApplication Context context, Preferences preferences) {
|
|
enabled = preferences.isTrackingEnabled();
|
|
if (enabled) {
|
|
FirebaseAnalytics analytics = FirebaseAnalytics.getInstance(context);
|
|
analytics.setAnalyticsCollectionEnabled(true);
|
|
Fabric.with(context, new Crashlytics());
|
|
}
|
|
}
|
|
|
|
public void reportException(Throwable t) {
|
|
Timber.e(t);
|
|
if (enabled) {
|
|
Crashlytics.logException(t);
|
|
}
|
|
}
|
|
}
|