Migrate FB crashlytics
This commit is contained in:
parent
920d42e689
commit
ea1804cc6b
|
|
@ -36,7 +36,7 @@ ext {
|
|||
retrofit : '2.4.0',
|
||||
rxJava : '2.2.2',
|
||||
rxAndroid : '2.1.0',
|
||||
crashlytics : '2.9.5',
|
||||
crashlytics : '17.0.0-beta01',
|
||||
location : '16.0.0',
|
||||
coreKtx : '1.0.1',
|
||||
yandex_mapkit: '3.4.0',
|
||||
|
|
|
|||
|
|
@ -27,8 +27,6 @@ dependencies {
|
|||
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
|
||||
|
||||
implementation "androidx.appcompat:appcompat:$versions.appcompat"
|
||||
|
||||
implementation("com.crashlytics.sdk.android:crashlytics:$versions.crashlytics@aar") {
|
||||
transitive = true
|
||||
}
|
||||
|
||||
implementation "com.google.firebase:firebase-crashlytics:$versions.crashlytics"
|
||||
}
|
||||
|
|
|
|||
|
|
@ -24,7 +24,7 @@ import android.content.Context;
|
|||
import android.os.StrictMode;
|
||||
import android.util.Log;
|
||||
|
||||
import com.crashlytics.android.Crashlytics;
|
||||
import com.google.firebase.crashlytics.FirebaseCrashlytics;
|
||||
|
||||
import net.danlew.android.joda.JodaTimeAndroid;
|
||||
|
||||
|
|
@ -34,7 +34,6 @@ import java.util.List;
|
|||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.multidex.MultiDex;
|
||||
import io.fabric.sdk.android.Fabric;
|
||||
import ru.touchin.roboswag.core.log.ConsoleLogProcessor;
|
||||
import ru.touchin.roboswag.core.log.Lc;
|
||||
import ru.touchin.roboswag.core.log.LcGroup;
|
||||
|
|
@ -65,16 +64,13 @@ public abstract class TouchinApp extends Application {
|
|||
LcGroup.UI_LIFECYCLE.disable();
|
||||
} else {
|
||||
try {
|
||||
final Crashlytics crashlytics = new Crashlytics();
|
||||
Fabric.with(this, crashlytics);
|
||||
Fabric.getLogger().setLogLevel(Log.ERROR);
|
||||
final FirebaseCrashlytics crashlytics = FirebaseCrashlytics.getInstance();
|
||||
crashlytics.setCrashlyticsCollectionEnabled(true);
|
||||
Lc.initialize(new CrashlyticsLogProcessor(crashlytics), false);
|
||||
} catch (final NoClassDefFoundError error) {
|
||||
Lc.initialize(new ConsoleLogProcessor(LcLevel.INFO), false);
|
||||
Lc.e("Crashlytics initialization error! Did you forget to add\n"
|
||||
+ "compile('com.crashlytics.sdk.android:crashlytics:+@aar') {\n"
|
||||
+ " transitive = true;\n"
|
||||
+ "}\n"
|
||||
+ "com.google.firebase:firebase-crashlytics\n"
|
||||
+ "to your build.gradle?", error);
|
||||
}
|
||||
}
|
||||
|
|
@ -96,13 +92,17 @@ public abstract class TouchinApp extends Application {
|
|||
private static class CrashlyticsLogProcessor extends LogProcessor {
|
||||
|
||||
@NonNull
|
||||
private final Crashlytics crashlytics;
|
||||
private final FirebaseCrashlytics crashlytics;
|
||||
|
||||
public CrashlyticsLogProcessor(@NonNull final Crashlytics crashlytics) {
|
||||
public CrashlyticsLogProcessor(@NonNull final FirebaseCrashlytics crashlytics) {
|
||||
super(LcLevel.INFO);
|
||||
this.crashlytics = crashlytics;
|
||||
}
|
||||
|
||||
private String getLogMessage(final int priorityLevel, final String tag, final String message) {
|
||||
return "Priority:" + priorityLevel + ' ' + tag + ':' + message;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void processLogMessage(@NonNull final LcGroup group,
|
||||
@NonNull final LcLevel level,
|
||||
|
|
@ -110,17 +110,17 @@ public abstract class TouchinApp extends Application {
|
|||
@NonNull final String message,
|
||||
@Nullable final Throwable throwable) {
|
||||
if (group == LcGroup.UI_LIFECYCLE) {
|
||||
crashlytics.core.log(level.getPriority(), tag, message);
|
||||
crashlytics.log(getLogMessage(level.getPriority(), tag, message));
|
||||
} else if (!level.lessThan(LcLevel.ASSERT)
|
||||
|| (group == ApiModel.API_VALIDATION_LC_GROUP && level == LcLevel.ERROR)) {
|
||||
Log.e(tag, message);
|
||||
if (throwable != null) {
|
||||
crashlytics.core.log(level.getPriority(), tag, message);
|
||||
crashlytics.core.logException(throwable);
|
||||
crashlytics.log(getLogMessage(level.getPriority(), tag, message));
|
||||
crashlytics.recordException(throwable);
|
||||
} else {
|
||||
final ShouldNotHappenException exceptionToLog = new ShouldNotHappenException(tag + ':' + message);
|
||||
reduceStackTrace(exceptionToLog);
|
||||
crashlytics.core.logException(exceptionToLog);
|
||||
crashlytics.recordException(exceptionToLog);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue