Flutter - 可以在没有 Firebase 的情况下使用 Google 登录吗?
Posted
技术标签:
【中文标题】Flutter - 可以在没有 Firebase 的情况下使用 Google 登录吗?【英文标题】:Flutter - Can Google Sign in be used without firebase? 【发布时间】:2019-12-23 04:27:16 【问题描述】:pub.dev 上有 google_sign_in 包,但它提供的用于设置应用程序的链接指向 https://firebase.google.com/?platform=android...
谢谢!
【问题讨论】:
参考此链接medium.com/flutter-community/… 【参考方案1】:是的!你可以。
在云控制台中创建项目。
创建 OAuth 2.0 clientId(通过包名限制)
下载JSON并将其放在android->app文件夹中,就是这样。
按照 google_sign_in 包中的步骤进行操作,而无需进入 firebase
GoogleSignIn googleSignIn = GoogleSignIn(
clientId:"xxxx.apps.googleusercontent.com");
clientId 是可选的 - 但在 Flutter Web 中是必需的
也可以参考flutter web google sign in without firebase
【讨论】:
苹果设备上的谷歌登录怎么样【参考方案2】:是的。试试签证 - https://github.com/e-oj/visa
这是一个 Facebook auth 的示例(它还支持 google、twitch、discord 和 Github):
import 'package:visa/auth-data.dart';
import 'package:visa/fb.dart';
class AuthPage extends StatelessWidget
@override
Widget build(BuildContext context)
return Scaffold(
/// Simply Provide all the necessary credentials
body: FaceBookAuth().visa.authenticate(
clientID: '139732240983759',
redirectUri: 'https://www.e-oj.com/oauth',
scope: 'public_profile,email',
state: 'fbAuth',
onDone: done
)
);
以及“完成”回调:
done(AuthData authData)
print(authData);
/// You can pass the [AuthData] object to a
/// post-authentication screen. It contaions
/// all the user and OAuth data collected during
/// the authentication process. In this example,
/// our post-authentication screen is "complete-profile".
Navigator.pushReplacementNamed(
context, '/complete-profile', arguments: authData
);
【讨论】:
以上是关于Flutter - 可以在没有 Firebase 的情况下使用 Google 登录吗?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Flutter 中从 firebase 存储读取和写入文本文件?
没有创建 Firebase 应用“[DEFAULT]” - 在 Flutter 和 Firebase 中调用 Firebase.initializeApp()
有没有办法将flutter_tts文件保存到firebase存储?
如何在 Flutter 中删除 Firebase 云消息传递令牌
在没有 android studio 的情况下在本地运行 flutter web 应用程序会引发 firebase 错误