启用关联域,它启用com.apple.SafariKeychain

Her*_*ert 6 xcode ios

我在Xcode中启用了功能中的关联域,并按预期创建了".entitlements"文件.但它还修改了一个project.pbxproj文件com.apple.SafariKeychain = {enabled = 1;}

所以我只是好奇,为什么它被启用,是否因某种原因有用?

我找不到任何关于此的文档.

mac*_*erv 6

注意:已针对iOS 12更新

该权利用于多种目的。它涵盖了您的应用需要与网络域建立经过验证的连接的所有功能。通过在apple-app-site-association您的域的根级别放置一个静态JSON文件(称为)来完成此验证,该文件包含您应用的标准App ID,并带有用于启用特定功能的密钥和配置。

它涵盖了iOS的一些实际功能:

  • 共享的Web凭据。该标识符com.apple.SafariKeychain实际上是指“关联域”功能的初衷,该功能旨在使本机应用程序可以访问Web域的iCloud钥匙串中存储的凭据。如果用户已经登录到您的网站并将其密码保存在iCloud钥匙串中,则此功能允许您的本机应用程序使用这些存储的凭据。
  • 密码自动填充。 在iOS 12中可用。“密码自动填充”采用共享Web凭据将添加到网站的行为,并以可靠的方式将其扩展到本机应用程序中。通过为您的应用程序建立关联域,并将元数据添加到文本字段,iOS可以自动将保存的Web凭据输入到本机应用程序中。创建新帐户或更改密码时,“密码自动填充”可以根据您组织的密码规则提供强力的密码建议。如果它可以找到指定用于输入该信息的字段,它还可以通过自动填写通过文本消息发送的多因素身份验证代码来帮助用户。
  • 通用链接。 最简单的说,此功能可以安全地替代旧的基于自定义方案的方法,该方法可以从另一个应用程序或从Web链接启动一个应用程序。当充分利用它时,它使您可以在网站的信息体系结构和本机应用程序之间画出相似之处。当用户点击您的域的Web链接时,可以启动您的本机应用程序以处理该链接。如果未安装该应用程序,则会向智能横幅显示一个指向App Store的链接。
  • Web浏览器到本机应用程序的切换。这是通用链接的被动版本。如果用户正在macOS或iOS设备上浏览您的网站,并且您已为他们正在查看的页面创建了站点关联,则他们将在其iOS锁定屏幕上看到“切换”图标,这将使他们可以打开您的应用,并且(可选) ,导航到他们正在查看的网页的本机版本。