From db7486db043e1327113735637b28bb7376ef5c39 Mon Sep 17 00:00:00 2001 From: AYM1607 Date: Tue, 26 Feb 2019 20:49:53 -0600 Subject: [PATCH] Created [signIn] methos --- lib/src/resources/google_login_provider.dart | 27 ++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/lib/src/resources/google_login_provider.dart b/lib/src/resources/google_login_provider.dart index 5820daa..0e3525f 100644 --- a/lib/src/resources/google_login_provider.dart +++ b/lib/src/resources/google_login_provider.dart @@ -1 +1,28 @@ +import 'dart:async'; + import 'package:firebase_auth/firebase_auth.dart'; +import 'package:google_sign_in/google_sign_in.dart'; + +class GoogleSignInProvider { + final GoogleSignIn _googleSignIn; + final FirebaseAuth _auth; + + GoogleSignInProvider([GoogleSignIn googleSignIn, FirebaseAuth firebaseAuth]) + : _googleSignIn = googleSignIn ?? GoogleSignIn(), + _auth = firebaseAuth ?? FirebaseAuth.instance; + + Future signIn() async { + final GoogleSignInAccount googleUser = await _googleSignIn.signIn(); + final GoogleSignInAuthentication googleAuth = + await googleUser.authentication; + + final AuthCredential credential = GoogleAuthProvider.getCredential( + accessToken: googleAuth.accessToken, + idToken: googleAuth.idToken, + ); + + final FirebaseUser user = await _auth.signInWithCredential(credential); + print("signed in " + user.displayName); + return user; + } +}