我已经成功地将facebook登录集成到flutter应用程序中并且能够登录。
\n但它始终是我能够登录的同一个帐户,并且除了之前的 Facebook 帐户之外,它没有向我显示任何其他登录选项。下面是我执行的代码。
\nFuture<void> handleLogin() async {\n\xc2\xa0\xc2\xa0final FacebookLoginResult result = await facebookLogin.logIn([\'email\']);\n\xc2\xa0\xc2\xa0switch (result.status) {\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0case FacebookLoginStatus.cancelledByUser:\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0break;\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0case FacebookLoginStatus.error:\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0break;\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0case FacebookLoginStatus.loggedIn:\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0try {\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0await loginWithfacebook(result);\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0} catch (e) {\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0print(e);\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0}\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0break;\n\xc2\xa0\xc2\xa0}\n}\n\nFuture loginWithfacebook(FacebookLoginResult result) async {\n\xc2\xa0\xc2\xa0final FacebookAccessToken accessToken = result.accessToken;\n\xc2\xa0\xc2\xa0AuthCredential credential =\n\xc2\xa0\xc2\xa0FacebookAuthProvider.credential(accessToken.token);\n\xc2\xa0\xc2\xa0var a = await _auth.signInWithCredential(credential);\n\xc2\xa0\xc2\xa0setState(() {\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0isSignIn = true;\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0_user = a.user;\n\xc2\xa0\xc2\xa0});\n}\n\nFuture<void> gooleSignout() async {\n\xc2\xa0\xc2\xa0await _auth.signOut().then((onValue) {\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0setState(() {\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0facebookLogin.logOut();\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0isSignIn = false;\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0});\n\xc2\xa0\xc2\xa0});\n}\nRun Code Online (Sandbox Code Playgroud)\n\n android facebook-authentication firebase firebase-authentication flutter