Android 在Firebase身份验证中如何区分signIn和linkWith?
在Android 在Firebase身份验证中如何区分signIn和linkWith?,android,firebase,kotlin,firebase-authentication,Android,Firebase,Kotlin,Firebase Authentication,在onActivityResult中,我正在尝试获取凭据并使用Google执行Firebase登录: override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { super.onActivityResult(requestCode, resultCode, data) if (requestCode == RC_SIGN_IN) { val task = get
onActivityResult
中,我正在尝试获取凭据并使用Google执行Firebase登录:
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
super.onActivityResult(requestCode, resultCode, data)
if (requestCode == RC_SIGN_IN) {
val task = getSignedInAccountFromIntent(data)
try {
val googleSignInAccount = task.getResult(ApiException::class.java)
if (googleSignInAccount != null) {
val googleTokenId = googleSignInAccount.idToken
val credential = getCredential(googleTokenId, null)
firebaseSignInWithGoogle(credential)
}
} catch (e: ApiException) {
//Log Exception
}
}
}
如您所见,我创建了一个firebaseSignInWithGoogle()函数,该函数被调用以验证用户身份。这个很好用。我还创建了一个linkAccountWithGoogle()函数。当我按下按钮链接帐户时,会调用相同的onActivityResult。我可以获得凭据,但如何区分调用哪个方法?Firebase登录是否使用Google()或链接帐户是否使用Google()?我很难解决这个问题,因为我看不到任何关系。当同一电子邮件地址已经有一个帐户时,您通常会希望链接帐户 因此:
这就是关系,一个现有的账户。我怎么能不想到呢?谢谢