我正在使用Smart Lock for Passwords on Android"来使用户以前使用该应用程序时自动登录。或至少获得一个对话框,以在上次使用的帐户之间进行选择。
这曾经很好用,但是在Android Oreo和Autofill Framework上,我不再能自动登录了。
此外,在SmartLock的“选择帐户”对话框中(显示当您在Smart Lock中存储了多个帐户或致电Auth.CredentialsApi.disableAutoSignIn()
时),使用自动填充存储凭据时将不会显示。
我知道,当用户键入其凭据时,“自动填充”会覆盖“保存到Smart Lock”对话框(直到我们force the Smart Lock save-dialog为止),这似乎是预期的行为:
我们建议应用程序在O设备上使用自动填充保存对话框,以与其他应用程序的行为保持一致。
这会很好,因为:
请注意,使用Google自动填充功能保存的凭据与Smart Lock for Passwords双向共享。
但是如上所述,它不起作用。 使用自动填充保存的凭据不可用于SmartLock,因此自动签名不起作用。
我一直在玩耍,并使用forceEnableSaveDialog()
和android:importantForAutofill
来让Smart Lock保存凭据,而不是自动填充和tada:自动登录有效,凭据显示在“选择帐户”对话框中。
通过Smart Lock保存后,再次启用后,凭据也可用于自动填充功能,就像它首先应该起作用一样。
对我来说,“双向共享”似乎已损坏。 使用Smart Lock而不是通过自动填充保存时共享凭据。
对此有何想法?