在提交Mac Catalyst应用程序时,ITMS-90283错误,“ com.apple.application-identifier'权利值无效”

问题描述 投票:1回答:2

我正在尝试首次提交Mac Catalyst应用,但上传失败,并显示以下错误消息:

错误ITMS-90283:“无效的配置文件。捆绑在maccatalyst.com.arlomedia.setlistmaker [maccatalyst.com.arlomedia.setlistmaker.pkg / Payload / SetListMaker.app]中的配置文件无效。[无效的'com .apple.application-identifier的权利值。]有关更多信息,请访问macOS开发人员门户。“

如果我手动或自动签署应用程序,就会发生这种情况。通过手动签名,我有了一个新的macOS App Store配给配置文件,该配置文件是使用关联的iOS应用程序ID作为Mac Catalyst配置文件创建的。这在配置门户中显示为有效,并且可以在选择此配置文件的情况下很好地构建(归档)该应用程序:

Xcode signing settings

[当我在Xcode组织器中进行提交过程时,每次都必须“导入”配置文件(我下载了配置文件,然后在这里选择下载的文件),这很奇怪:

enter image description here

但是选择文件后,我可以单击其信息图标,并且一切看起来都正确:

enter image description here

然后我继续上载,并且进度条到达末尾时,将显示错误并且提交失败。

错误消息表明应用程序标识符有问题,但是我已经在所有可以找到它的地方进行了检查,并且看起来正确。我正在使用自动派生的捆绑包ID,该ID在我的iOS捆绑包ID上加上“ maccatalyst”前缀。在某些显示此位置的位置,该ID还会以预配置门户中的app Identifier记录中的App ID Prefix为前缀。上面的屏幕截图显示了App ID的最后一个字母,但是我认为这只是Xcode中的显示;如果我打开配置文件,则会列出完整的ID。

我同时有另一个正在开发的应用程序,能够成功提交。我打开了两个项目的已存档的.app文件,并比较了嵌入式配置文件,唯一的不同是我期望的事情,例如应用程序名称和导出时间。应用程序标识符和捆绑包ID的格式相同,带有正确的应用程序前缀。我还比较了两个应用程序的info.plist文件,也没有发现任何明显的不同。另一个应用程序还要求我在提交过程中选择配置文件,所以这似乎不是问题(尽管在我的iOS提交中,配置文件名称会自动显示在此处)。

当我打开自动签名时,将跳过一些上传步骤,但是在上传结束时会收到相同的错误消息。如果我使用Xcode组织者中的Validate App按钮而不是Distribute App按钮,则我将执行相同的步骤并获得相同的错误消息。

我已经比较了两个ID的应用ID和配置文件的设置,签名设置,构建设置,iTunes Connect中的“应用信息”页面...所有设置都以相同的方式进行。有人知道我还要检查什么吗?

xcode app-store maccatalyst
2个回答
0
投票

我找到此文档:

Technical Q&A QA1710: Why do I get an "Invalid application-identifier Entitlement" error?

状态:

在现代版本的Xcode中,您不需要自己提供此权利的值,因此,只需从自定义Entitlements.plist中删除应用程序标识符权利,就可以避免错误。

Xcode基于Xcode项目的Target> Info选项卡中定义的Bundle Identifier属性为您构建应用程序标识符权利,因此必须在Xcode中设置正确的Bundle Identifier。

我没有任何一个问题,但也许会帮助其他收到此错误的人。


0
投票

我最终放弃了自动派生的“ maccatalyst”捆绑软件ID,并使用了自定义的捆绑软件ID,从而实现了这一目标。这是我采取的步骤:

  1. 在Xcode中,关闭“ Derive Mac Catalyst产品捆绑包标识符”构建设置。
  2. 编辑“产品捆绑包标识符”构建设置,并为macOS平台添加单独的捆绑包ID。 (屏幕截图1)
  3. 在iOS Provisioning Portal中,编辑关联的iOS应用的应用ID,然后关闭Mac Catalyst选项。
  4. 为Mac版本的应用程序创建新的应用程序ID,然后输入新的macOS捆绑包ID。
  5. 使用新的App ID创建新的开发和发行资料。创建配置文件时,这些配置文件必须是Mac Catalyst,而不是Mac。验证时,Xcode仅接受Mac Catalyst配置文件。 (屏幕截图2)
  6. [在App Store Connect中,编辑macOS应用程序记录,并将捆绑软件ID从maccatalyst ID更改为自定义ID。由于我尚未成功上传二进制文件,因此仍然可以编辑。

我的新个人资料现在在Xcode的“签名和功能”选项卡上显示为“合格”,但是在提交时它们不会在验证页上显示为选项。但是,与原始设置一样,我可以在此处单击“导入配置文件”选项,然后选择从配置门户下载的文件。

请注意,如果您不希望进行通用购买,这是要使用的设置。如果确实需要,则需要使用与iOS应用程序相同的捆绑软件ID,并且可能需要等到Xcode 11.4发布后才能使用该设置提交应用程序。我不确定,但是我确定您无法使用Xcode 11.4 beta提交应用程序,因为我已经尝试过了。 (屏幕截图3)

我没有尝试使用自定义包ID设置进行自动签名。我认为这可行,因为我认为问题与自动派生的捆绑软件ID有关。基本上,即将推出的Xcode 11.4和通用购买功能已弃用该功能,因此我怀疑Apple端的更改破坏了该捆绑软件ID样式的验证,可能仅在有限的情况下由于某些因素影响了我的应用程序,苹果也无法识别。

自定义捆绑包ID设置:Custom bundle ID settings

“配置文件不是'Mac Catalyst App Store'配置文件”:"Profile is not a 'Mac Catalyst App Store' profile"

无法从Xcode beta提交:Cannot submit from Xcode beta

© www.soinside.com 2019 - 2024. All rights reserved.