无法显示应用程序 bundleID 的自动强密码 [英] Cannot show Automatic Strong Passwords for app bundleID

查看:25
本文介绍了无法显示应用程序 bundleID 的自动强密码的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这是完整的错误消息:

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

Cannot show Automatic Strong Passwords for app bundleID: com.ckbusiness.Wishlists due to error: Cannot identify the calling app's process. Check teamID and bundleID in your app's application-identifier entitlement

我在这里错过了什么??

What am I missing here??

推荐答案

我们在 Xcode 12.2 和 iOS 14.2 上遇到了同样的问题,并在 苹果开发者论坛.

We have the same issue with Xcode 12.2 and iOS 14.2 and applied more details on the Apple Developer forum.

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

Can this be related? The documentation of the Associated Domain File shows a new section at the bottom about macOS 11 and iOS 14:

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

Starting with macOS 11 and iOS 14, apps no longer send requests for apple-app-site-association files directly to your web server. Instead, they send these requests to an Apple-managed content delivery network (CDN) dedicated to associated domains.

更新 - 12 月 3 日:

我们检查了很多东西:

代码签名

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

Our target is set to "Automatically managing signing". In App Store connect we looked up the the entitlement:

  1. 选择应用
  2. 选择活动"
  3. 选择构建
  4. 向下滚动到商店信息",右栏显示权利.

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

The com.apple.developer.team-identifier matches the prefix in the application-identifier. The latter matches exactly with the value in the apps array in the apple-app-site-association file on our website.

但是,在执行 Build &在设备上使用 Xcode 运行,调试应用程序是 使用不同的签名身份签名:

However, when performing Build & Run with Xcode on device, the debug app is signed with a different Signing Identity:

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

Apple Development: (other ID than com.apple.developer.team-identifier)

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

An estimated guess is that this would create a mismatch with the apple-app-site-association file. Hence we added this new id to the existing apple-app-site-association file and uploaded on our server:

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

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

Tried again, still the same error. Also performed the usual stuff like:

  1. 从 iPhone 上卸载应用并重启 iPhone
  2. 在 Xcode 中清理构建文件夹
  3. /Users/xxx/Library/Developer/Xcode 中删除 Xcode 文件夹 DerivedData 并重新启动 MacBook
  1. Uninstall app from iPhone and reboot iPhone
  2. Clean Build Folder in Xcode
  3. Delete Xcode folder DerivedData from /Users/xxx/Library/Developer/Xcode and rebooted MacBook

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

Availability of apple-app-site-association file

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

While updating this file on our server, we found a docu update. In June 2019 (when we launched this particular app) it mentions to place the file in 2 folders:

  • https://<完全限定域>/apple-app-site-association
  • https://<完全限定域>/.well-known/apple-app-site-association

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

Note: Currently only the later .well-known directory is mentioned.

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

It appeared that our file was only in the first folder. So we duplicated it and checked again, but still the error is shown.

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

To rule out that it takes time for iOS 14 to update changes of the apple-app-site-association file based on the new Apple-managed content delivery network (CDN), we even used the mode option in the entitlements file:

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

While you’re developing your app, if your web server is unreachable from the public internet, you can use the alternate mode feature to bypass the CDN and connect directly to your private domain. You enable an alternate mode by adding a query string to your associated domain’s entitlement as follows:

webcredentials:doamin.com?mode=developer

再一次,没有运气.

TestFlight 版本

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

To avoid using Xcode debugger and it's debug signing, archived the Xcode 12.2 build and submitted it to App Store. Verified the entitlements from the build in App Store Connect as described above. They match the apple-app-site-association file.

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

Released for internal TestFlight testing and tested on device. Tapping the first password text field does not show the password suggestion.

结论

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

Although we seem out of options, hopefully any of these exercises can inspire others to identify a solution. Or it's just a massive Apple bug and we need to wait for a fix from them.

这篇关于无法显示应用程序 bundleID 的自动强密码的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆