在 Flutter Alarm Manager 回调中使用插件时出现 MissingPluginException
MissingPluginException When Using Plugins in Flutter Alarm Manager Callbacks
当我在 android_alarm_manager 回调中使用 shared_preferences 插件时,即使我已按照插件文档中的所有步骤进行操作,我仍然会遇到此异常。
Unhandled Exception: MissingPluginException(No implementation found for method getAll on channel plugins.flutter.io/shared_preferences)
我最近在使用 Flutter Android 嵌入 V2 的 flutter 1.20 版本之上创建了这个项目,因此它应该自动注册插件。
Flutter Doctor 输出:
[✓] Flutter (Channel stable, 1.20.2, on Microsoft Windows [Version 10.0.19041.450], locale en-US)
• Flutter version 1.20.2 at C:\src\flutter
• Framework revision bbfbf1770c (2 weeks ago), 2020-08-13 08:33:09 -0700
• Engine revision 9d5b21729f
• Dart version 2.9.1
[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.2)
• Android SDK at D:\Android\Sdk
• Platform android-30, build-tools 29.0.2
• ANDROID_HOME = D:\Android\Sdk
• Java binary at: D:\Program Files\Android Studio\jre\bin\java
• Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)
• All Android licenses accepted.
[✓] Android Studio (version 4.0)
• Android Studio at D:\Program Files\Android Studio
• Flutter plugin version 48.1.2
• Dart plugin version 193.7361
• Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)
[✓] VS Code (version 1.47.2)
• VS Code at C:\Users\MOHNAD\AppData\Local\Programs\Microsoft VS Code
• Flutter extension version 3.12.2
[✓] Connected device (1 available)
• Android SDK built for x86 (mobile) • emulator-5554 • android-x86 • Android 10 (API 29) (emulator)
• No issues found!
提前致谢
我能够通过删除导致来自 FlutterEngine 的此警告的包 keyboard_visibility: ^0.5.6
来解决这个问题
W/FlutterEngine(10724): Tried to automatically register plugins with FlutterEngine (io.flutter.embedding.engine.FlutterEngine@8ca5659) but could not find and invoke the GeneratedPluginRegistrant.
当我在 android_alarm_manager 回调中使用 shared_preferences 插件时,即使我已按照插件文档中的所有步骤进行操作,我仍然会遇到此异常。
Unhandled Exception: MissingPluginException(No implementation found for method getAll on channel plugins.flutter.io/shared_preferences)
我最近在使用 Flutter Android 嵌入 V2 的 flutter 1.20 版本之上创建了这个项目,因此它应该自动注册插件。
Flutter Doctor 输出:
[✓] Flutter (Channel stable, 1.20.2, on Microsoft Windows [Version 10.0.19041.450], locale en-US)
• Flutter version 1.20.2 at C:\src\flutter
• Framework revision bbfbf1770c (2 weeks ago), 2020-08-13 08:33:09 -0700
• Engine revision 9d5b21729f
• Dart version 2.9.1
[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.2)
• Android SDK at D:\Android\Sdk
• Platform android-30, build-tools 29.0.2
• ANDROID_HOME = D:\Android\Sdk
• Java binary at: D:\Program Files\Android Studio\jre\bin\java
• Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)
• All Android licenses accepted.
[✓] Android Studio (version 4.0)
• Android Studio at D:\Program Files\Android Studio
• Flutter plugin version 48.1.2
• Dart plugin version 193.7361
• Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)
[✓] VS Code (version 1.47.2)
• VS Code at C:\Users\MOHNAD\AppData\Local\Programs\Microsoft VS Code
• Flutter extension version 3.12.2
[✓] Connected device (1 available)
• Android SDK built for x86 (mobile) • emulator-5554 • android-x86 • Android 10 (API 29) (emulator)
• No issues found!
提前致谢
我能够通过删除导致来自 FlutterEngine 的此警告的包 keyboard_visibility: ^0.5.6
来解决这个问题
W/FlutterEngine(10724): Tried to automatically register plugins with FlutterEngine (io.flutter.embedding.engine.FlutterEngine@8ca5659) but could not find and invoke the GeneratedPluginRegistrant.