权利无效:在设备上安装 Ad Hoc 构建时出错

Posted

技术标签:

【中文标题】权利无效:在设备上安装 Ad Hoc 构建时出错【英文标题】:Entitlements are not valid: Error while installing Ad Hoc build on Device 【发布时间】:2011-03-31 14:52:43 【问题描述】:

我为我的应用程序做了一个 Ad Hoc 构建。我试图在我的设备上安装它,但出现如下错误消息:应用程序 XXX 无法安装在设备 YYY 上,因为权利无效。在此之前,我使用同一台机器成功地进行了许多构建。但我不知道现在发生了什么。我搜索了很多解决方案。但是到处都是这样的解决方案:

    重启你的 iPhone 和机器 在代码签名权利上添加 Entitlements.plist。

我尝试了很多方法,但没有希望。如果您知道解决方案,请提供帮助。

【问题讨论】:

【参考方案1】:

确保您有一个应用程序图标。我在图标版本之间添加它为我解决了这个错误。

【讨论】:

【参考方案2】:

我很长一段时间都遇到同样的错误,直到我发现我的包标识符(在目标属性中)包含 10 个字符的应用程序 ID 种子本身。当我从那里删除它并添加到 entitlements.plist 'application-identifier' 时,我不再收到任何警告或错误。

希望对其他人也有帮助。

【讨论】:

【参考方案3】:

在 Lion 上升级到 XCode 4.5(发行版)后,我遇到了同样的问题,

选择您的目标并在摘要窗格中转到权利部分选中“权利”复选框并从下拉列表中选择您的目标,这将在您的项目中创建一个 TARGET_NAME.entitlements 文件现在进行清理并再次构建

看起来升级到 4.5 或从 4.5 降级会破坏分发配置文件的身份。

如果您在此之后在低于 4.5 的 XCode 中运行您的项目,您可能必须从您的项目中删除这个新创建的 TARGET_NAME.entitlements 文件。

希望这对某人有帮助:)

【讨论】:

【参考方案4】:

嘿,看看下面的链接。

这将解决您的问题。

在此链接中查看我的答案,它将对您有所帮助。

Ad-Hoc distribution - The application "<application name>" was not install on the iPhone "<iPhone name>" because the signer is not valid

如果您有任何疑问,可以在这里发表评论。

编辑:

您还创建了一个权利列表吗?

您需要创建它并将其添加到您的资源文件夹中。

您需要添加布尔类型的get-task-allow,其值为false

然后将 Entitlements.plist 添加为您的应用目标属性中的 Code Signing Entitlements

希望对你有所帮助。

【讨论】:

嗨,PARTH,我根据您的建议尝试了所有可能性。但没办法...我添加了布尔类型的 get-task-allow,值为 false,验证了您的配置文件是否正在通过设置安装-> 常规 -> 配置文件)和所有其他。这个问题是因为机器有任何错误吗?PARTH,请给我解决方案......我将非常感谢你...... 您也可以尝试从其他 MAC 在您的设备上安装。【参考方案5】:

@praveen 你使用的是什么版本的 Xcode?如果您使用的是 Xcode 4 here are some step by step instructions for making your ad hoc。 @PARTH 我已经有一段时间不需要编辑 Entitlements.plist 文件了,当你创建一个时创建的默认文件对我来说效果很好。

【讨论】:

【参考方案6】:

我发现了一些“有趣”的东西。升级到 Xcode 4 和 SDK 4.3 后,我开始收到警告“此捆绑包无效。应用程序标识符权利的格式不正确;它应该包含您的 10 个字符的 App ID 种子,后跟一个点,然后是您的捆绑包标识符”。将应用程序标识符添加到我的 dist.plist 文件中解决了这个警告,但随后应用程序将无法在 iTunes 上安装,并出现权利无效错误。 因此,在这种情况下,从您的权利 plist 中删除 application-identifier 键,即使它会给您一个警告。

【讨论】:

【参考方案7】:

我遇到了同样的问题并尝试了各种组合。我认为为我解决的问题是将 Entitlements.plist 文件放在我的项目的根目录中,而 not 放在资源文件夹中。

【讨论】:

【参考方案8】:

从 4.5 测试版之一降级到 Xcode 4.4.1 后恰好出现此错误。

似乎有些东西改变了选择的签名证书;将其重置为原始值可以解决问题。所以它与权利无关(我猜早期的签名失败没有被抛出,权利错误只是它遇到的下一个问题)。

【讨论】:

以上是关于权利无效:在设备上安装 Ad Hoc 构建时出错的主要内容,如果未能解决你的问题,请参考以下文章

无效的权利 iOS SDK 4.1

ios:Ad Hoc 应用程序安装到 iPad 而不是 iPhone

Ad-Hoc 分布式应用程序未安装在设备上

Ad Hoc 构建仅在设备上崩溃 - ASIHTTPRequest

从 Xcode 将 Ad Hoc 应用程序安装到设备需要重启手机

APN 未交付到 Ad-Hoc 构建