错误 G7AD6136F:无法在'WidgetsBinding?'上调用方法 'addPostFrameCallback',因为它可能为 null



我正在使用flutter 2.10.0运行我的桌面应用程序,并且得到了这种错误类型。

以下是我的扑动医生输出:

Doctor summary (to see all details, run flutter doctor -v):
[√] Flutter (Channel stable, 2.10.0, on Microsoft Windows [Version 10.0.19044.1766], 
locale en-US)
[√] Android toolchain - develop for Android devices (Android SDK version 33.0.0)
[√] Chrome - develop for the web
[√] Visual Studio - develop for Windows (Visual Studio Community 2022 17.2.6)
[√] Android Studio (version 2021.2)
[√] IntelliJ IDEA Community Edition (version 2021.3)
[√] VS Code, 64-bit edition (version 1.69.2)
[√] Connected device (4 available)
[√] HTTP Host Availability
• No issues found!

错误如下:

20.1.58/lib/src/calendar/sfcalendar.dart(2867,31): error G7AD6136F: Method 
'addPostFrameCallback' cannot be called on 'WidgetsBinding?' because it is potentially null. [E:SPACINGmarmanetForest-Inventory-Desktop-masterForest-Inventory-Desktop-masterbuildwindowsflutterflutter_assemble.vcxproj]
/C:/scr/flutter/.pub-cache/hosted/pub.dartlang.org/syncfusion_flutter_calendar-20.1.58/lib/src/calendar/sfcalendar.dart(4157,35): error G7AD6136F: Method 'addPostFrameCallback' cannot be called on 'SchedulerBinding?' because it is potentially null. [E:SPACINGmarmanetForest-Inventory-Desktop-masterForest-Inventory-Desktop-masterbuildwindowsflutterflutter_assemble.vcxproj]
/C:/scr/flutter/.pub-cache/hosted/pub.dartlang.org/syncfusion_flutter_calendar-20.1.58/lib/src/calendar/sfcalendar.dart(4176,37): error G7AD6136F: Method 'addPostFrameCallback' cannot be called on 'SchedulerBinding?' because it is potentially null. [E:SPACINGmarmanetForest-Inventory-Desktop-masterForest-Inventory-Desktop-masterbuildwindowsflutterflutter_assemble.vcxproj]
/C:/scr/flutter/.pub-cache/hosted/pub.dartlang.org/syncfusion_flutter_calendar-20.1.58/lib/src/calendar/sfcalendar.dart(4322,33): error G7AD6136F: Method 'addPostFrameCallback' cannot be called on 'SchedulerBinding?' because it is potentially null. [E:SPACINGmarmanetForest-Inventory-Desktop-masterForest-Inventory-Desktop-masterbuildwindowsflutterflutter_assemble.vcxproj] 

这也是我的pubspec.yaml文件的一部分:

sdk: ">=2.12.0 <3.0.0"
dependencies:
flutter_test:
sdk: flutter
flutter:
sdk: flutter
flutter_localizations:
sdk: flutter
url_launcher: ^6.0.2
path_provider: ^2.0.1
path_provider_macos: ^2.0.0
desktop_window: 0.4.0


syncfusion_localizations: ^20.1.47
syncfusion_flutter_datagrid_export: ^20.1.47-beta
syncfusion_flutter_calendar: ^20.1.47
syncfusion_flutter_datepicker: ^20.1.47
syncfusion_flutter_charts: ^20.1.47
syncfusion_flutter_gauges: ^20.1.47
syncfusion_flutter_sliders: ^20.1.47
syncfusion_flutter_pdf: ^20.1.47-beta
syncfusion_flutter_barcodes: ^20.1.47
syncfusion_officechart: ^20.1.47-beta
syncfusion_flutter_maps: ^20.1.47
syncfusion_flutter_signaturepad: ^20.1.47
syncfusion_flutter_pdfviewer: ^20.1.47-beta
syncfusion_flutter_treemap: ^20.1.47-beta
cloud_firestore: ^3.2.1
firebase_core: ^1.19.1`

我尝试了许多没有有效输出的选项,可能有什么问题

您可以包含"?">

WidgetsBinding.instance?.addPostFrameCallback((timeStamp) { })

但我建议升级,颤振。

对于升级做flutter upgrade,使用最新版本的软件包,您可以在当前版本的上使用如下

WidgetsBinding.instance.addPostFrameCallback((timeStamp) { })

这是syncfusion_flutter_calendar包中的一个错误;他们发布了一个版本,使用的代码只能在Flutter 3.0或更高版本中使用,但没有将包的最低版本设置为Flutter 3.0。

您可以通过升级到Flutter 3.0或使用他们做出不兼容更改之前的软件包版本来解决此问题,但您也应该向软件包的开发人员报告。

相关内容

最新更新