iPhone分发:当前没有符合要求的配置文件

10

我即将上传一个应用程序到iTunes Connect。我不是团队代理,团队代理似乎也不能让我成为团队代理。因此,他登录了成员中心并下载了一个分发证书,该证书与WWDR证书一起在我的Keychain中。

捆绑标识符设置为se。“companyname”。 “appname”。

当我将代码签名标识设置为“发布”时,它会显示没有符合条件的配置文件。只有团队代理才能构建最终需要上传的应用程序吗?如何使XCode“使用正确的配置文件集”?

有任何想法如何克服这个最后的障碍吗?:)

编辑:团队代理可以登录成员中心并为应用程序创建一个配置文件,那么所有问题都可以解决吗?

答案:请参见Paul Peeleen的答案,我决定添加这些额外的信息(太长无法评论)。

保罗,我将把你的答案标记为正确答案,因为它让我找到了正确的方向......证书是针对钥匙链的(通常与计算机或计算机用户的登录链接),我猜测。

必须为应用程序创建一个完全独立的发布配置文件-将现有的开发证书修改以仅包括团队代理只是让他进行开发。小小的“啊哈”或者也许是“噢”的时刻是必须在Provision部分中使用Distribution选项卡创建它(在配置文件门户中)。

之后,在Target Info / Build选项卡中,您只需使用默认的自动配置文件选择器(开发/发布),它会自动找到。

我还暂时尝试添加了“无意义”的字符(例如JX567ERNB.)在se.companyname.appname之前作为捆绑标识符,但是自动配置文件选择器告诉我它不应该存在,因此我将其删除并且它起作用了!

配置文件使项目能够使用钥匙链中的证书,我猜测。


嗨,上次我做这件事时真的很烦人。 - Ayaz Alavi
谢谢,我通过删除生成的捆绑标识符前缀解决了我的问题,而我曾经费尽心思才能在Xcode中添加它。无论我在哪里阅读,都说它是捆绑标识符的一部分。我认为这有点不一致。 - Andreas
5个回答

27
"iPhone distribution no profiles match"是我在应用程序开发中遇到的最烦人的问题之一。
以下是我解决它的方法:
在iOS Provisioning Portal下,我需要生成4个证书并下载WWDR中间证书才能将我的应用程序提交到App Store:
1. 在Developer Certificate部分(link)生成一个Developer Certificate。还要确保已安装WWDR中间证书,如有疑问,请从该处下载。
2. 在Developer Certificate部分(link)生成一个Distribution Certificate(这不是会在Xcode中显示的!)
3. 在Provisioning部分(link)生成一个Development Provisioning profile certificate 4. 在Provisioning部分(link)生成一个Distribution Provisioning profile。这将在Xcode中显示为分发证书!
之后,我就可以选择在第4步生成的iPhone分发配置文件。还要确保您的目标设置正确,因为它们会覆盖项目设置。
您的活动配置文件在“Xcode / Organizer / Library / Provisioning Profiles”下列出。
希望这有所帮助。

更新:我的一些分发配置文件经常会从列表中“消失”。所以我不得不再次从https://developer.apple.com/ios/manage/provisioningprofiles/viewDistributionProfiles.action下载并安装它们(只需双击),这并不是什么大问题,但很烦人。


5
我查看了我的账户,似乎只有团队代理可以创建AppStore或AdHoc发布所需的内容。
如果您安装了正确的配置文件,并且“发布”构建的项目设置和目标设置都设置为正确的配置文件,同时在该计算机上安装了正确的证书...您可以构建发布版本。我不确定是否只有团队代理才能上传这些构建,但否则,您可以将发布打包为zip文件(无论如何都应该这样做),然后将其发送给团队代理。团队代理随后可以使用Application Loader上传应用程序。

忘记给答案点赞了,就像我通常做的那样,如果它们有效和相关,就像这个一样。确实,如果要进行任何分发,团队代理必须在场。 :p - Henrik Erlandsson

1

还有一点不要忘记,如果您在钥匙串中删除了所有证书和密钥,并计划重新生成这些证书,请确保将钥匙串中的证书首选项更改为关闭在线证书状态协议和证书吊销列表。出于某种原因,这是我成功的唯一方法。

开发人员配置文件丢失的另一个原因

在组织者下的库>供应配置文件... 在我的电脑上,如果我点击“刷新”,所有分发配置文件都会被删除!!! 没关系,只需返回到您的供应门户并转到供应>分发,下载适当的分发配置文件,然后就可以了! :)

来自苹果的指令...请完全按照它们的指示操作 https://developer.apple.com/ios/manage/certificates/team/howto.action

要请求iOS开发证书,您首先需要使用Mac OS X Leopard中的Keychain Access应用程序生成证书签名请求(CSR)。创建CSR将提示Keychain Access同时生成您的公钥和私钥对,从而建立您的iOS开发者身份。默认情况下,您的私钥存储在登录Keychain中,并且可以在“Keys”类别下的Keychain Access应用程序中查看。生成CSR的方法如下:
在应用程序文件夹中,打开实用工具文件夹并启动Keychain Access。在首选项菜单中,将在线证书状态协议(OSCP)和证书吊销列表(CRL)设置为“关闭”。
选择Keychain Access -> Certificate Assistant -> 从证书颁发机构请求证书。注意:如果在此过程中在Keychain中突出显示了不符合规定的私钥,则生成的证书请求将无法被供应商门户网站接受。请确认您选择的是“从证书颁发机构请求证书...”,而不是选择“带有...的证书颁发机构请求证书”。
在“用户电子邮件地址”字段中输入您的电子邮件地址。请确保输入的电子邮件地址与您注册为iOS开发者时提交的信息相匹配。在“通用名称”字段中输入您的姓名。请确保输入的姓名与您注册为iOS开发者时提交的信息相匹配。不需要CA(证书颁发机构)电子邮件地址。在完成以下步骤后,“必需”消息将被删除。选择“保存到磁盘”单选按钮,如果提示,则选择“让我指定密钥对信息”,然后单击“继续”。
如果选择了“让我指定密钥对”,请指定文件名并单击“保存”。在下一个屏幕中,选择“2048位”作为密钥大小,并选择“RSA”作为算法。单击“继续”。
证书助手将在您的桌面上创建一个CSR文件。

1
我在编程历史上只提交过两个应用程序。第一个应用程序是当我还是一名新开发人员时,花了我5个小时才签名并发送到苹果服务器。这次...只用了大约3个小时哈哈。当这个过程不起作用时,这真是一件非常痛苦的事情[向苹果提示]。 - M Jesse

0

请确保您的预配文件中的Bundle Identifier与Info.plist中的大小写相同。

我曾经遇到过这个问题,当我看到Xcode甚至不允许我手动选择我的分发配置文件时,最终解决了这个问题,显示“配置文件与包标识符myappname不匹配”

仔细一看,我发现Bundle名称中的应用程序名称大写,而预配文件中的应用程序名称全部小写。


0

我也整整一天都在解决这个问题。尝试了很多方法。

我下载了分发配置文件。好的。

双击。它就像魔术一样进入了钥匙串。好的。

构建。不行。没有签名。

检查 - 你要找的不是团队配置证书,而是那个看起来很普通的无法安装在设备上的证书。

如果它不在那里,你没有将它复制到你的library/MobileDevice/Provisioning Profiles文件夹中。(就像我一样)


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接