Получение предупреждающего сообщения «Неправильное использование входа с помощью Google API» в «Android Lint: правильносAndroid

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 Получение предупреждающего сообщения «Неправильное использование входа с помощью Google API» в «Android Lint: правильнос

Сообщение Anonymous »

Я вижу предупреждающее сообщение в Android Studio, когда проверяю свой проект.

в разделе «Android Lint: правильность» предупреждение:
Неправильное использование входа с помощью Google API,

Использование классов :googleid без использования GoogleIdTokenCredential.< /strong>
Изображение


Подробное описание предупреждений:


Неправильное использование входа с помощью Google API
При использовании классов :googleid, таких как GetGoogleIdOption и GetSignInWithGoogleOption, вам обычно приходится обрабатывать ответ с помощью GoogleIdTokenCredential.
TYPE_GOOGLE_ID_TOKEN_CREDENTIAL или GoogleIdTokenCredential. TYPE_GOOGLE_ID_TOKEN_SIWG_CREDENTIAL.

Эта проверка сообщает обо всех использованиях этих классов :googleid, если нет ссылок на GoogleIdTokenCredential.

Идентификатор проблемы : CredentialManagerSignInWithGoogle
https://developer.android.com/identity/ ... reate-sign

Я проверил ссылку, приведенную выше, и следовал документации по этой ссылке.
Я много искал в поисковой системе Google и переполнил стек по этому поводу. Я также попросил совета у AI по этому поводу и попробовал перезапустить Android Studio.
Каждый раз, когда я проверяю код, я получаю одно и то же предупреждающее сообщение.
Мой код:В build.gradle
dependencies {
// dependencies for credential
implementation("androidx.credentials:credentials-play-services-auth:1.2.2")
implementation("com.google.android.libraries.identity.googleid:1.1.1")
}

Во фрагменте
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)

val googleIdOption by lazy {
GetGoogleIdOption.Builder().setFilterByAuthorizedAccounts(false)
.setServerClientId(serverClientId)
.setAutoSelectEnabled(true).setNonce(generateNonce()).build()
}

val request: androidx.credentials.GetCredentialRequest =
androidx.credentials.GetCredentialRequest.Builder().addCredentialOption(googleIdOption)
.build()

val mContext = requireContext()
val credentialManager by lazy { androidx.credentials.CredentialManager.create(mContext) }

lifecycleScope.launch {
try {
val result = credentialManager.getCredential(
request = request,
context = mContext,
)
handleSignIn(result)
} catch (e: androidx.credentials.exceptions.GetCredentialException) {
showMessage("Failed to get credential: $e")
}
}
}

private fun handleSignIn(result: androidx.credentials.GetCredentialResponse) {
when (val credential = result.credential) {
is CustomCredential -> {
if (credential.type == GoogleIdTokenCredential.TYPE_GOOGLE_ID_TOKEN_CREDENTIAL) {
try {
val googleIdTokenCredential =
GoogleIdTokenCredential.createFrom(credential.data)

val id = googleIdTokenCredential.id
val displayName = googleIdTokenCredential.displayName

if (displayName == null) {
showMessage("Login Failed\nid: $id")
return
}

} catch (e: GoogleIdTokenParsingException) {
showMessage("Received an invalid google id token response, $e")
}
}
}

else -> {
showMessage("Unexpected type of credential")
}
}
}

private fun generateNonce(): String {
val nonceBytes = ByteArray(16)
SecureRandom().nextBytes(nonceBytes)
return Base64.encodeToString(
nonceBytes, Base64.NO_PADDING or Base64.NO_WRAP or Base64.URL_SAFE
)
}

private fun showMessage(message: String) {
Toast.makeText(requireContext(), message, Toast.LENGTH_SHORT).show()
}


Подробнее здесь: https://stackoverflow.com/questions/790 ... id-lint-co
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Получение предупреждающего сообщения «Неправильное использование входа с помощью Google API» в «Android Lint: правильнос
    Anonymous » » в форуме Android
    0 Ответы
    14 Просмотры
    Последнее сообщение Anonymous
  • Как создать ароматный базовый файл Android Lint Lint
    Anonymous » » в форуме Android
    0 Ответы
    2 Просмотры
    Последнее сообщение Anonymous
  • Есть ли эквивалентный Java/Android Lint в Clippy :: Diswallowed_methods Lint в ржавчине?
    Anonymous » » в форуме JAVA
    0 Ответы
    0 Просмотры
    Последнее сообщение Anonymous
  • Есть ли эквивалентный Java/Android Lint в Clippy :: Diswallowed_methods Lint в ржавчине?
    Anonymous » » в форуме Android
    0 Ответы
    0 Просмотры
    Последнее сообщение Anonymous
  • Цель предупреждающего сообщения?
    Anonymous » » в форуме C++
    0 Ответы
    9 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Android»