我正在尝试在我的 Flutter 项目中使用firebase_crashlytics lib,问题是 Flutter 从不崩溃,我可以在代码中抛出异常,但 dart 中的所有异常都被视为非致命异常。这些将正常报告给控制台,但我希望 Flutter、本机和未处理的异常被视为致命异常。
我想要以下之一:
我的 main.dart 代码:
Future main() async {
runZoned<Future<void>>(() async {
await DotEnv().load('.env');
setupNotifications();
FlutterError.onError = Crashlytics.instance.recordFlutterError;
runApp(MyApp());
}, onError: Crashlytics.instance.recordError);
}
Run Code Online (Sandbox Code Playgroud)
我已经尝试做的事情:
SystemChannels.platform.invokeMethod('SystemNavigator.pop'); 它有效,但不是真正的用户友好MethodChannel无效。我可能会做的事情:
toast通知用户出现问题我有一个返回大量数据的查询集,它可以按年份过滤,将返回大约 10 万行,或显示所有将带来大约 100 万行。
此注释的目的是生成一个 xlsx 电子表格。
模型表示,RelatedModel在Model和之间是多对多的AnotherModel
Model:
id
field1
field2
field3
RelatedModel:
foreign_key_model (Model)
foreign_key_another (AnotherModel)
Run Code Online (Sandbox Code Playgroud)
Queryset,如果关系存在,它会注释,这个注释很慢,可能需要几分钟。
Model.objects.all().annotate(
related_exists=Exists(RelatedModel.objects.filter(foreign_key_model=OuterRef('id'))),
related_column=Case(
When(related_exists=True, then=Value('The relation exists!')),
When(related_exists=False, then=Value('The relation doesn't exist!')),
default=Value('This is the default value!'),
output_field=CharField(),
)
).values_list(
'related_column',
'field1',
'field2',
'field3'
)
Run Code Online (Sandbox Code Playgroud)