【问题标题】:Cannot show Automatic Strong Passwords for app bundleID无法显示应用程序 bundleID 的自动强密码
【发布时间】:2021-02-16 04:20:12
【问题描述】:

这是完整的error-message

无法显示应用程序 bundleID 的自动强密码:com.ckbusiness.Wishlists 由于错误:无法识别调用 应用程序的过程。检查应用程序中的 teamID 和 bundleID 应用标识符授权

我在这里错过了什么??

【问题讨论】:

  • 我们在 iOS 14.2 上面临同样的问题。在 iOS 14 之前,强密码可以正常工作。
  • 这里有同样的问题。在 iOS 14.1 上为我们工作,iOS 14.2+ 不
  • 自 iOS 14 以来一直如此。奇怪的是我的通用链接仍在工作以及将密码保存到钥匙串/关联域。所以基本上我的关联域设置仍然可以,只有强密码不起作用。尚未找到解决方案:在此处使用我的设置/信息提出相同的问题:stackoverflow.com/questions/65156778/…

标签: ios swift passwords entitlements


【解决方案1】:

我们在 Xcode 12.2 和 iOS 14.2 上遇到了同样的问题,并在 Apple Developer forum 上应用了更多详细信息。

这有关系吗? Associated Domain File 的文档在底部显示了一个关于 macOS 11 和 iOS 14 的新部分:

从 macOS 11 和 iOS 14 开始,应用不再向您的网络服务器直接发送对 apple-app-site-association 文件的请求。相反,他们将这些请求发送到 Apple 管理的内容交付网络 (CDN),专用于相关域。

更新 - 12 月 3 日:

我们检查了很多东西:

代码签名

我们的目标设置为“自动管理签名”。 在 App Store 连接中,我们查找了权利:

  1. 选择应用程序
  2. 选择“活动”
  3. 选择构建
  4. 向下滚动到“商店信息”,右侧列显示权利

com.apple.developer.team-identifierapplication-identifier 中的前缀匹配。后者与我们网站上apple-app-site-association file 中的apps 数组中的值完全匹配。

但是,在设备上使用 Xcode 执行 Build & Run 时,调试应用程序为 signed with a different Signing Identity

Apple 开发:(com.apple.developer.team-identifier 以外的其他 ID)

据估计,这会导致与 apple-app-site-association 文件不匹配。因此,我们将这个新 id 添加到现有的 apple-app-site-association 文件中并上传到我们的服务器上:

{
   "webcredentials": {
       "apps": ["ABCDEF1234.com.domain.appName", // Release ID from App Store
                "1234ABCDEF.com.domain.appName"] // Debug ID from Xcode
    }
}

再试一次,还是一样的错误。 还执行了通常的操作,例如:

  1. 从 iPhone 卸载应用并重启 iPhone
  2. 在 Xcode 中清理构建文件夹
  3. /Users/xxx/Library/Developer/Xcode 中删除 Xcode 文件夹 DerivedData 并重新启动 MacBook

apple-app-site-association 文件的可用性

在我们的服务器上更新此文件时,我们发现了一个docu update。在 2019 年 6 月(当我们推出这个特定的应用程序时),它提到将文件放在 2 个文件夹中:

  • https://<fully qualified domain>/apple-app-site-association
  • https://<fully qualified domain>/.well-known/apple-app-site-association

注意:目前只提到后面的.well-known目录。

我们的文件似乎只在第一个文件夹中。所以我们复制它并再次检查,但仍然显示错误。

为了排除 iOS 14 需要时间来更新基于 Apple 管理的新内容交付网络 (CDN) 的 apple-app-site-association 文件的更改,我们甚至使用了权利文件中的modeoption

在您开发应用时,如果您的网络服务器无法从公共互联网访问,您可以使用备用模式功能绕过 CDN 并直接连接到您的私有域。 您可以通过向关联域的权利添加查询字符串来启用备用模式,如下所示:

webcredentials:doamin.com?mode=developer

再一次,没有运气。

TestFlight 版本

为避免使用 Xcode 调试器及其调试签名,将 Xcode 12.2 构建存档并将其提交到 App Store。如上所述在 App Store Connect 中验证来自构建的权利。它们与 apple-app-site-association 文件匹配。

发布用于内部 TestFlight 测试并在设备上进行测试。点击第一个密码文本字段不会显示密码建议。

结论

尽管我们似乎别无选择,但希望这些练习中的任何一个都能激发其他人找出解决方案。或者这只是一个巨大的 Apple 错误,我们需要等待他们的修复。

【讨论】:

  • 也在最新的 iOS 14.3 beta 3 上进行了验证,不再建议使用密码。
  • 关于这个问题的任何更新?我仍然不工作 iOS14,Xcode 12.3
  • 就我而言,情况更糟。我得到的建议不是自动填充根本不显示,而是好像我已将textContentType 设置为.username。基本上,iOS 键盘会为我的密码文本字段建议一个用户名。 Yuck - Apple 请修复。
  • @dvdblk 也一样。
  • 你能用你的分发证书构建和运行吗?我遇到了同样的问题,并认为仅在关联文件中包含开发证书 ID 不是解决方法。我想知道没有证书不匹配的人是否有这个问题。
【解决方案2】:

在版本 13.0 beta (13A5155e) 中再次工作!

【讨论】:

    猜你喜欢
    • 2020-01-11
    • 2021-05-05
    • 2023-03-07
    • 1970-01-01
    • 1970-01-01
    • 2020-11-23
    • 1970-01-01
    • 1970-01-01
    • 2017-12-15
    相关资源
    最近更新 更多