【问题标题】:Xcode iOS Development signing identityXcode iOS 开发签名身份
【发布时间】:2015-05-24 22:10:34
【问题描述】:

我在将 iOS 开发签名身份导入 Xcode 时遇到问题。我已经尝试了很多方法来让它工作,但我一直失败。

我采用了自动方式,让 Xcode 完成所有工作,但我一直在 Xcode 不断说的圈子里转:

未找到签名身份。 Xcode 可以请求新的 iOS 开发 为您签署身份。

接着是:

您的帐户已经有一个有效的证书。如果你有你的签名 在另一台 Mac 上,您可以导入开发人员配置文件。你可以 也撤销当前证书并再次申请。

我做了很多步骤:

  • 从 Xcode 的首选项中删除我的帐户。
  • 从钥匙链应用程序中删除所有内容。
  • 从开发者会员中心(苹果开发者网站)清除所有内容
    • 删除所有配置文件
    • 删除了我的设备
    • 撤销了我所有的证书
  • 重新启动 Xcode 以从“产品”菜单执行“清理”项目。
  • 甚至进入我的 project.pbxproj 文件以清除与 PROVISIONING_PROFILE 相关的任何内容
  • 从我的设备中删除了所有配置文件。

之后我又回到了 Xcode:

  • 将我的帐户添加到首选项部分
  • 点击查看详情
  • 刷新了
  • Xcode 自动创建两个证书
  • Xcode 自动创建配置文件
  • Xcode 仅创建一个签名身份:仅适用于 iOS 分发。 这是我的问题:我无法获得 iOS 开发签名身份。

在没有让它工作后,我采用了老式的手动方式:

  • 首先清除上述所有内容
  • 手动创建新证书,下载它们并将它们添加到密钥链应用程序中。
  • 手动创建新的配置文件,下载它们并将它们放到 xcode 应用程序图标上。 最后结果是一样的;当我在 Xcode > 首选项 > 帐户 > 查看详细信息时:
  • 我确实有分发签名身份
  • 我没有开发签名身份

当我单击“签名身份”下的 + 按钮并选择“iOS 开发”时,没有任何反应..

我在 StackOverflow 上找到了很多帖子,我尝试了他们的建议,但对我不起作用。其他帖子的例子: hereherehere

我正在使用最新版本的 Xcode:6.2。 我正在开发一个已经在 App Store 中的应用。

已编辑: 我还将我的项目和目标的代码签名构建设置更改为 Don't code sign 并将其放回 iOS Distribution for ad-hoc 和 iOS调试开发

【问题讨论】:

  • 您是否还在门户中创建了新的开发证书(手动)?我想我看到了你在 XCode 中尝试过的地方,但想确定一下。包含您的开发门户、XCode 和钥匙串访问的屏幕截图也可能会有所帮助。请屏蔽敏感信息。
  • @Dan,感谢您的回复。是的,我试过自动和手动,结果是一样的。我已按您的要求添加了一些屏幕截图。还有什么我可以添加的或您需要提供帮助的其他信息吗?
  • 您将新证书绑定到配置文件中?
  • 是的,证书已链接到他的新配置文件。

标签: code-signing provisioning-profile ios-provisioning code-signing-certificate xcode-6.2


【解决方案1】:

与 Apple 开发者论坛上一位非常有帮助的人一起,我们试图解决这个问题。

我被它不起作用蒙蔽了双眼,从未想过尝试构建另一个项目并看看它是否可行。我完全专注于我在会员中心的证书和个人资料以及我在 xcode 中的帐户详细信息。 当我确实尝试构建另一个(随机)项目时,它一次就成功了。这告诉我们它一定与 xcode 无法编码签名的特定项目的 构建设置 有关。

最后,在 xcode 中,我转到了我的 TargetBuild Settings。在 Code Signing 部分中,我将 Any iOS SDK 的值更改为指向特定的 Identity in my Keychain 而不是让它们自动( iOS 开发者/iOS 分发版)。 这解决了我的问题,我能够构建/部署到我的设备,并且能够将新构建上传到 iTunes Connect。

【讨论】:

  • 对我不起作用。我敢打赌,证书和设置的组合正在发生。嘘。
【解决方案2】:

这需要很长时间,我们完成了上述所有解决方案,但它们根本不起作用,因此我们的团队决定删除 Pod 文件并再次运行 pod install。最后,我们的OTA上传了安装在用户设备上的ipa。 最佳解决方案

  1. 清理项目menu > Product > Clean Build Folder/Users/{you user name}/Library/Developer/Xcode/DerivedData
  2. 进入你的项目目录并删除Podfile.lock,Pods 文件夹,pod_***.framework
  3. 再次运行pod install

【讨论】:

    【解决方案3】:

    Brabbeldas,这些构建设置更改是否最终使 iOS 开发人员证书显示在 Xcode > Preferences > Accounts >(您的帐户)> View Details > Signing Identities 窗格中?

    昨天(3 月 26 日)下午 2:30 左右解决了一个临时证书生成问题,该问题将缺少的组织单位字段恢复到同样表现出此症状的 iOS 开发人员证书(帐户中缺少开发人员证书 > 查看详细信息 > 签名身份窗格)。

    如果它仍然丢失,您可能仍会受到此问题的影响。要确认,请在 Keychain Access 中双击您的 iPhone 开发者证书。如果证书缺少其组织单位字段,问题仍然存在。如果您的组织单位字段存在,那就没问题了。组织单位应设置为您的团队 ID 的值。

    这个问题的全部症状是:

    • iOS 开发人员证书要么显示为Revoked,要么根本不显示在“首选项”>“帐户”>(您的帐户)>“查看详细信息”>“签名身份”窗格中。
    • 使用证书签名的框架无法加载dyld: Library not loaded: [your_signed_framework]

    由于证书服务器问题现已修复,请通过以下方式解决问题:

    1. 在网站上吊销受影响的开发者证书
    2. 在 Xcode > Preferences > Accounts > (your account) > View Details 中单击“⟳”按钮
    3. 在网站上重新生成任何自定义开发人员配置文件,下载并安装到 Xcode 中

    作为诊断签名框架问题的另一种方法,请使用codesign -dvvv your_signing_framework.dylib。对于受影响的证书,TeamIdentifier 字段将为 not set,而不是您的团队 ID。

    【讨论】:

      猜你喜欢
      • 2015-12-25
      • 2016-05-25
      • 1970-01-01
      • 1970-01-01
      • 2016-04-13
      • 2018-04-28
      • 2014-10-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多