Ionic 3 Firebase Google Auth重定向到本地主机而不是应用程序

时间:2019-07-24 13:36:20

标签: firebase ionic3 angularfire2 google-authentication

我在Ionic 3项目中使用AngularFire2。我已经实现了Facebook和Google Login,它们以前都可以运行,但是以某种方式停止了运行(也许是因为Firebase SDK或Google发生了变化?)。

我现在面临的问题是,一旦用户通过带有重定向的google登录,他就可以登录,但无法在我的应用中重新获得重定向。相反,谷歌只是在重定向上显示此页面:

enter image description here

这是用于登录的代码:

private oauthSignIn(provider: AuthProv) {
      if (!(<any>window).cordova) {
        return this.afAuth.auth.signInWithPopup(provider).then((user) => {
          this.user = user.user;
        });
      } else {
        return this.afAuth.auth.signInWithRedirect(provider)
          .then(() => {
            return this.afAuth.auth.getRedirectResult().then(result => {
              this.user = result.user;
            });
          });
      }
    }

此代码来自AngularFire2文档本身,因此我找不到任何错误。

这是我的package.json:

"dependencies": {
"@angular/animations": "5.2.11",
"@angular/common": "5.2.11",
"@angular/compiler": "5.2.11",
"@angular/compiler-cli": "5.2.11",
"@angular/core": "5.2.11",
"@angular/forms": "5.2.11",
"@angular/http": "5.2.11",
"@angular/platform-browser": "5.2.11",
"@angular/platform-browser-dynamic": "5.2.11",
"@ionic-native/admob-plus": "^5.8.0",
"@ionic-native/app-version": "^4.20.0",
"@ionic-native/core": "~4.20.0",
"@ionic-native/keyboard": "^5.8.0",
"@ionic-native/navigation-bar": "^5.8.0",
"@ionic-native/splash-screen": "~4.20.0",
"@ionic-native/status-bar": "~4.20.0",
"@ionic/storage": "2.2.0",
"@ultimate/ngxerrors": "^1.4.0",
"angularfire2": "^5.2.1",
"cordova-admob-plus": "0.30.0",
"cordova-android": "7.1.4",
"cordova-plugin-app-update": "2.0.2",
"cordova-plugin-app-version": "0.1.9",
"cordova-plugin-appversion": "1.0.0",
"cordova-plugin-device": "^2.0.2",
"cordova-plugin-ionic-keyboard": "^2.1.3",
"cordova-plugin-ionic-webview": "4.1.1",
"cordova-plugin-navigationbar": "1.0.31",
"cordova-plugin-network-information": "git+https://github.com/apache/cordova-plugin-network-information.git",
"cordova-plugin-splashscreen": "^5.0.2",
"cordova-plugin-startapp-ads": "git+https://github.com/lreiner/cordova-plugin-startapp-ads.git",
"cordova-plugin-statusbar": "^2.4.2",
"cordova-plugin-whitelist": "^1.3.3",
"firebase": "^6.1.1",
"ionic-admob": "^0.19.6",
"ionic-angular": "3.9.5",
"ionicons": "3.0.0",
"phonegap-plugin-mobile-accessibility": "git+https://github.com/phonegap/phonegap-mobile-accessibility.git",
"promise-polyfill": "^8.1.3",
"rxjs": "5.5.11",
"sw-toolbox": "3.6.0",
"zone.js": "0.8.29"

},

我已经尝试过this Solution并添加:

<preference name="CordovaWebViewEngine" value="CDVUIWebViewEngine" />
<allow-navigation href="http://*" />

到我的config.xml也没有任何改变。

我也试图降级

"cordova-plugin-ionic-webview": "4.1.1",

也没有用。

我的Google WebClient拥有正确的ClientID,Secred和重定向URL,就像在Firebase控制台中一样。

那我该如何解决这个问题?

0 个答案:

没有答案