Flutter: Unhandled exception: MissingPluginException(No implementation found for method getAll on channel plugins.flutter.io/shared_preferences)

北慕城南 提交于 2020-01-03 13:57:12

问题


My Flutter application uses the Flutter SharedPreferences plugin and send values to the iOS side with platform.invokeMethod. If I start the application, I have this error:

[VERBOSE-2:dart_error.cc(16)] Unhandled exception:
MissingPluginException(No implementation found for method getAll on channel plugins.flutter.io/shared_preferences)
#0      MethodChannel.invokeMethod (package:flutter/src/services/platform_channel.dart:278:7)
<asynchronous suspension>
#1      SharedPreferences.getInstance (package:shared_preferences/shared_preferences.dart:25:27)
<asynchronous suspension>
#2      main (file:///Users/Developer/workspace/flutter-app/q_flutter2/lib/main.dart:25:53)
<asynchronous suspension>
#3      _startIsolate.<anonymous closure> (dart:isolate/runtime/libisolate_patch.dart:279:19)
#4      _RawReceivePortImpl._handleMessage (dart:isolate/runtime/libisolate_patch.dart:165:12)

If I comment the function to send the value to iOS side, the error is not displayed and the SharedPreferences is working.

Someone can help me?


回答1:


No implementation found for method getAll on channel plugins.flutter.io __the above will occurs when you setup the plugin for the first time, so it has to be reinstalled ...

Do uninstall and reInstal your application....




回答2:


Check AppDelegate. Channel registration should be after plugins registration

...
@objc class AppDelegate: FlutterAppDelegate {

    override func application(
    ...
        GeneratedPluginRegistrant.register(with: self)
        channel = FlutterMethodChannel.init(name: "dressme.lofesdev.com/geo",
                                        binaryMessenger: controller);
    ...


来源:https://stackoverflow.com/questions/50687801/flutter-unhandled-exception-missingpluginexceptionno-implementation-found-for

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!