FirebaseCrashlytics,不会报告异常,但 运行 .crash 会
FirebaseCrashlytics, will not report Exceptions but running .crash will
下面是我必须用来初始化 运行 我的应用程序的代码。
作为测试,我有一个未来会抛出异常(超出范围),这是怎么没有发送到 crashlystics?
如果我发出 FirebaseCrashlystics.instance.crash() 它将发送报告。
我已将过滤器更改为 Event-type="non-fatals" 但我在那里看不到我的错误。
我不知道我错过了什么?
class AppConfig {
final String appTitle;
final BuildFlavor buildFlavor;
final bool initializeCrashlytics, enableCrashlyticsInDevmode;
AppConfig(
{@required this.appTitle,
@required this.buildFlavor,
this.initializeCrashlytics = true,
this.enableCrashlyticsInDevmode = true});
Future<void> _testAsyncErrorOnInit() async {
Future<void>.delayed(
const Duration(seconds: 2),
() {
final List<int> list = <int>[];
print(list[100]);
},
);
}
Future startCrashlytics() async {
Function originalError = FlutterError.onError;
if (this.initializeCrashlytics) {
await FirebaseCrashlytics.instance
.setCrashlyticsCollectionEnabled(this.enableCrashlyticsInDevmode);
FlutterError.onError = (FlutterErrorDetails errorDetails) async {
await FirebaseCrashlytics.instance.recordFlutterError(errorDetails);
originalError(errorDetails);
};
FirebaseCrashlytics.instance.crash(); << This works
// await _testAsyncErrorOnInit(); << This doesn't Yes i do comment crash and uncomment this.
}
}
Future run() async {
// Lägg in initiering av firebase, crashlytics
WidgetsFlutterBinding.ensureInitialized();
await Firebase.initializeApp();
await startCrashlytics();
runApp(ElectronicCupongs(appTitle: appTitle));
}
}
我看到您检查了 package's example,但是您的应用是否包含在 runZonedGuarded
中?
示例页面包含所需的详细信息,但您也可以检查包的文件,或者更易读的格式,FlutterFire。
下面是我必须用来初始化 运行 我的应用程序的代码。 作为测试,我有一个未来会抛出异常(超出范围),这是怎么没有发送到 crashlystics?
如果我发出 FirebaseCrashlystics.instance.crash() 它将发送报告。 我已将过滤器更改为 Event-type="non-fatals" 但我在那里看不到我的错误。
我不知道我错过了什么?
class AppConfig {
final String appTitle;
final BuildFlavor buildFlavor;
final bool initializeCrashlytics, enableCrashlyticsInDevmode;
AppConfig(
{@required this.appTitle,
@required this.buildFlavor,
this.initializeCrashlytics = true,
this.enableCrashlyticsInDevmode = true});
Future<void> _testAsyncErrorOnInit() async {
Future<void>.delayed(
const Duration(seconds: 2),
() {
final List<int> list = <int>[];
print(list[100]);
},
);
}
Future startCrashlytics() async {
Function originalError = FlutterError.onError;
if (this.initializeCrashlytics) {
await FirebaseCrashlytics.instance
.setCrashlyticsCollectionEnabled(this.enableCrashlyticsInDevmode);
FlutterError.onError = (FlutterErrorDetails errorDetails) async {
await FirebaseCrashlytics.instance.recordFlutterError(errorDetails);
originalError(errorDetails);
};
FirebaseCrashlytics.instance.crash(); << This works
// await _testAsyncErrorOnInit(); << This doesn't Yes i do comment crash and uncomment this.
}
}
Future run() async {
// Lägg in initiering av firebase, crashlytics
WidgetsFlutterBinding.ensureInitialized();
await Firebase.initializeApp();
await startCrashlytics();
runApp(ElectronicCupongs(appTitle: appTitle));
}
}
我看到您检查了 package's example,但是您的应用是否包含在 runZonedGuarded
中?
示例页面包含所需的详细信息,但您也可以检查包的文件,或者更易读的格式,FlutterFire。