Xcode可执行文件使用无效的权利签名

时间:2015-03-02 13:54:13

标签: ios iphone xcode

我会使用Xcode在我的手机中安装一个应用程序,但是没有安装,但后面出现错误信息。

  • 错误消息
    “可执行文件是使用无效的权利签署的。 应用程序的代码签名权利文件中指定的权利与您的供应配置文件中指定的权利不匹配。 (0xE8008016)“


  • 询问事项
    1. 为什么安装应用程序时会出现错误消息?
    2. 你能不能介绍一下这个问题的解决方案吗?

15 个答案:

答案 0 :(得分:27)

检查您是否在Build Setting>中使用Entitlement文件;代码签名部分。 如果是,请尝试删除该文件名。

答案 1 :(得分:8)

您使用错误的配置文件在设备上构建应用程序,请确保使用正确类型的配置文件。我正在使用App Store部署配置文件在设备上构建。使用ad-hoc配置文件或开发配置文件在您的设备上构建。

答案 2 :(得分:7)

您使用的是权利文件

权利文件定义了您应用的某些功能。通常,当您为应用启用功能时,Xcode会自动生成该文件。如果您启用了某些功能,则只需要该文件,例如Healthkit集成。如果您想使用这些功能,则必须添加它。否则,Apple将拒绝您的应用。

解决此问题

  • 转到目标的构建设置。
  • 确保选择“全部”而不是“基本”
  • 在搜索框中输入“权利”
  • 结果是构建设置,您可以在其中指定您的位置 权利文件位于
  • 删除它们

您使用了错误的配置文件

配置文件是一组数字实体,它们将开发人员和设备与授权的iPhone开发团队联系起来,并使设备可用于测试。必须在要运行应用程序代码的每台设备上安装开发配置文件。

  • 转到构建设置>代码签名>供应资料
  • 在团队
  • 下选择开发资料

请确保项目,目标和测试中的团队是相同的。

捆绑标识符和应用ID不匹配

  • 转到目标的构建设置
  • 选择打包并更改您的App ID以匹配Bundle ID

清除Xcode中的缓存

Command-Option-Shift-K清除构建文件夹。更好的是,退出Xcode并手动清除〜/ Library / Developer / Xcode / DerivedData。

答案 3 :(得分:6)

您使用的是错误的配置文件,即用于开发的分发。转到构建设置>代码签名>配置配置文件并选择开发配置文件。

答案 4 :(得分:4)

检查您的"代码签名" " PROJECT> Build Settings"和" TARGETS>构建设置"。

个人而言,我用于两者:

 - "Code Signing identity": iOS Developer 
 - "Provisioning Profile" : Automatic

答案 5 :(得分:3)

检查你的"团队"目标参数。它应该与您的项目和测试相同。

答案 6 :(得分:3)

对我来说,上述答案都没有奏效。我试图从Keychain中删除每个代码签名证书并构建应用程序。当我为目标解决所有与代码签名相关的错误时,我仍然在测试目标中有一些错误。它之前由我的团队中的其他人设定。我刚刚切换到iOS Developer,无效的权利错误消失了。

答案 7 :(得分:1)

我遇到了这个问题,我的问题是我的捆绑标识符和AppID不匹配。请在Build Settings中更改Bundle Identifier - >像AppID一样打包。

enter image description here

答案 8 :(得分:0)

只需转到已下载配置文件的Apple开发人员门户网站即可。

选择您的个人资料,单击编辑并检查是否选择了所有证书。

在我的情况下,选择所有证书并下载新的配置文件解决了上述问题。

答案 9 :(得分:0)

还要确保在您的架构中设置了#34;构建配置"在大多数情况下" Debug"。

答案 10 :(得分:0)

在CI过程中使用App Store配置错误导出ipa时出现此错误。我的意图是使用Adhoc配置进行导出。

答案 11 :(得分:0)

我有同样的错误。我的问题是我检查了“启用HealthKit”#39;在Entitlements.plist中,但是在创建App Id时我没有启用HealthKit。

简而言之,应在您使用的配置文件中配置应用中的所有权利(项目中的Entitlements.plist文件)(配置配置文件=应用ID +证书+有关您的应用可以运行的设备的信息)。

答案 12 :(得分:0)

从一天到下一天,我的项目突然出现了同样的问题。

为我修复的原因是为两个目标关闭“自动管理签名”,并确保在再次打开时选择了正确的开发团队(在我的项目中默认为无)。

答案 13 :(得分:0)

将应用程序从一个帐户转移到另一个帐户后,我遇到了这个问题。我尝试了其他人提供的所有解决方案,这些解决方案在其他情况下可能是正确的。但是我通过转到文件->工作区设置->构建系统并选择“旧版构建系统”解决了该问题。我正在使用XCode 10.3。

答案 14 :(得分:-1)

这似乎是一个简单的解决方案,但我解决了更新iPhone的iOS版本的问题。

我看到的所有答案都只谈论xcode更新。这很奇怪,因为我的旧iOS版本是iOS 13.3.3,并且可以在另一台装有iOS 13.6的iPhone上使用。更新到iOS 13.7后,它开始工作。