0.0.0 • Published 4 years ago
ionic-native-googlesignin v0.0.0
GoogleSignIn
This plugin allows you to authenticate and identify users with Google Sign-in on Android.
This project is inspired on two other Cordova plugins: https://github.com/EddyVerbruggen/cordova-plugin-googleplus and https://github.com/artberri/cordova-plugin-play-games-services. The difference is that this plugin wraps the new GoogleSignInClient class instead of the deprecated GoogleApiClient (see https://android-developers.googleblog.com/2017/11/moving-past-googleapiclient_21.html).
Requirements
compileSdkVersion 28 or later.
Install
ionic cordova plugin add https://github.com/rogeriotakejame/googlesignin --variable APP_ID=your_app_id
Where your_app_id is your 12 digit id registered on Google (TODO how)
Usage
cordova.plugins.GoogleSignIn.getLastSignedInAccount(
function(res) {
// Success
console.log(res);
},
function(err) {
// Failure
console.error(err);
}
);
cordova.plugins.GoogleSignIn.signIn(
{
signInMode:this.signInMode,
scopes:this.selectedScopes,
webClientId:this.webClientId
},
function(res) {
// Success
console.log(res);
},
function(err) {
// Failure
console.error(err);
}
);
cordova.plugins.GoogleSignIn.silentSignIn(
{
signInMode:this.signInMode,
scopes:this.selectedScopes,
webClientId:this.webClientId
},
function(res) {
// Success
console.log(res);
},
function(err) {
// Failure
console.error(err);
}
);
cordova.plugins.GoogleSignIn.signOut(
function(res) {
// Success
console.log(res);
},
function(err) {
// Failure
console.error(err);
}
);
cordova.plugins.GoogleSignIn.revokeAccess(
function(res) {
// Success
console.log(res);
},
function(err) {
// Failure
console.error(err);
}
);
cordova.plugins.GoogleSignIn.isGooglePlayServicesAvailable(
function(res) {
// Success
console.log(res);
},
function(err) {
// Failure
console.error(err);
}
);
Ionic Native:
import { GoogleSignIn } from '@ionic-native/google-sign-in/ngx';
export class MyComponent {
constructor(private googleSignIn:GoogleSignIn) {}
getLastSignedInAccount(){
this.googleSignIn.getLastSignedInAccount()
.then(res => console.log(res))
.catch(err => console.error(err));
}
signIn(){
this.googleSignIn.signIn({
signInMode:this.signInMode,
scopes:this.selectedScopes,
webClientId:this.webClientId
})
.then(res => console.log(res))
.catch(err => console.error(err));
}
silentSignIn(){
this.googleSignIn.silentSignIn({
signInMode:this.signInMode,
scopes:this.selectedScopes,
webClientId:this.webClientId
})
.then(res => console.log(res))
.catch(err => console.error(err));
}
signOut(){
this.googleSignIn.signOut()
.then(res => console.log(res))
.catch(err => console.error(err));
}
revokeAccess(){
this.googleSignIn.revokeAccess()
.then(res => console.log(res))
.catch(err => console.error(err));
}
isGooglePlayServicesAvailable(){
this.googleSignIn.isGooglePlayServicesAvailable()
.then(res => console.log(res))
.catch(err => console.error(err));
}
}
0.0.0
4 years ago