About 33% of login cases return Error 12501, which I log with Sentry.
The error is triggered by:
googlePlusUser = await this.google.login(environment.googleParams)
I have so far been unable to reproduce this issue and the error happens on all major Android versions and devices. I am using Ionic4 with Firebase and the cordova-plugin-googleplus. https://github.com/EddyVerbruggen/cordova-plugin-googleplus
Note: Already have an unanswered issue ticket there and on stack-overflow.
Currently, the app is only available on Android.
import { GooglePlus } from '@ionic-native/google-plus/ngx';
[@Injectable](https://github.com/Injectable)({
providedIn: 'root',
})
export class FirebaseAuthService {
constructor(
private google: GooglePlus,
private fireAuth: AngularFireAuth,
...
) { }
async loginGoogle(that: any): Promise {
let googlePlusUser;
try {
googlePlusUser = await this.google.login(environment.googleParams);
return await firebase
.auth()
.signInWithCredential(
firebase.auth.GoogleAuthProvider.credential(googlePlusUser.idToken)
)
.then((response) => {
this.firebaseDatabaseService.saveGoogleAuthData(response.user);
this.router.navigate(['/tabs/home']);
})
.catch((error) => {
console.log('inside loginGoogle then catch: ', error);
Sentry.captureException(error);
});
} catch (error) {
console.log('outside loginGoogle then catch: ', error);
Sentry.captureException(error);
}
My environment googleParams are
googleParams: {
webClientId: 'xxx.apps.googleusercontent.com',
offline: false,
}
I am at a loss of what the issue is and would be happy to add any further information if requested.