Flutter: MissingPluginException(No implementation found for method getAll on channel plugins.flutter.io/shared_preferences)
Dart called a plugin's native method but the native side is not registered, usually because the app was not fully rebuilt after adding the plugin.
MissingPluginException(No implementation found for method getAll on channelMissingPluginException No implementation found for methodNo implementation found for method on channel plugins.flutter.ioMissingPluginException shared_preferencesMissingPluginException(No implementation found for method Meaning
Hot reload and hot restart do not install new native code. After adding or upgrading a plugin, stop the app and run a full build. Also happens when the plugin does not support the platform (web/desktop) or is used inside an isolate without background registration.
Common causes
- Plugin added but app only hot-restarted
- Plugin does not support this platform
- Stale build artifacts
- Using the plugin in a background isolate without registration
- Custom method channel name mismatch
⚡ Quick fix
- Stop the app, run
flutter clean && flutter pub get, then rebuild - Check the plugin's supported platforms on pub.dev
- Ensure channel names match on both sides
Detailed fix by platform
Flutter
flutter clean && flutter pub get && flutter run; iOS:cd ios && pod install
How to diagnose
- Rebuild — Full rebuild done?
- Platform — Supported?
- Channel — Names match?
🔧 Still not fixed?
Many errors look alike. If the steps above didn’t solve it, one of these is probably what you’re facing:
Similar errors
- Android license status unknown / licenses not accepted flutter doctor: Android license status unknown. Run `flutter doctor --android-licenses` to accept the SDK licenses
- BoxConstraints forces an infinite width Flutter: BoxConstraints forces an infinite width. These invalid constraints were provided to RenderStack's layout() function (TextField in a Row)
- Cleartext HTTP traffic not permitted Flutter (Android): java.io.IOException: Cleartext HTTP traffic to api.example.com not permitted
Most viewed in Flutter / Dart
- setState() called after dispose() Flutter: setState() called after dispose(): _MyState#1a2b3 (lifecycle state: defunct, not mounted)
- A RenderFlex overflowed Flutter: A RenderFlex overflowed by x pixels on the right/bottom
- Null check operator used on a null value Dart/Flutter: Null check operator used on a null value
Other ways to find it
Where this error sits
Origin: On your device. Errors that are often confused with or caused by this one (click to open):
🧠 Still stuck? Analyze your error
Paste the full message, response headers or stack trace — we'll detect the platform and point to the most likely cause.
💬 What worked for others
No tips yet — did something else fix this for you?
Share what worked for you
Tips are checked by an editor before they appear. Links are removed.
Report a correction or suggest an improvement
Last updated 4 Nov 2026