问题 代码签名错误:无法找到与应用程序的标识符匹配的有效供应配置文件


我已经和这个问题打了好几天了,而且还要把我的头撞到墙上,让自己脱离我的代码签名/ app提交的痛苦。

我有一个已经提交到应用商店的应用程序并且没有接受任何问题(版本1.0.0)。我能够通过Application Loader使用XCode 3.2.4和iOS 4.1发布第一次更新(版本1.0.1),稍微尝试一次错误。现在我在XCode 3.2.5和iOS 4.2上,并尝试通过XCode Organizer发布更新(版本1.0.2)。

当我将info.plist中的Bundle Identifier设置为“com.myCompany.myApp”时,我可以针对AppStore Distribution配置成功构建我的应用程序。但是当我尝试通过Organizer验证/提交构建时,我得到并且错误声明“Bundle Identifier:com.myCompany.myApp与先前的bundle标识符ABC123XYZ1.com.myCompany.myApp不同”。显然,当我第一次通过iTunes连接提交我的应用程序时,我使用了全部(的AppId)。BundleIdentifer 句法。我通过查看iTunes连接中的Bundle ID验证了这一点。

所以,从逻辑上讲,我在AppId前缀中添加了Info.plist文件中的包标识符。当我这样做并尝试再次构建时,我收到“代码签名错误:无法找到与应用程序的标识符匹配的有效配置文件...”。并且构建失败。

我已经尝试了所有我在互联网上阅读有关这两个错误的所有内容,但没有解决问题。我陷入困境22。我无法在捆绑标识符中使用AppID前缀构建应用程序,如果没有它,我无法将其提交给iTunesConnect。此外,尝试使用Application Loader上传应用程序时发生iTunesConnect错误。

我准备将我的第一个孩子提供给任何可以帮助我摆脱这个代码签名/应用程序提交地狱的人!


2182
2017-12-17 14:26


起源



答案:


所以在等待了2个月的iTunes团队的答案之后,我已经找到了解决这个问题的方法并让我的应用程序上传。关键是使包标识符与在iTunesConnect中注册的包ID匹配。在这种情况下,iTunesConnect中的软件包ID为1234567890.com.companyname.appname。在我第一次创建应用程序的时候,我已经包含了捆绑种子ID,当我在iTunesConnect中创建应用程序时,该种子ID不应包含在我的研究中。

为解决此问题,我在配置门户中以1234567890.1234567890.com.companyname.appname的形式创建了一个新的App ID,然后基于此新AppID创建了一个新的分发移动设备。我在xCode Organizer中下载并安装了移动设备。在我的xCode项目的info.plist中,我将包标识符设置为1234567890.com.companyname.appname。这允许xCode将移动配置与info.plist中的指定包标识符进行匹配,并使用与iTunesConnect中的包ID匹配的包标识符成功构建并签署我的应用程序。在组织者中,我能够成功验证并上传应用程序。


12
2018-02-08 13:43



这很完美,谢谢。下次我会更加小心。 - Michael Robinson
我不得不处理同样的问题。非常感谢! - aiham
这节省了我在Unity。我在字符串中包含了捆绑ID - 删除它使得规则得到识别。 - Ben Throop


答案:


所以在等待了2个月的iTunes团队的答案之后,我已经找到了解决这个问题的方法并让我的应用程序上传。关键是使包标识符与在iTunesConnect中注册的包ID匹配。在这种情况下,iTunesConnect中的软件包ID为1234567890.com.companyname.appname。在我第一次创建应用程序的时候,我已经包含了捆绑种子ID,当我在iTunesConnect中创建应用程序时,该种子ID不应包含在我的研究中。

为解决此问题,我在配置门户中以1234567890.1234567890.com.companyname.appname的形式创建了一个新的App ID,然后基于此新AppID创建了一个新的分发移动设备。我在xCode Organizer中下载并安装了移动设备。在我的xCode项目的info.plist中,我将包标识符设置为1234567890.com.companyname.appname。这允许xCode将移动配置与info.plist中的指定包标识符进行匹配,并使用与iTunesConnect中的包ID匹配的包标识符成功构建并签署我的应用程序。在组织者中,我能够成功验证并上传应用程序。


12
2018-02-08 13:43



这很完美,谢谢。下次我会更加小心。 - Michael Robinson
我不得不处理同样的问题。非常感谢! - aiham
这节省了我在Unity。我在字符串中包含了捆绑ID - 删除它使得规则得到识别。 - Ben Throop


就我而言,我必须先用Cmd-B构建应用程序。

这会弹出一个钥匙串窗口访问,要求我“允许”(或“始终允许”)Xcode访问钥匙串。

只有这样我才能真正运行程序在我的iPhone上启动它。

显然,击中只有跑步并没有成功。

(顺便说一下,记得先用“iPhone Developer:Your Name()”键签名你的应用程序。


1
2018-02-26 23:03





即使你的包标识符发生了变化也很奇怪,有一件事我想起你可以试试。

创建新的配置文件,其标识符与您用于提交应用程序第一版的标识符相匹配。


0
2017-12-17 14:41



我创建了一个新的AppStore Distribution配置文件,并将其绑定到与创建原始配置文件相同的App ID。我遇到了同样的问题。当info.plist中的Bundle Identifer包含App ID前缀时,XCode无法识别配置文件。我无法创建具有相同捆绑包的新App ID,因为这是不允许的。我不想创建具有不同捆绑标识符的新App ID,因为我认为这会将应用程序与其先前版本断开连接。 - Mike Murphy
因此,出于任何奇怪的原因,你在itunes connect中的bundle-id包含app-Id,它不应该。如果是这样,我会联系支持人员,因为你没有在itunes connect中手动输入你的bundle-id,而是选择一个已经存在的app-id。 (也许这在我第一次提交应用程序之前有所不同) - Steve Hummingbird
那是对的。 iTunesConnect中的Bundle ID为“AppID.com.myCompany.myApp”。我想当我在iOS 3.1.3时代首次提交我的应用程序时,iTunesConnect允许我包含AppID。因此,我唯一的办法是联系Apple,看看他们是否可以更改它(我怀疑)或者是否可以在info.plist的Bundle Identifier字段中输入“AppID.com.myCompany.myApp”并让xCode识别出来我有一个有效的移动设备? - Mike Murphy
迈克,你联系过苹果吗?到目前为止有进展吗? - Steve Hummingbird
我还没有收到Apple的回复。我通过iTunesConnect联系我们页面提交了两个请求但没有得到回复。我目前有一个iOS开发者支持请求,正在等待对此的响应。 - Mike Murphy


我有同样的问题,并在上​​面的codeySmurf的建议,我能够重用相同的ID,它删除了该错误。


0
2017-10-22 12:05