缺少配置文件:应用程序必须包含一个名为embedded.mobileprovision的配置文件。该文件是配置iOS应用程序所需的信息之一。

63

已经通过xcode-9将应用程序提交到App Store,现在我必须更新新版本。但是现在xcode已经更新,即xcode 10。在验证期间,它显示'Apps must contain a provisioning profile in a file named embedded.mobileprovision..'。应用程序在模拟器上运行良好。

即使我已经下载了配置证书。

6个回答

175

我试图清除供应配置文件,但没有任何帮助。与之前的 XCode 版本相比,改变的是构建系统。通过将构建系统更改回传统的构建系统,我的问题得到了解决。

您可以在“文件” > “工作区设置”(或项目设置)下切换构建系统,然后在“Build System”下选择Legacy Build System(请参见屏幕截图)。

select build system under preferences

编辑:从 cordovo iOS 5.0.0 开始,新的构建系统现在得到支持。更新日志可以在此处找到:https://cordova.apache.org/announcements/2019/02/09/cordova-ios-release-5.0.0.html


谢谢。但是这样做后显示:“App Store Connect操作错误:无效的应用商店图标。在'app_name.app'中的资源目录中的应用商店图标不能是透明的,也不能包含alpha通道。”即使我已经更新了不包含alpha通道的图标。该怎么办?请帮忙! - developer.PT
再次感谢您。对于下面的错误,我将图标从Xcode-AppIcon-appstore-1024pt更改为不包含alpha通道的图标,并成功验证。 - developer.PT
4
Luuk - 你太厉害了!我为那个错误浪费了整个周末。developer.PT - 我使用imagemagik修复了它(在资源文件夹中查找所有后缀为.png的文件,并执行命令 convert "{}" -alpha off "{}" 来去除它们的透明度)。 - Chris Skura
1
谢谢,这个问题也困扰了我一段时间。 - Hiago Souza
3
一个月前,我的iOS应用程序提交到生产环境的过程很顺利...然后我允许最近的XCode升级发生,然后出现了上述问题-您的建议起作用了,但现在iconnect无法看到我成功从XCode提交的应用程序-苹果可能是一个万亿美元的企业,但他们没有投资任何东西到他们的应用商店交付流程中-与Android相比,它一直是个糟糕的表演-亲爱的苹果公司,请整合你自己...迫不及待地等待一个完全基于Linux的移动设备替代方案-当它出现时,苹果将会萎缩和消失...还记得诺基亚吗?我想不会。 - Scott Stensland
4
这很有效,但如果我想使用新的构建系统怎么办?我该如何将配置文件加入到构建中呢? - Ty Le

14
如果从 CLI 运行/构建,请使用此命令来使用旧的构建系统而不是新的构建系统。
cordova build ios --buildFlag="-UseModernBuildSystem=0"

6
如果你的cordova项目还没有build.json文件,你可以在根目录下创建一个,并添加以下json数据。这将告诉“ios”构建过程使用传统的构建系统。它会自动将构建命令中build.json文件中的构建标记添加到其中,例如:“cordova build ios --prod”将会作为“cordova build ios --prod --buildFlag="-UseModernBuildSystem=0"”执行。
{
    "ios": {
        "debug": {
            "buildFlag": [
                "-UseModernBuildSystem=0"
            ]
        },
        "release": {
            "buildFlag": [
                "-UseModernBuildSystem=0"
            ]
        }
    }
}

3
如果您遇到上述问题,且通过切换到传统构建系统进行解决。使用新(默认)构建系统的替代方法是手动签名。

上传或验证存档时,请选择“手动”选项,并选择您的团队并下载配置文件。(或在从开发者门户网站下载后导入)。


这个答案和上面的答案一起解决了我的问题:清理构建,删除Provisioning profiles文件夹中的文件,然后重新打开项目,在项目页面上再次设置签名,然后在验证存档时选择手动签名,下载配置文件,最后成功验证。 - Lippai Zoltan

3

清理构建文件(Cmd + Shift + K)。退出XCode(不要只关闭项目,确保XCode已经完全退出)。

删除~/Library/MobileDevice/Provisioning Profiles文件夹中的所有内容。

重新启动XCode并加载您的项目。

如果您已将XCode设置为自动管理签名,则应该能够选择您的团队,然后它应该会为您重新下载您的配置文件。如果没有,请手动从您的苹果开发者帐户下载它们,然后在Debug签名下拉菜单和Distribution签名下拉菜单中选择“导入”。

如果您尝试在设备上运行应用程序,并且出现“找不到此可执行文件的有效配置文件”,则需要转到Window | Devices & Simulators。在窗口左侧找到您的设备,在其上按Ctrl键+单击,选择“查看配置文件”。单击每个单独的配置文件,然后单击底部的减号。当列表为空时,单击加号以添加一个新的配置文件,然后找到您下载的配置文件,并逐个将它们导入到该列表中。

这样应该可以解决XCode给您的任何配置文件问题。

祝您好运!


谢谢,但还是不管用。请帮我想另外一个解决方案。 - developer.PT

0

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