Do not report Flutter errors to Crashlytics

It's just extra noise. We're still initializing it as I want the
iOS/Android level errors.
This commit is contained in:
Vishesh Handa
2020-04-14 15:57:59 +02:00
parent 7856748f5b
commit e426f5523c
2 changed files with 8 additions and 15 deletions

View File

@ -82,14 +82,10 @@ bool _initReportCrashes() {
return !JournalApp.isInDebugMode && Settings.instance.collectCrashReports; return !JournalApp.isInDebugMode && Settings.instance.collectCrashReports;
} }
Future<FlutterCrashlytics> getCrashlyticsClient() async { Future<void> initCrashlytics() async {
return _crashlytics ??= await _initCrashlytics(); if (reportCrashes) {
} await FlutterCrashlytics().initialize();
}
FlutterCrashlytics _crashlytics;
Future<FlutterCrashlytics> _initCrashlytics() async {
await FlutterCrashlytics().initialize();
return FlutterCrashlytics();
} }
Future<void> reportError(Object error, StackTrace stackTrace) async { Future<void> reportError(Object error, StackTrace stackTrace) async {
@ -103,13 +99,6 @@ Future<void> reportError(Object error, StackTrace stackTrace) async {
} catch (e) { } catch (e) {
print("Failed to report with Sentry: $e"); print("Failed to report with Sentry: $e");
} }
try {
final crashlytics = await getCrashlyticsClient();
crashlytics.reportCrash(error, stackTrace, forceCrash: false);
} catch (e) {
print("Failed to report with Crashlytics: $e");
}
} }
print("Uncaught Exception: $error"); print("Uncaught Exception: $error");

View File

@ -19,6 +19,10 @@ void main() async {
JournalApp.isInDebugMode = foundation.kDebugMode; JournalApp.isInDebugMode = foundation.kDebugMode;
FlutterError.onError = flutterOnErrorHandler; FlutterError.onError = flutterOnErrorHandler;
// Make sure Crashlytics is initialized so we get Android/iOS errors
// But for Flutter errors, lets just rely on Sentry.
initCrashlytics();
Isolate.current.addErrorListener(RawReceivePort((dynamic pair) async { Isolate.current.addErrorListener(RawReceivePort((dynamic pair) async {
var isolateError = pair as List<dynamic>; var isolateError = pair as List<dynamic>;
assert(isolateError.length == 2); assert(isolateError.length == 2);