angular / angularfire

Angular + Firebase = ❤️
https://firebaseopensource.com/projects/angular/angularfire2
MIT License
7.7k stars 2.19k forks source link

Ionic - Google Authentification fail #1600

Closed fjoalland closed 6 years ago

fjoalland commented 6 years ago

Version info

Angular CLI: 1.5.4

Angular: 5.2.10

Firebase: ^4.6.2"

AngularFire: 5.0.0-rc.4

Cordova-android: 7.0.0

Authentification doesn't work

Google authentification doesn't work only when I run my ionic project on my smartphone. It works when I run a server on my laptop, I can connect myselft with google but I have no result on my smartphone.

So to be more specific, if I use the same application in my laptop and push the button "sign-in with Google", a pop-up will display and I can choose my account. But I run this same application on my smartphone and puch the button, nothing will happen.

Steps to set up and reproduce

Clone this repository : https://github.com/appseed-io/ionic3-firebase-auth Follow the command line further:

hiepxanh commented 6 years ago

image install plugin then image and many plugin required.

well sir, I already clone your example repository, look like login with google require few more plugin. I already install:

1) cordova-universal-links-plugin
2) cordova-plugin-buildinfo
3) cordova-plugin-browsertab
4) cordova-plugin-inappbrowser

then I got this image image

after that, I follow that isssue and go to stackoverflow Firebase Google authentication error in ionic3

1) I fix widget id in config.xml at project root from 'io.ionic.starter' to 'com.camthuong.camthuong' (this is my android project), and edit firebase config to mine. 2) Then from stackoverflow I follow this link [Authenticate Using OAuth Providers with Cordova] (https://firebase.google.com/docs/auth/web/cordova) and setup firebase dynamic link as they said. look 3) there is and error Error: OAuth on Cordova Android, get auth/redirect-cancelled-by-user well, that look like you are stopping at this step, just like me. I missing add this line to 'config.xml'. Let add this:

```
<universal-links>
    <host name="zm4e4.app.goo.gl" scheme="https" />
    <host name="routing-aadd4.firebaseapp.com" scheme="https">
        <path url="/__/auth/callback" />
    </host>
</universal-links>
<preference name="AndroidLaunchMode" value="singleTask" />
```

4) i got that error TypeError: Cannot read property 'manifest' of undefined, ops follow this link: Cannot read property 'manifest' of undefined I need to uninstall Universal Links Plugin and add it again with: ionic cordova plugin add https://github.com/walteram/cordova-universal-links-plugin

5) then finally i successful login! completed image

hiepxanh commented 6 years ago

can you @fjoalland follow this instruction I wrote in here and give me some comment, can you suggest for me anything can I update? I would love to improve it before make a PR. can you help me?

fjoalland commented 6 years ago

Hello @hiepxanh ,

Thank you for your answer! I followed your instruction but it's still failed. But we progressed, now when I push the button "sign in with Google", il will launch a browser on my application and Google will return an error "disallowed_useragent".

Secondly, I have a question about this instruction: https://firebase.google.com/docs/auth/web/cordova I add a new Dynamic Link, but I don't really know which configuration they need. Because I have to write an URL in the configuration of my dynamic link.

hiepxanh commented 6 years ago

standby @fjoalland I'm making some new test and notice you. just a few day

jamesdaniels commented 6 years ago

If there is an issue here, it is most certainly with the JS SDK not AngularFire and you'll want to open an issue over there https://github.com/firebase/firebase-js-sdk