flutter - FirebaseCrashlytics,不会报告异常,但运行 .crash 会
问题描述
下面是我必须初始化运行我的应用程序的代码。作为一个测试,我有一个未来会抛出异常(超出范围),这是怎么没有发送到 crashlytics 的?
如果我发出 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));
}
}
解决方案
我看到您检查了包的示例,但是您的应用程序是否包含在内runZonedGuarded
?
示例页面包含所需的详细信息,但您也可以检查包的文件,或者更易读的格式FlutterFire。
推荐阅读
- sql - IBM SQL 求和和分组依据
- python - 硒使铬工艺保持开放
- c# - 列表视图所选项目值更改未及时反映 UI
- qt - QSortFilterProxyModel:源模型报告的变化不一致
- apache-kafka - Kafka 高负载平衡问题
- python - LPTHW 练习 47:nosetest 运行了 0 个测试
- android - 从 Xamarin Android 服务请求权限
- javascript - “大小”参数中的错误不得大于 2147483647(角度)
- javascript - React-Native:在另一个类中访问 TextField 值
- java - 如何从控制台输入字符串中获取控制字符