首页 > 解决方案 > Flutter 插件不起作用(在通道 flutter.plugins.io/Y 上找不到方法 X 的实现)

问题描述

我安装的几乎每个插件(到目前为止,Facebook 登录、Google 登录和图像选择器)都出现此错误。我的颤振项目是使用 Kotlin 和 Swift 支持以及 AndroidX 构建的。

我已经尝试使用 清理 Flutter 构建缓存flutter clean,并从模拟器中卸载应用程序。

这是我的pubspec.yaml

version: 1.0.0+1

environment:
  sdk: ">=2.1.0 <3.0.0"

dependencies:
  flutter:
    sdk: flutter

  material_design_icons_flutter: 3.2.3895
  image_picker: ^0.6.1+8
  firebase_auth: ^0.14.0+1
  google_sign_in: ^4.0.6
  flutter_facebook_login: ^2.0.1 
  flutter_bloc: ^0.20.1
  equatable: ^0.2.0
  cupertino_icons: ^0.1.2

dev_dependencies:
  flutter_test:
    sdk: flutter

flutter:

  uses-material-design: true

  module:
    androidX: true
  assets:
    - lib/assets/

我现在在 Android 上遇到这个问题,我目前没有开发 iOS 应用程序。

Flutter 的 Github 上的每个问题最终都会说“只需输入 flutter clean 就可以了”,但这并不能解决任何问题。

标签: androidflutterflutter-dependencies

解决方案


运行flutter pub get

io.flutter.plugins.GeneratedPluginRegistrant然后在ANDROID 项目中找到该类。

确保 facebook 插件在那里加载:

  public static void registerWith(PluginRegistry registry) {
    if (alreadyRegisteredWith(registry)) {
      return;
    }
    FacebookLoginPlugin.registerWith(registry.registrarFor("com.roughike.facebooklogin.facebooklogin.FacebookLoginPlugin"));

    // load other plugin code...

  }

推荐阅读