使用不同的提供者反应本机 firebase 身份验证
React native firebase authentication using different providers
首先,我使用函数 createUserWithEmailAndPassword(jamesdmurphy51@gmail.com, password)
在 firebase 中创建新用户。
然后我使用下面的代码使用 Facebook 登录
const result = await LoginManager.logInWithPermissions(['public_profile', 'email']);
const data = await AccessToken.getCurrentAccessToken();
const firebaseCredential = await auth.FacebookAuthProvider.credential(data.accessToken);
const fbUserObj = await auth().signInWithCredential(firebaseCredential);
问题在于它创建了一个具有单独 UID 的完全独立的用户帐户....即使链接到 Facebook 帐户的电子邮件地址与用于 createUserWithEmailAndPassword
的相同。
如何让用户可以使用 Facebook 登录现有帐户?
当您调用 auth().signInWithCredential(firebaseCredential)
时,您确实在 Firebase 身份验证中创建了一个新帐户。
如果您想 link 现有帐户的 Facebook 凭据,则需要调用 linkWithPopup
或 linkWithRedirect
,如 linking accounts 上的 Firebase 文档所示.
首先,我使用函数 createUserWithEmailAndPassword(jamesdmurphy51@gmail.com, password)
在 firebase 中创建新用户。
然后我使用下面的代码使用 Facebook 登录
const result = await LoginManager.logInWithPermissions(['public_profile', 'email']);
const data = await AccessToken.getCurrentAccessToken();
const firebaseCredential = await auth.FacebookAuthProvider.credential(data.accessToken);
const fbUserObj = await auth().signInWithCredential(firebaseCredential);
问题在于它创建了一个具有单独 UID 的完全独立的用户帐户....即使链接到 Facebook 帐户的电子邮件地址与用于 createUserWithEmailAndPassword
的相同。
如何让用户可以使用 Facebook 登录现有帐户?
当您调用 auth().signInWithCredential(firebaseCredential)
时,您确实在 Firebase 身份验证中创建了一个新帐户。
如果您想 link 现有帐户的 Facebook 凭据,则需要调用 linkWithPopup
或 linkWithRedirect
,如 linking accounts 上的 Firebase 文档所示.