尝试在 Xcode 5 中验证我的应用程序时出现错误“没有可用于签名的身份”。我尝试了所有方法:重新创建证书和配置文件,所有在本网站和其他资源中描述的方法;我很困惑,因为当我尝试将我的应用程序作为 Ad-hoc 分发时,它成功地在测试设备上创建并安装了一个 IPA 文件。但是当我尝试验证我的应用程序或提交到 AppStore 时,我总是遇到错误。也许有人可以帮助我解决这个问题。
24 回答
您需要做的就是:
转到开发人员中心的证书、标识符和配置文件
在“Provisioning Profiles”/“Distribution”中创建一个新的配置文件
下载配置文件并打开它
重启 Xcode
请确保您使用的是分发配置文件,而不是开发。并且 Xcode 中的代码符号设置与分发配置文件兼容。
验证过程不适用于 Ad-hoc 配置文件。需要创建分发配置文件。Beta 测试说明中未指定。我苦恼了一整天,直到意识到。
使用应用程序加载器(Xcode -> 打开开发者工具 -> 应用程序加载器)。
另外 - 这个答案/问题也可能对您有帮助: https ://stackoverflow.com/a/18914073/730172
重新启动 Xcode 为我解决了这个问题!重新启动和/或清理解决了 99% 的所有问题...
Clean your Product Build Folder (with Alt button) Restart Xcode
It solved my same issue
@CainaSouza 上面的评论对我有用。我什至不必创建任何新的配置文件。
我只需要转到 Xcode > Preferences > Accounts > (Apple ID) > View Details 并点击刷新按钮。一两分钟后,它完成并加载了我的配置文件。我什至不必在我的项目选项中选择它,它已经选择了我最近生成的一个。
我有一个类似的问题。发现捆绑包标识符与 iTunes 连接上的应用程序 ID 不匹配 - 它的大小写不同。通过使标识符匹配来解决此问题。
我更新到 Maverick 和 Xcode 5 并遇到了同样的问题,即使我在 Profiles 中一切正常。我创建了一个新的分发配置文件(与旧配置文件相同),通过刷新配置文件添加它,问题在没有重建的情况下得到解决。
是的,appID 和包标识符必须匹配。请记住,它是区分大小写的。这对我来说是个问题。
如果您使用的是 Xcode 5.1 或更高版本(您现在可以使用),这对我有帮助:代码签名在 Xcode 5.1 + iOS 7.1 上被破坏
关键是删除 Mac 上的旧配置配置文件,然后从 Apple 网站创建一个新配置文件(使用不同的名称?)并下载它。看起来 Xcode 5.1 损坏了现有的配置文件,即使您再次重新下载它也无济于事。
在升级到更新的 Xcode 后,Apple 决定从他们的站点“神奇地消失”我的分发配置文件,这也给了我这个问题。
只有当我发现这个事实时,解决方案才显而易见!
-创建新的分发配置文件
- 下载并安装它/在帐户详细信息下刷新 Xcode 首选项
我的解决方案是进入开发中心,找到分发配置文件,它已经过期了。所以我点击了编辑,更新了它,下载了它,安装了它,在构建设置中选择了配置文件,它就可以工作了。
某人。
我在 Xcode 中的 Bundle Identifier 与 Developer.Apple.Com 上的 App ID (证书、标识符和配置文件)不匹配。这篇 StackOverflow 帖子对我有很大帮助。有关一些额外信息,请查看此博客文章。touch 命令的官方文档可以在这里找到。在执行以下操作之前,我已经退出了 Xcode。完成以下详细信息并重新打开 Xcode 后,我的问题得到解决。
使用文本编辑器更新捆绑标识符以匹配 App ID,Info.plist 文件位于:
项目名称 > 项目名称 > 项目名称 > 项目名称-Info.plist
您正在寻找以下几行:
<key>CFBundleIdentifier</key>
<string>MyCompany.${PRODUCT_NAME:rfc1034identifier}</string>
更新值以匹配您的 App ID,例如:
<string>com.MyCompany</string>
使用终端发出 touch 命令,确保您在上面列出的目录中:
touch ProjectName-Info.plist
我通过删除旧的开发/分发配置文件并使用新名称创建新配置文件来解决此问题。
在我作为软件开发人员 20 多年所面临的所有开发问题中,没有一个像 Xcode 中的代码签名/配置文件垃圾那样浪费了这么多时间。
本周,我浪费了 8 个多小时试图构建我们 iPhone 应用程序的临时版本。过去,它只是工作,我可以存档,在我们的内部网页上粘贴一个下载按钮,用户可以从这个页面安装我们的应用程序。
但是,本周,我面临着同样的“没有可用的身份”问题,在这里描述。
最终,这就是为我解决问题的方法:
当我登录绝望的Apple Developers网站时,它显示我们公司有2个“iOS Distribution”证书。它们是有效的,它们的到期日期还有几个月,并且在钥匙串访问应用程序中,证书已安装并且有效......这里没有问题。
但是解决我的问题是删除这两个证书,重新创建一个新证书,然后重新创建我的“内部”配置文件(因为原来的证书现在显示为无效,因为它使用了旧的“iOS 分发”证书)。
我还进入了 MacBook 上的“钥匙串访问”应用程序,并删除了所有“iOS 分发”钥匙串。
然后,我下载了新的证书和配置文件,现在,终于,Xcode 会报告我可以使用一个身份进行代码签名。
致 Xcode 开发团队:
请。解决这个问题。
如果像我这样的开发人员碰壁了,无法获得有效的配置文件,这将导致一个可下载的应用程序,每次都会失败“此时无法下载应用程序”消息..不要'不允许使用存档功能。
相反,告诉用户问题出在哪里。帮助他们解决它,而不是通过动作,并愉快地允许他们创建永远无法使用的档案。
如果 Ad-Hoc 安装无效,请在日志中添加一些内容以解释出现了什么问题,并使其可以从 Xcode 访问。目前,您的“此时无法下载该应用程序”消息既无用又具有误导性。
最后一件事(如果这有帮助):
我们公司不小心让它的开发者企业计划许可证在上个月到期。然后我们确实更新了,一切似乎又好了,但也许在幕后,这搞砸了我们的“iOS Distribution”证书?也许,不是。从苹果网站的角度来看,一切都很好。
我的问题是我的Bundle Identifier 中有none.myApp,而在AppID 中有com.myApp。
这让我疯狂了好几个小时。
就我而言,我想设置的临时配置在Build Settings的Code Signing中是不可选择的。不过,我从开发人员商店创建并下载了临时配置。这里提到的答案对我不起作用。常规选项卡中的修复问题按钮通过自行下载所需的临时配置文件来修复问题。
更新Xcode后发生在我身上。
我固定做以下
将登录更改为“无登录”
重启 Xcode
将其设置为正确的符号
重新归档构建
我希望它有帮助
我今天遇到了这个问题,它似乎与个人资料以数字开头的面孔有关。我删除了配置文件并以完全相同的方式重新创建了它(在 SO 上找到了许多其他故障排除步骤之后),除了这次我从一个单词而不是一个数字开始。巧合?不确定但值得一试。
昨天有这个,无论我做什么都无法弄清楚!为了解决这个问题,我在 Xcode 中的 Project 和 Target 都去了,在代码签名下,选择了
- 代码签名身份:不要代码签名
- 配置文件:无
构建,然后是产品 > 存档,现在 Organizer 选择了正确的代码签名身份和配置文件,以允许它进入验证步骤。呜呼!
“如果 Xcode 没有找到签名身份,则会出现一个对话框,说明“没有可用于签名的身份”。在继续之前验证您是否拥有分发证书和临时配置文件。
如果您在创建 iOS App Store 包时临时配置文件未出现在配置文件弹出菜单中,请在 Xcode 中刷新配置文件,如“在 Xcode 中刷新配置文件”中所述。”
创建新证书,Apple 开发中心的 Profile 对我不起作用!我尝试编辑配置文件/证书并再次下载并双击以安装在 KeyChain 中,但仍然无法正常工作。我重新启动了 XCode(El Capitan 上的版本 7 和 Mac),重新启动了 Mac,但仍然无法正常工作!
对我有用的是:XCode -> Preferences -> Accounts - 然后我删除了 Apple ID。关闭我的 Mac,然后重新启动它。启动我的 XCode,添加 Apple ID,查看 Apple ID 中的详细信息并再次下载临时配置文件,然后它才开始工作!
重启解决了我的问题。我有一个新的 Mac 并尝试下载配置文件,无论如何应该已经转移了。重新启动解决了它。