iOS应用与WatchKit目标:分发配置文件出现“可执行文件签名无效”的错误

4

有许多关于错误消息The executable was signed with invalid entitlements的SO帖子,当安装和运行分发版本以准备应用商店发布时。我尝试了许多答案都没有成功,我认为我的手表目标情况有些不同,因此可能需要额外的见解。

enter image description here

我的应用有三个目标:MyApp、MyApp WatchKit Extension和MyApp WatchKit App。它们分别创建了符合命名要求的应用程序ID:com.Company.MyAppcom.Company.MyApp.watchkitapp.watchkitextensioncom.Company.MyApp.watchkitapp
我们知道,为了使权限有效,与应用程序ID相对应的在苹果开发者会员中心启用的服务需要与Xcode中各自应用程序目标的功能相同。
问题是,watchkit应用程序目标的功能选项卡不包含会员中心列出的所有服务。例如,这是成员中心中MyApp Watchkit App的设置: enter image description here 请注意,默认情况下启用了Game CenterIn-App Purchase,并且无法禁用。(如果单击编辑按钮,您将注意到禁用选项已变灰)。
这是MyApp Watchkit应用程序目标的Capabilities选项卡: enter image description here 与主目标不同,仅在手表目标中提供了App Groups功能。因此,我无法在Xcode中启用Game CenterIn-App Purchase。WatchKit Extension目标具有更多功能,但仍然缺少Game CenterIn-App Purchase
过去,在添加手表目标之前,确保能力与Member Center中的匹配总是可以解决此问题。我认为这可能是我遇到授权错误的原因(只是猜测,甚至可能不是问题)。但是,这一次我似乎找不到解决方法,因为我无法在Member Center中禁用Game Center,也无法在Xcode中为手表目标启用它们。
我已经尝试过其他答案中的一些方法,但没有起作用:
  1. 从零开始,创建全新的应用程序ID和配置文件,在Xcode的Capability选项卡和会员中心应用程序ID设置中关闭所有功能,以确保它们匹配;删除所有旧的配置文件并重新下载,然后在Xcode的目标构建设置中设置正确的代码签名和配置文件。

  2. 更改应用程序ID的名称以匹配“XC com company myapp”的格式,在会员中心中进行。

  3. 退出、重启、清理和重建。

  4. 删除构建设置中的代码签名授权文件,就像许多帖子建议的那样。

2个回答

0

尝试打开应用程序组切换。
您的所有3个目标必须具有相同的应用程序组ID-因此还要在Apple Developer门户网站下检查您的凭据。


您好,如屏幕截图所示,所有应用程序组都已关闭;我没有使用任何应用程序组。 - SeaJelly

-2

我之前并没有为手表构建过应用程序。但据我所知,在开发者中心中,制作手表应用程序不需要单独创建应用程序。您只需创建主要的应用程序即可,这就足够了...


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接