添加组后,键盘扩展无法再提交到 iTunes

Posted

技术标签:

【中文标题】添加组后,键盘扩展无法再提交到 iTunes【英文标题】:Keyboard Extension can no longer submit to iTunes after adding groups 【发布时间】:2015-08-05 19:19:31 【问题描述】:

我正在创建我的第二个键盘扩展应用。我已经通过 iTunes TestFlight 提交了几个月的测试,没有任何问题。但是做了两次修改后,就不再提交了。我收到错误消息“无法找到或生成匹配的签名资产,并且由于以下问题而无法这样做。

“为“Applications/spkapp.app/Plugins/spk.appex”找到不匹配的配置文件

没有一个有效的配置文件允许指定的权利:beta-reports-active、com.apple.security.application-groups"

我所做的两项更改是对捆绑显示名称和添加组权利。我的扩展程序和应用程序 ID 都激活了组并设置为同一个组。

我试过了

1) 将 Bundle 显示名称恢复为以前的名称。

2) 数十次重建所有配置文件

3) 从头开始​​创建新的配置文件。

4) 在 Xcode 中刷新配置文件,甚至下载并安装新配置文件并手动删除旧配置文件。

5) 清理/删除派生数据/重启Xcode/重启OSX

6) 将它与我使用组权利的发货键盘进行比较。从权利文件到项目设置到配置文件再到 App ID 设置,一切都匹配。

我认为问题显然与组有关,因为它是新添加的。但我确实查看了技术问答 QA1830,但它似乎没有帮助,因为我有一个商店配置文件并且它正在工作,所以 beta-reports-active 标志似乎是一个虚假错误。

还有其他建议吗?

【问题讨论】:

【参考方案1】:

原来问题是由添加组权利引起的。 Xcode 为您的键盘扩展创建一个自定义应用 ID,名称以“Xcode ios App ID”开头,后跟您的捆绑包 ID。 App ID 本身将是您的应用程序/扩展程序的组合捆绑包 ID,作为 App ID,例如 com.companyname.appBundleID.extensionBundleID。它的设置将与您的其他 AppID 匹配,包括应用组设置。

它还将为此 App ID 创建分发配置文件,您需要此分发配置文件才能在启用组的情况下提交到商店。分发配置文件将命名为“XC: com.companyname:appBundleID.extensionBundleID”。如果在您提交到商店时未安装此插件,您将收到错误消息,即您的插件没有正确的配置文件以及如上所述的组权限。

注意:我可以在禁用组权利的情况下提交故事,所以似乎只有在您启用特定权利时才需要此配置文件。

就我而言,我不知道 Xcode 是否忽略了创建分发配置文件,或者我在尝试清理时删除了它。为了修复它,我刚刚为 Xcode App ID 创建了自己的分发配置文件并以相同的方式命名,并确保它安装在 Xcode 6.1 中(首选项:Apple ID 查看详细信息:刷新按钮)。现在我的键盘可以正确提交,并且组权限处于活动状态。

【讨论】:

以上是关于添加组后,键盘扩展无法再提交到 iTunes的主要内容,如果未能解决你的问题,请参考以下文章

iOS 8 键盘扩展 - UIInputViewController 无法添加多个视图 [关闭]

将项目添加到 Django 中的元组元组后是不是可以重新启动服务器?

将 [(ngModel)] 添加到单选按钮组后,默认的 [checked] 不再起作用

8.3 后无法在 Spotlight 中使用键盘扩展

Python 模拟键盘 粘贴内容 无法粘贴中文汉字

将 Azure VM 移动到新资源组后的备份问题