如何在 xamarin 中为 iOS 12 添加凭据提供程序应用程序扩展

Cub*_*ric 7 ios xamarin xamarin.forms ios-extensions

我正在尝试利用新扩展程序来使用密码管理应用程序,但在设置它时遇到了障碍。这可能是我的谷歌搜索技能,但几乎没有关于如何使用 xamarin 执行此操作的文档。

到目前为止我所拥有的:

  1. 将 com.apple.developer.authentication-services.autofill-credential-provider 作为自定义属性添加到我的 iOS 项目 Entitlements.plist
  2. 由于在创建 iOS 扩展项目时没有凭据提供程序选项,因此创建了 ActivionView 扩展。
  3. 将 ActionViewController 更改为 CredentialProviderViewController
  4. 更新 MainInterface.storyboard 以使用 CredentialProviderViewController
  5. 将 com.apple.developer.authentication-services.autofill-credential-provider 作为自定义属性添加到自动填充 Entitlements.plist

我在“设置”>“密码和帐户”下没有看到使用我的应用程序进行自动填充的选项。我一定遗漏了一些关键部分。有谁知道我应该做什么?

这是我的 Entitlements.plist

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>keychain-access-groups</key>
    <array>
        <string>$(AppIdentifierPrefix)com.orginization.appname</string>
    </array>
    <key>com.apple.security.application-groups</key>
    <array>
        <string>group.com.orginization.appname</string>
    </array>
    <key>com.apple.developer.authentication-services.autofill-credential-provider</key>
    <true/>
</dict>
</plist>
Run Code Online (Sandbox Code Playgroud)

kid*_*ley 0

我已确认这是 Xamarin.iOS 的错误。具体来说,对已知扩展点列表进行枚举和验证。iOS 12 中引入的凭据提供程序点以及 iOS 10 之后的任何其他程序点均不存在。

我已经分叉了 Xamarin.iOS 代码并制作了必要的补丁,并确认我现在能够成功部署显示在 iOS 设置中的自动填充密码提供程序列表中的凭据提供程序。我将尽快提交错误并提交拉取请求,但我可能会检查并确保所有其他扩展点首先存在。

编辑:我的所有拉取请求都已合并到主开发分支中,并希望很快成为正式版本的一部分。