【原创 附源码】Flutter海外登录--Google登录最详细流程

最近接触了几个海外登录的平台,踩了很多坑,也总结了很多东西,决定记录下来给路过的兄弟坐个参考,也留着以后留着回顾。更新时间为2024年2月8日,后续集成方式可能会有变动,所以目前的集成流程仅供参考,但是绝对详细。

整个记录会包含源码。

dart环境:sdk: '>=2.7.0 <3.0.0'

集成海外登录需要科学上网,一共涉及四个平台,Tiktok,Facebook,Google以及Apple登录。我会分别一一整理记录,所以我的项目就命名为fgta_login (Facebook,Google,Tiktok,Apple登录),奇怪的命名+1。

这篇文章只记录Google登录的详细流程,其他几个平台的登录会陆续更新。

一 Firebase平台配置

Firebase平台类似于国内的友盟,可以配置很多个平台的登录,支持创建Flutter的配置,使用起来也非常简单,官网地址如下:https://firebase.google.com/?hl=zh-cn

首先进入官网,点开控制台:

【原创 附源码】Flutter海外登录--Google登录最详细流程_第1张图片 点击添加项目:

【原创 附源码】Flutter海外登录--Google登录最详细流程_第2张图片

输入项目名:

【原创 附源码】Flutter海外登录--Google登录最详细流程_第3张图片

 点击创建项目:

【原创 附源码】Flutter海外登录--Google登录最详细流程_第4张图片

 创建完成进入项目页面,点击Flutter 标记:

【原创 附源码】Flutter海外登录--Google登录最详细流程_第5张图片

会提示你一步一步进行操作,很重要,每步都要执行:

这三步基本都是在终端执行的,一定要,在终端运行命令的时候,记得将自己使用的代理终端命令在终端执行一下,比如我用的小飞机,终端命令的复制使用方法是这样:

【原创 附源码】Flutter海外登录--Google登录最详细流程_第6张图片

然后复制在终端执行:

【原创 附源码】Flutter海外登录--Google登录最详细流程_第7张图片

这样终端的命令会也会在状态下执行。

 继续回到Firebase,执行终端命令:

第一步我这里已经创建过了,就不记录了

【原创 附源码】Flutter海外登录--Google登录最详细流程_第8张图片

第二步: 【原创 附源码】Flutter海外登录--Google登录最详细流程_第9张图片

第一个命令执行:

dart pub global activate flutterfire_cli

【原创 附源码】Flutter海外登录--Google登录最详细流程_第10张图片

进入Flutter项目文件夹一级目录,执行第二个命令:

flutterfire configure --project=fgtalogin

【原创 附源码】Flutter海外登录--Google登录最详细流程_第11张图片

 这里会提示你选择哪些平台,按住空格键可进行勾选或者取消勾选,按上下键可以选择,我这里只选择安卓和IOS,其他两个取消勾选,然后回车:

一路按y,回车:

【原创 附源码】Flutter海外登录--Google登录最详细流程_第12张图片

执行成功,现在firebase已经配置到你的项目里了。

 回到Firebase官网,点击授权管理:

【原创 附源码】Flutter海外登录--Google登录最详细流程_第13张图片

选择google: 

【原创 附源码】Flutter海外登录--Google登录最详细流程_第14张图片

选择启用:

【原创 附源码】Flutter海外登录--Google登录最详细流程_第15张图片

选择一个邮箱,然后进行保存: 

【原创 附源码】Flutter海外登录--Google登录最详细流程_第16张图片 

 会提示你下载最新的配置文件更新,点完成。

【原创 附源码】Flutter海外登录--Google登录最详细流程_第17张图片

进入项目设置页面:

【原创 附源码】Flutter海外登录--Google登录最详细流程_第18张图片 先配置安卓端,点击添加指纹,如果你们是团队开发的话,如果你不是项目的管理员则看不到这里,需要联系你的管理员去添加

【原创 附源码】Flutter海外登录--Google登录最详细流程_第19张图片

安卓端的指纹在这里获取:

【原创 附源码】Flutter海外登录--Google登录最详细流程_第20张图片 点击之后再控制台找:

【原创 附源码】Flutter海外登录--Google登录最详细流程_第21张图片

复制SHA1指纹到friebase,然后点击保存:

【原创 附源码】Flutter海外登录--Google登录最详细流程_第22张图片

添加完成下载配置文件:

【原创 附源码】Flutter海外登录--Google登录最详细流程_第23张图片

打开安卓项目文件夹,将下载完成的配置文件替换掉刚刚自动生成的,位置在这里,替换一下:

【原创 附源码】Flutter海外登录--Google登录最详细流程_第24张图片

iOS的也需要下载替换一下:

【原创 附源码】Flutter海外登录--Google登录最详细流程_第25张图片

注意命名要保持一致,iOS的在这里,将刚才下载下来的IOS的文件也替换一下:

【原创 附源码】Flutter海外登录--Google登录最详细流程_第26张图片 

至此,Firebase网页上的配置就完成了。

二 Flutter 项目配置

在项目中添加如下第三方库:

firebase_core: ^1.16.0
firebase_core_platform_interface: 4.5.1
google_sign_in: ^5.4.4

然后执行flutter pub get,如下图:

【原创 附源码】Flutter海外登录--Google登录最详细流程_第27张图片

接着就可以调用google登录了:

 GoogleSignIn _googleSignIn = GoogleSignIn(
      scopes: [
        'email',
        'https://www.googleapis.com/auth/contacts.readonly',
      ],
    );
    GoogleSignInAccount googleUser = await _googleSignIn.signIn();
    print("googleUser:${googleUser.toString()}");

执行效果如下:

【原创 附源码】Flutter海外登录--Google登录最详细流程_第28张图片

 点击高级:

【原创 附源码】Flutter海外登录--Google登录最详细流程_第29张图片

 点击【转至project-810623983861 (不安全)】,一路授权完成之后,即可实现google登录成功,输出如下:

【原创 附源码】Flutter海外登录--Google登录最详细流程_第30张图片可以看到,已经获取到google的用户信息了

完成

 源码地址:https://github.com/TheRuningAnt/FGTALogin.git

你可能感兴趣的:(flutter)