ios - Firebase Facebook OAuth在iOS设备上返回null

标签 ios firebase ionic-framework firebase-authentication

我有一个Firebase Web应用程序,它使用以下方法通过Facebook验证用户的身份

let provider = new firebase.auth.FacebookAuthProvider();
provider.addScope('public_profile');
provider.addScope('user_location');
firebase.auth().signInWithRedirect(provider)
  .then(function(){
    return firebase.auth().getRedirectResult()
  })
  .then(function(result) {
      console.log('Logged in user ::: ', result.user);
  })
  .catch(err => { console.warn('An error occurred') })
})

但是,所有iOS设备和模拟器(奇怪的是,一个除外)都不会检索user对象-相反,我会得到null
  • 我已在Firebase控制台中启用Facebook作为登录提供程序
  • 我已在Firebase控制台
  • 中添加了我应用程序的域,facebook.com和localhost作为授权域。
  • 我尝试重新定位getRedirectResult()并利用onAuthStateChanged()方法,但是
  • 无济于事

    有没有人遇到类似的问题?如果值得注意,我正在Ionic v1平台上运行

    最佳答案

    我的问题是XCode在我的config.xml中定义的所有动态链接前面加上了“ applinks ”。此前缀破坏了身份验证重定向。我必须在每次提交到应用商店之前删除这些前缀,否则OAuth将永远无法成功运行。

    关于ios - Firebase Facebook OAuth在iOS设备上返回null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54816649/

    相关文章:

    ios - 如何在 UISearchBar 中过滤 NSDictonary?

    ios - 根据iOS版本导入不同的界面

    iOS:为什么我不能以编程方式为按钮设置框架?

    css - 如何获得三个同样高的行?

    ios - Swift 与核心数据

    ios - 控制台错误 : Invalid Firebase Data setvalue cannot store object

    javascript - 如何将 Firebase 查询中的对象推送到 this.state

    javascript - 向特定设备发送通知

    ionic-framework - Ionic 4 - 从模态传回数据

    javascript - Firebase 和 Ionic 中的数据未更新