微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Android 一键登录:无法显示密码保存对话框

如何解决Android 一键登录:无法显示密码保存对话框

我正在尝试实施 Android 一键登录,但无法在此处显示此对话框:

Password Save Dialog

我一直收到消息:com.google.android.gms.common.api.ApiException: 16: Skipping password saving since the user is likely prompted with Android Autofill.

我该如何解决这个问题?

代码

private fun saveCredentials(email: String,password: String) {
    val signInPassword = SignInPassword(email,password)
    val savePasswordRequest =
        SavePasswordRequest.builder().setSignInPassword(signInPassword).build()

    // Show the password save dialog
    Identity.getCredentialSavingClient(this)
        .savePassword(savePasswordRequest)
        .addOnFailureListener {e ->
            Log.d(TAG,Log.getStackTraceString(e))
        }
        .addOnSuccessListener { result ->
            startIntentSenderForResult(
                result.pendingIntent.intentSender,REQUEST_CODE_SAVE_CREDENTIALS,null,// fillInIntent
                0,// flagsMask
                0,// flagsValues
                0,// extraFlags
                null)   // options
        }
}

文档:https://developers.google.com/identity/one-tap/android/save-passwords

解决方法

我发现只有当您关闭手机上的自动填充服务时,“一键登录”中的保存密码对话框才会显示。您可以通过转到 Settings > Languages & input > Advanced > Autofill Service 来执行此操作。

如果自动填充开启,您将从自动填充服务中获得保存密码对话框,与 One Tap 库提供的对话框相比,该对话框看起来有点过时。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?