找不到与应用程序标识符匹配的有效供应配置文件

时间:2013-04-22 19:58:33

标签: xcode device provisioning portal

以前曾经问过,但之前问题的答案并没有解决我的问题。

我正在尝试从斯坦福iTunes U课程中构建一个名为(CalculatorBrain)的简单Hello World应用程序。我可以在模拟器中运行它,但我想在iPhone 4S上运行它。

我在Windows机器上通过iTunes同步我的iPhone 4S。一直有。想我应该列出这个细节。

无论如何,回到我的Macbook(Mountain Lion)。我正在运行最新的XCode 4.6.2(4H1003),而我的iPhone也是最新的6.1.3我认为。

我在Apple开发者页面上访问了Provisioning Portal。我加了我的4S。我叫它约翰史密斯,并给它手机UDID。

在XCode中,我打开了管理器,默认情况下会突出显示设备。我把密码放在iPhone上,然后把它插入我的Macbook。设备找到我的iPhone。如果我单击“配置配置文件”并尝试“将设备添加到配置门户”,我会收到“此团队中已存在号码的设备”。大。我知道它肯定会被添加。到目前为止所有的好消息。

在我的Hello World应用程序中,我的Bundle Identifier的CalculatorBrain-Info.plist是“com.JohnSmith.CalculatorBrain”。如果重要,捆绑显示名称为“$ {PRODUCT_NAME}”,可执行文件为“$ {EXECUTABLE_NAME}”。

在导航器中,如果我突出显示我的项目,并调出构建设置,在代码签名身份下我会得到选项......

不签署代码

自动配置文件选择器 - iPhone开发者 - iPhone发行版

没有配置文件的身份 - iPhone开发人员:John Smith(R ............ K) - iPhone发行:John Smith(Y ............. 5)

其他...

我已经尝试了所有这些。我假设我应该使用iPhone开发人员:约翰史密斯一个...但它说这是一个没有配置文件的身份。

这里发生了什么?我需要做些什么才能让它发挥作用?

4 个答案:

答案 0 :(得分:39)

根据您的描述,听起来缺少的元素是您需要返回“证书,标识符和配置文件”。工具,为您的HelloWorld应用程序的AppID生成开发配置文件,然后在您的开发计算机上安装该配置文件。在较高的层面上,这包括以下步骤:

  1. 在Xcode中找到项目的AppID。
  2. 确认您已在“证书,标识符和个人资料”中设置了该AppID。
  3. 为该AppId,您的开发证书以及一个或多个已注册的测试设备创建开发配置文件。
  4. 在Xcode中下载并安装配置文件。
  5. 使用此配置文件和链接代码签名标识将项目配置为代码签名。
  6. 构建设备!
  7. 代码签名身份&#39;您提到的构建配置项非常依赖于项目的设置以及开发计算机上可用的Provisioning Profiles。我最近回答了一个与切线相关的问题'What are code signing identities?',这可能有助于查看代码签名使用的信息以及如何检查您是否已经开发机器设置以便能够对您的项目进行代码签名。< / p>

    ...现在,更具体的HOWTO帮助您完成代码签名问题:

    找到项目的AppID

    AppID在iOS生态系统中唯一定义应用程序,是您在启动新Xcode项目时首先创建的内容之一。此AppID是您在“证书,标识符和配置文件”中注册所需的内容。开始使用配置的工具。

    Xcode AppId Setting

    1. 在项目导航器(CMD + 1)中,单击您的项目名称(可能是&#39; CalculatorBrain&#39;)。这将显示项目的设置。
    2. 选择[您的项目名称]&gt;摘要选项卡,如上面的屏幕剪辑(MyiOSApplication)所示。
    3. 您的iOS AppID显示在&#39;捆绑标识符&#39;领域。抓住这个字符串的副本,接下来你需要它。
    4. 验证(或设置)AppID

      1. 导航至http://developer.apple.com/ios并访问“证书,标识符和个人资料”&#39;工具。
      2. 登录后,选择&#39; Identifiers&#39;。
      3. 检查您在上一部分中找到的AppID是否出现在应用程序标识符列表中。如果是,请记下应用程序ID名称并跳到下一部分,否则......
      4. 点击&#39;添加&#39;右上角的(加号)按钮,提供此应用程序ID的名称(可以是任何您想要的,只要它没有特殊字符。)
      5. 滚动到页面底部,然后粘贴“捆绑ID”中上一部分的App ID副本。领域。在&#39;明确的应用ID&#39;。
      6. 点击“继续”
      7. 请注意,AppID在iOS生态系统中必须是唯一的 - 如果您选择的AppID已被使用,则可能会出错。如果是这样,请更改您的套件ID&#39;独特的东西 - 只需确保更新&#39;捆绑ID&#39;在Xcode项目中进行设置以匹配您所处理的任何内容。

        创建开发配置文件

        现在App ID已注册,您现在可以创建一个开发配置文件,将您的App ID,开发证书和测试设备ID链接在一起。

        1. 在证书,身份,档案中&#39;工具,导航到“配置配置文件”。
        2. 点击&#39;添加&#39;右上角的(加号)按钮。
        3. 选择iOS应用开发&#39;在&#39;选择类型&#39;单击,然后单击“继续”。
        4. 从应用ID的下拉列表中选择您的应用ID,然后点击&#39;继续&#39;。
        5. 选中开发证书旁边的框,然后点击“继续&#39;。
        6. 选中要授权安装此应用的测试设备旁边的框,然后点击“继续”。
        7. 输入个人资料名称(再次省略特殊字符),然后点击“生成”。
        8. 下载并安装配置文件

          生成配置文件后,该工具将为您提供可下载的链接

          1. 点击&#39;下载&#39;下载配置文件。链接。
          2. 从下载位置拖动配置文件,并将其放在Xcode Dock图标上,或双击打开它。
          3. 配置代码签名标识

            听起来你已经知道它的位置,但以防万一:

            1. 在项目导航器(CMD + 1)中,单击您的项目名称(可能是&#39; CalculatorBrain&#39;)。这将显示项目的设置。
            2. 选择[您的项目名称]&gt;构建设置选项卡。
            3. 滚动到“代码签名身份”&#39;项目
            4. 理论上,您希望使用自动配置文件选择器&#39;将尝试将AppID与已安装的Provisioning Profile匹配的选项,但您也可以滚动列表并选择Bundle ID / AppId到iOS Certificate的特定映射。

              此外,我自己的Xcode似乎并不总是能够接受对新安装的配置文件的更改 - 目前还不清楚这是否只是我自己的Xcode安装的一个怪癖,或者Xcode中是否存在错误。无论哪种方式,退出和重新启动Xcode似乎都会触发配置文件的重新索引/刷新。

              无论如何,选择与您的AppId / BundleId和您的开发者证书匹配的选项。

              假设问题是缺少/不完整/已过期的供应配置文件,那么这应该有助于您启动并运行。如果没有,我们将不得不深入研究可能会扼杀您的代码签名操作的其他潜在设置或证书问题。

答案 1 :(得分:6)

我有类似的问题,尝试了代码签名的每个选项,我的实际解决方案是: - 重启Xcode - 转到“Window-&gt; Organizer” - 然后“编辑”和 - “从Developer Portal刷新” 然后我在“运行”和“停止”按钮旁边的“将活动方案”设置为“iPhone(Petri)”。

答案 2 :(得分:1)

请确保选中目标而不是项目。

make sure Targets is selected

答案 3 :(得分:1)

enter image description here在我的情况下,设备有3个同名的配置文件。在开发期间,我更新了配置文件几次,每次将新的更新配置文件添加到设备而不删除旧配置文件。所以xcode在那一刻搜索了第一个提供的配置文件错误,并在我的脸上抛出了错误。 那么,你应该怎么做:

  1. 打开“设备”窗口(Cmd + Shif + 2)
  2. 搜索您的设备并选择它
  3. 在左下角按“设置”按钮
  4. 按“提供资料”
  5. 搜索dublicates。我找到了3项具有相同名称的配置文件
  6. 删除了除最新的
  7. 以外的所有内容