2010-05-26 45 views
0

我遵循Apple关于如何创建Ad Hoc Distrubution软件包的说明,但我一直在构建过程中看到似乎是致命警告。按照说明,我将签名标识设置为目标(而不是项目)中的发布配置文件,创建了我的Entitlement.plist文件并取消选中get-task-allow,将此文件链接到我的目标并在分发中运行构建用于设备模式。为Iphone App构建Ad Hoc Distribution Bundle时获取授权警告

当我这样做,构建完成成功,但只有在给出以下警告后。

[WARN]CodeSign warning: entitlements are not applicable for product type 'Application' in SDK 'Device - iPhone OS 3.1.2'; ignoring... 

在构建的最后一步是在协同设计和我已经注意到,尽管其运行没有任何错误,它缺少的是上苹果官方的指令手册中的--entitlement命令行选项。

这里是我的协同设计线

/usr/bin/codesign -f -s "iPhone Distribution: My Name" --resource-rules=/Volumes/Data/projects/xcode/MyAppName/build/Distribution-iphoneos/MyAppName.app/ResourceRules.plist /Volumes/Data/projects/xcode/MyAppName/build/Distribution-iphoneos/MyAppName.app 

这里是苹果的一个什么样的预期屏幕截图。

here http://devimages.apple.com/iphone/images/portal/overview/BuildLog.jpg

是否有人可以帮助我弄清楚,如果这是我做错了,因为很多我的沮丧,甚至在苹果开发论坛上对这一协同设计警告信息非常少。

回答

0

胜利!我尝试了一切,包括从头开始重建我的项目,但我无法完成这项工作。我升级到Xcode 3.2.2,打开相同的项目,并做了一个构建,并立即工作。我希望苹果有更好的文档说明他们在线上的指示是否适合xcode的版本。无论如何,我希望这会让一些人不得不经历过去几天的痛苦。

+0

这很奇怪。这些与我在3.2.1中使用的步骤相同,但我很高兴它现在对您有用。保持最新状态总是很好的。 – 2010-05-28 16:10:14

+0

Hey Cory。我相信我有Xcode 3.1.2,因为自去年1月以来我没有升级过。 – Nefsu 2010-05-28 17:11:14

1

我在相当长的一段时间里还没有阅读官方指南,现在并没有真正想要找到它,但让我们通过我的清单。我怀疑你的问题是在数字5-7左右。

  1. 请求获得特殊分发证书并且已获得批准。
  2. 为适当的设备ID和应用程序ID创建Ad Hoc分配的供应配置文件。
  3. 在您的计算机上安装了证书和配置文件。
  4. 为您的目标创建一个新的“Ad Hoc”构建配置(不是必需的,但很好保持干净)。这可以通过复制发布来完成。
  5. 将一个Entitlements.plist文件添加到您的目标。
  6. 未勾选上述权利文件中的“get-task-allow”。
  7. 在Ad Hoc配置中的“代码签名授权”构建设置中输入Entitlements.plist文件名。
  8. 在Ad Hoc配置中的“代码签名标识”构建设置下的“任何iPhone OS设备”中选择适当的Ad Hoc置备配置文件。
  9. 构建。

嗯,我认为就是这样。我错过了什么吗?

+0

那么,这听起来是正确的。我唯一要改变的是第8步,我实际上将“代码签名标识”下的“任何iPhone OS设备”项目设置为我的分发配置文件,而不是“代码签名标识”本身。我非常沮丧,因为我已经完成了三次这些步骤。我的意思是,我删除了我的公钥/私钥,删除了我的证书,删除了我的配置文件并启动了三次。我不断收到相同的错误。 – Nefsu 2010-05-26 08:16:26