Для моей личной учетной записи Gmail метод credential.getId() правильно возвращает адрес электронной почты (например, [email protected]). Однако когда я использую другую учетную запись Gmail, credential.id возвращает идентификатор Google вместо адреса электронной почты (например, 118024214837256241790).
Согласно документации Google Credential Manager, getId( ) должен возвращать адрес электронной почты, связанный с учетной записью Google.
Код: Выделить всё
private val signInWithGoogleOption = GetSignInWithGoogleOption.Builder(serverClientId = SERVER_CLIENT_ID).build()
private suspend fun googleSignIn(
activity: Activity,
onSuccess: (GoogleIdTokenCredential) -> Unit
) {
val request = GetCredentialRequest.Builder()
.addCredentialOption(signInWithGoogleOption)
.build()
val result = credentialManager.getCredential(activity, request)
val credential = result.credential
Timber.d("Credential ID: ${credential.id}")
}
Код: Выделить всё
implementation "androidx.credentials:credentials:1.5.0-beta01"
implementation "androidx.credentials:credentials-play-services-auth:1.5.0-beta01"
Подробнее здесь: https://stackoverflow.com/questions/793 ... email-addr