澄清有关配置配置文件的问题&我的具体问题

时间:2010-09-25 10:25:01

标签: iphone provisioning

我遇到了一个严重的问题,让我的一个应用程序在其他人的iPhone上运行。我的另一个应用程序工作正常,所以我想我在某种程度上能够做到正确。

我已经尝试了很多不同的东西,基于谷歌搜索,但有太多的排列。现在是我了解实际情况的时候了。当我深入研究文档时,我有几个问题,希望这里的一些人可以为我澄清:

  1. 我注意到我可以在项目上设置权利和代码签名设置(双击群组和文件中的顶部项目,其中包含项目名称)和目标(在目标下) ,双击您的项目名称)。这两者有什么区别?我知道,对于标题路径,一个人倾向于覆盖另一个(当然没有警告......)。

  2. 当我选择“构建和存档”(顺便说一句非常酷的功能)时,再次允许我对代码进行编码。这有什么区别?

  3. 许多论坛都指向Entitlements.plist中名为“get-task-allow”的设置(需要将其设置为false)。但是,当我在XCode中创建权利文件时,没有这样的行。这是否意味着Apple修复了该错误/功能?

  4. “代码签名识别”和“任何iOs设备”之间有什么区别?

  5. “开发”和“分发”之间的配置门户有何不同?

  6. 在同一个门户网站中,当您创建新的配置文件以进行分发时,Ad Hoc和App Store之间有什么区别?我听过有人说(我相信我过去也经历过这种情况),你也可以使用App Store配置文件进行Ad Hoc发布(也许不是相反)。然后,这可能是由于我的混淆,如果XCode同时使用多个配置文件,所以不清楚哪个配置文件正在做什么。

  7. 我的情况:

    我正在使用带有SDK 4.1的XCode 3.2.4。该应用程序在我自己的手机上运行正常(这实际上使调试更加困难)。我的朋友不断变化的错误从“权利无效”到0xE8003FFE和0x800ccc0e不等,具体取决于我发送的内容。一个拥有iPhone 3G,另一个拥有iPod touch。两者都运行iOS 4.1并且没有被监禁。两者都没有打开“限制”。

    我有两个应用程序: * com.isimplifiedchinese.teacher * com.isimplifiedchinese.student

    我能够通过构建设备来分发学生应用程序,然后手动创建.ipa文件(在我了解Build& Archive功能之前)。我无法使用Build& amp;归档功能。但我想专注于教师应用程序,我根本无法以任何方式分发(即使它在过去,在我开始更改之前有效)。

    在我的配置文件中,我(对于教师应用程序): *一张开发证书 *一份分发证书 *包括我自己和这两个朋友的设备列表 *开发的配置文件(与我和我的两个朋友一起) *配送配置文件(与我和我的两个朋友一起)。它配置为“App Store”(但我过去也试过“Ad Hoc”,尽管其他地方的选项可能略有不同)

    所有个人资料仍然有效。它们都列在XCode Organizer中,似乎是最新的。

    部署设置为Device 4.1 - Ad hoc。在项目和目标构建设置上: *我在“代码签名权利”中添加了“Entitlements.plist”。 *代码签名标识设置为自动选择器,指向我的iPhone分发证书和应用程序的App Store配置文件。 *任何iOS设备都设置为我的iPhone开发人员证书(它没有设置为自动,因为如果我这样做,它指向我的学生应用程序的配置文件)。

    当我选择Build and Archive然后选择Share Application时,我将Identity设置为iPhone Distribution(与iPhone Distribution - App Store匹配)。

    我经常,但不是始终如一,在我的挣扎期间使用了清洁所有目标

    另一件可能相关或不相关的事情:我开始使用教师应用程序,过了一段时间克隆并将克隆重命名为学生应用程序。学生应用程序使用教师应用程序中的共享库,但不是相反。

    毋庸置疑,这里有太多的排列和太多的魔法(从我的观点来看)。希望你能帮助我更好地理解这个系统,或者神奇地指出我正确的方向,所以我再也不用担心了。

1 个答案:

答案 0 :(得分:1)

确实有很多问题......有些答案:

Q4。代码签名标识是条目的名称,可以包含多个子条目:您可以为每个可能的平台使用不同的标识进行签名。例如。您使用身份X签署iOS 3.2设备,并使用身份Y签署iOS 4设备。

Q5。开发与分发:当您开发应用程序时,您使用开发配置文件对其进行签名,以便授权设备接受它,当您准备部署应用程序时,您使用您的分发配置文件对其进行签名,只有App Store才会接受。 Apple然后在应用程序上应用自己的签名,以便任何设备在从应用程序商店下载时都会接受它。

Q6。应用程序商店分发用于通过Apple的App商店销售您的应用程序,而Ad Hoc分发用于通过“自己的企业应用程序商店”分发您的应用程序,您的应用程序在App Store上不可用。