【发布时间】:2022-06-20 16:50:10
【问题描述】:
C:\flutter\bin\flutter.bat --no-color build apk
没有健全的零安全性的建筑 欲了解更多信息,请参阅https://dart.dev/null-safety/unsound-null-safety
正在运行 Gradle 任务“assembleRelease”...
/C:/Users/Petra/AppData/Local/Pub/Cache/hosted/pub.dartlang.org/flutter_math_fork-0.3.3+1/lib/src/widgets/selectable.dart:407:7:错误:非- 抽象类“InternalSelectableMathState”缺少这些成员的实现:
- TextInputClient.insertTextPlaceholder
- TextInputClient.removeTextPlaceholder
- TextSelectionDelegate.copySelection
- TextSelectionDelegate.cutSelection
- TextSelectionDelegate.pasteText
- TextSelectionDelegate.selectAll 尝试任一
- 提供一个实现,
- 从超类或 mixin 继承实现,
- 将类标记为抽象类,或
- 提供“noSuchMethod”实现。
class InternalSelectableMathState 扩展状态 ^^^^^^^^^^^^^^^^^^^^^^^^^^^ /C:/flutter/packages/flutter/lib/src/services/text_input.dart:1124:8: 上下文:'TextInputClient.insertTextPlaceholder' 在这里定义。 void insertTextPlaceholder(大小) {} ^^^^^^^^^^^^^^^^^^^^^ /C:/flutter/packages/flutter/lib/src/services/text_input.dart:1127:8: 上下文:此处定义了“TextInputClient.removeTextPlaceholder”。 无效 removeTextPlaceholder() {} ^^^^^^^^^^^^^^^^^^^^^ /C:/flutter/packages/flutter/lib/src/services/text_input.dart:1041:8: 上下文:'TextSelectionDelegate.copySelection' 在这里定义。 无效复制选择(SelectionChangedCause 原因); ^^^^^^^^^^^^^ /C:/flutter/packages/flutter/lib/src/services/text_input.dart:1021:8: 上下文:'TextSelectionDelegate.cutSelection' 在这里定义。 void cutSelection(SelectionChangedCause 原因); ^^^^^^^^^^^^^ /C:/flutter/packages/flutter/lib/src/services/text_input.dart:1029:16: 上下文:'TextSelectionDelegate.pasteText' 在这里定义。 未来的 pasteText(SelectionChangedCause 原因); ^^^^^^^^^ /C:/flutter/packages/flutter/lib/src/services/text_input.dart:1035:8: 上下文:'TextSelectionDelegate.selectAll' 在这里定义。 无效 selectAll(SelectionChangedCause 原因); ^^^^^^^^^ /C:/Users/Petra/AppData/Local/Pub/Cache/hosted/pub.dartlang.org/shared_value-1.1.1/lib/manager_widget.dart:28:26:警告:空值感知操作的操作数'? 。具有不包括 null 的“SchedulerBinding”类型。
- “SchedulerBinding”来自“package:flutter/src/scheduler/binding.dart”(“/C:/flutter/packages/flutter/lib/src/scheduler/binding.dart”)。 if (SchedulerBinding.instance?.schedulerPhase != SchedulerPhase.idle) { ^ /C:/Users/Petra/AppData/Local/Pub/Cache/hosted/pub.dartlang.org/shared_value-1.1.1/lib/manager_widget.dart:30:30:警告:空值感知操作的操作数'? 。具有不包括 null 的“SchedulerBinding”类型。
- “SchedulerBinding”来自“package:flutter/src/scheduler/binding.dart”(“/C:/flutter/packages/flutter/lib/src/scheduler/binding.dart”)。 等待 SchedulerBinding.instance?.endOfFrame; ^ /C:/Users/Petra/AppData/Local/Pub/Cache/hosted/pub.dartlang.org/dropdown_search-0.6.3/lib/dropdown_search.dart:357:26:警告:null-aware 操作的操作数'! '具有不包括 null 的“WidgetsBinding”类型。
- “WidgetsBinding”来自“package:flutter/src/widgets/binding.dart”(“/C:/flutter/packages/flutter/lib/src/widgets/binding.dart”)。 WidgetsBinding.instance!.addPostFrameCallback((_) { ^ /C:/Users/Petra/AppData/Local/Pub/Cache/hosted/pub.dartlang.org/provider-5.0.0/lib/src/inherited_provider.dart:391:26:警告:空值感知操作的操作数'!'具有不包括 null 的“SchedulerBinding”类型。
- “SchedulerBinding”来自“package:flutter/src/scheduler/binding.dart”(“/C:/flutter/packages/flutter/lib/src/scheduler/binding.dart”)。 SchedulerBinding.instance!.addPostFrameCallback((_) { ^ /C:/Users/Petra/AppData/Local/Pub/Cache/hosted/pub.dartlang.org/intl_phone_number_input-0.7.0+2/lib/src/widgets/input_widget.dart:321:20:警告:操作数空感知操作'!'具有不包括 null 的“WidgetsBinding”类型。
- “WidgetsBinding”来自“package:flutter/src/widgets/binding.dart”(“/C:/flutter/packages/flutter/lib/src/widgets/binding.dart”)。 WidgetsBinding.instance!.addPostFrameCallback((timeStamp) { ^ /C:/Users/Petra/AppData/Local/Pub/Cache/hosted/pub.dartlang.org/flutter_auth_buttons-0.10.0/lib/src/button.dart:56:18:错误:方法“RaisedButton”是'没有为类 'StretchableButton' 定义。
- 'StretchableButton' 来自'package:flutter_auth_buttons/src/button.dart' ('/C:/Users/Petra/AppData/Local/Pub/Cache/hosted/pub.dartlang.org/flutter_auth_buttons-0.10.0 /lib/src/button.dart')。 尝试将名称更正为现有方法的名称,或定义名为“RaisedButton”的方法。 孩子:RaisedButton( ^^^^^^^^^^^^^ /C:/Users/Petra/AppData/Local/Pub/Cache/hosted/pub.dartlang.org/flutter_math_fork-0.3.3+1/lib/src/widgets/selectable.dart:459:24:警告:操作数空感知操作'!'具有不包括 null 的“SchedulerBinding”类型。
- “SchedulerBinding”来自“package:flutter/src/scheduler/binding.dart”(“/C:/flutter/packages/flutter/lib/src/scheduler/binding.dart”)。 SchedulerBinding.instance!.addPostFrameCallback((_) { ^ /C:/Users/Petra/AppData/Local/Pub/Cache/hosted/pub.dartlang.org/flutter_math_fork-0.3.3+1/lib/src/widgets/selection/overlay_manager.dart:138:28:警告:空感知操作的操作数“!”具有不包括 null 的“SchedulerBinding”类型。
- “SchedulerBinding”来自“package:flutter/src/scheduler/binding.dart”(“/C:/flutter/packages/flutter/lib/src/scheduler/binding.dart”)。 if (SchedulerBinding.instance!.schedulerPhase == ^ /C:/Users/Petra/AppData/Local/Pub/Cache/hosted/pub.dartlang.org/flutter_math_fork-0.3.3+1/lib/src/widgets/selection/overlay_manager.dart:140:26:警告:空感知操作的操作数“!”具有不包括 null 的“SchedulerBinding”类型。
- “SchedulerBinding”来自“package:flutter/src/scheduler/binding.dart”(“/C:/flutter/packages/flutter/lib/src/scheduler/binding.dart”)。 SchedulerBinding.instance! ^ /C:/Users/Petra/AppData/Local/Pub/Cache/hosted/pub.dartlang.org/flutter_math_fork-0.3.3+1/lib/src/widgets/selection/web_selection_manager.dart:119:24:警告:空感知操作的操作数“!”具有不包括 null 的“SchedulerBinding”类型。
- “SchedulerBinding”来自“package:flutter/src/scheduler/binding.dart”(“/C:/flutter/packages/flutter/lib/src/scheduler/binding.dart”)。 SchedulerBinding.instance! ^ /C:/Users/Petra/AppData/Local/Pub/Cache/hosted/pub.dartlang.org/flutter_math_fork-0.3.3+1/lib/src/widgets/selection/overlay.dart:141:26:警告:空感知操作的操作数“!”具有不包括 null 的“SchedulerBinding”类型。
- “SchedulerBinding”来自“package:flutter/src/scheduler/binding.dart”(“/C:/flutter/packages/flutter/lib/src/scheduler/binding.dart”)。 if (SchedulerBinding.instance!.schedulerPhase == ^ /C:/Users/Petra/AppData/Local/Pub/Cache/hosted/pub.dartlang.org/flutter_math_fork-0.3.3+1/lib/src/widgets/selection/overlay.dart:143:24:警告:空感知操作的操作数“!”具有不包括 null 的“SchedulerBinding”类型。
- “SchedulerBinding”来自“package:flutter/src/scheduler/binding.dart”(“/C:/flutter/packages/flutter/lib/src/scheduler/binding.dart”)。 SchedulerBinding.instance!.addPostFrameCallback(_markNeedsBuild); ^ /C:/Users/Petra/AppData/Local/Pub/Cache/hosted/pub.dartlang.org/flutter_math_fork-0.3.3+1/lib/src/widgets/selection/overlay.dart:193:26:警告:空感知操作的操作数“!”具有不包括 null 的“SchedulerBinding”类型。
- “SchedulerBinding”来自“package:flutter/src/scheduler/binding.dart”(“/C:/flutter/packages/flutter/lib/src/scheduler/binding.dart”)。 if (SchedulerBinding.instance!.schedulerPhase == ^ /C:/Users/Petra/AppData/Local/Pub/Cache/hosted/pub.dartlang.org/flutter_math_fork-0.3.3+1/lib/src/widgets/selection/overlay.dart:195:24:警告:空感知操作的操作数“!”具有不包括 null 的“SchedulerBinding”类型。
- “SchedulerBinding”来自“package:flutter/src/scheduler/binding.dart”(“/C:/flutter/packages/flutter/lib/src/scheduler/binding.dart”)。 SchedulerBinding.instance!.addPostFrameCallback(_markNeedsBuild); ^
FAILURE:构建失败并出现异常。
-
在哪里: 脚本 'C:\flutter\packages\flutter_tools\gradle\flutter.gradle' 行:1156
-
出了什么问题: 任务 ':app:compileFlutterBuildRelease' 执行失败。
Process 'command 'C:\flutter\bin\flutter.bat'' 以非零退出值 1 结束
【问题讨论】:
-
我可以解决第一个错误,但这仍然是 /C:/Users/Petra/AppData/Local/Pub/Cache/hosted/pub.dartlang.org/shared_value-1.1.1/lib/manager_widget。 dart:28:26: 警告:null-aware 操作的操作数 '?.'具有不包括 null 的“SchedulerBinding”类型。 - “SchedulerBinding”来自“package:flutter/src/scheduler/binding.dart”(“/C:/flutter/packages/flutter/lib/src/scheduler/binding.dart”)。 if (SchedulerBinding.instance?.schedulerPhase != SchedulerPhase.idle) {
标签: flutter dart dart-pub dart-null-safety flutter-upgrade