iOS应用程序的密码自动填充

10
在iOS 11中,他们引入了密码自动填充功能,它可以像Safari一样在iOS应用程序中填充用户名和密码。用户首先进入网站,登录并将用户名和密码保存在钥匙串中,然后打开应用程序,字段会自动填充用户名和密码。
它是否可以以其他方式实现,例如我先在应用程序中登录,然后通过Safari访问网站时自动填充用户名和密码?
是否有任何相关的文档或文章?

这个过程在WWDC视频中有详细介绍 - 你看过吗?https://developer.apple.com/videos/play/wwdc2017/206/ - Paulw11
@Paulw11先生,我已经看过了,这就是为什么我在这里问是否有可能采用其他方式的原因。 - Abdul Karim
这是一个有趣的问题;他们没有涉及登录应用程序是否会将密码保存在钥匙串中;我的猜测是不会,因为他们不会在未提示用户的情况下这样做。 - Paulw11
2个回答

3

编辑我的回答:

看起来是可以做到的。我们可以在iOS8中看到同样类型的关联,即使用SharedWebCredentials。使用SharedWebCredentials可以双向进行。从应用程序到网站和从网站到应用程序都可以。假设iOS11中的密码自动填充就是在其基础上完成的。

以下是关联的方式。

我们为一个应用程序拥有授权证书,其中我们将提供要链接的域。然后我们有一个网站,在该网站上以JSON格式保存与该网站相关的信息。在该JSON中,您必须放置您的捆绑标识符。因此,当用户通过应用程序保存这些密码并登录时,应用程序授权文件将向Safari提供网址。Safari将带来该JSON文件并验证捆绑标识符是否相同。如果验证成功,则会填充用户名和密码。

更多信息请参见:iOS 11中的密码自动填充


6
是否可以在没有网站的情况下将应用程序的用户名和密码保存到密码管理器中?我已经设置了自动填充,但我没有得到保存密码的提示? - Neil Faulkner

2
我在WWDC的开发者实验室询问了这个问题,得知这是可能的。关键在于新的密码自动填充是基于现有的共享Web凭据 API,该API可以双向工作。如果您使用该API保存应用程序的凭据,则它们将在移动Safari中可用。共享Web凭据是2014 WWDC会议的主题。
我还没有尝试过,但根据来源,我非常有信心它应该可以工作。

感谢@Tom Harrington,我了解到了SharedWebCredentials。我已经编辑了我的回答。 - Sivajee Battina

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接