首页 > 解决方案 > 使用 Flutter 登录 Facebook

问题描述

Future<FirebaseUser> login({List<String> userData, var loginCallback, var cancelledCallback,
        var errorCallback}) async {
    var facebookLogin = FacebookLogin();
    var facebookLoginResult = await facebookLogin.logInWithReadPermissions(['email']);
    switch (facebookLoginResult.status) {
      case FacebookLoginStatus.error:
        print("Error");
        break;
      case FacebookLoginStatus.cancelledByUser:
        print("CancelledByUser");
        break;
      case FacebookLoginStatus.loggedIn:
        print("LoggedIn");
        break;
    }
  }

使用flutter_facebook_login 插件,它总是抛出这个错误。无法弄清楚我哪里出错了。这是错误的logcat。

MissingPluginException(No implementation found for method loginWithReadPermissions on channel com.roughike/flutter_facebook_login)
E/flutter ( 6174): #0      MethodChannel.invokeMethod (package:flutter/src/services/platform_channel.dart:278:7)
E/flutter ( 6174): <asynchronous suspension>
E/flutter ( 6174): #1      FacebookLogin.logInWithReadPermissions (package:flutter_facebook_login/flutter_facebook_login.dart:101:23)
E/flutter ( 6174): <asynchronous suspension>
E/flutter ( 6174): #2      FacebookAuth.login (package:shout_out/util/social_login.dart:26:25)

标签: facebookdartflutterhybrid

解决方案


MissingPluginException 通常发生在您添加插件并且没有从一开始就重新运行您的应用程序时。

尝试杀死您的应用程序并再次运行它。问题就会消失。

编辑

用于 Flutter 的 Facebook sdk 需要在清单文件中添加一些内容(对于 android),这些更改记录在插件文档中。


推荐阅读