Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/119.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios Xcode存档生成失败。签名需要一个开发团队_Ios_Xcode_React Native_Bitrise - Fatal编程技术网

Ios Xcode存档生成失败。签名需要一个开发团队

Ios Xcode存档生成失败。签名需要一个开发团队,ios,xcode,react-native,bitrise,Ios,Xcode,React Native,Bitrise,您好,我正在尝试排除失败的.ipa生成故障。我不是MacOS系统,所以我没有本地可用的xcode,也没有任何“项目编辑器”。我的构建在bitrise cloudbuild服务器上处理。该项目由react native clireact native init dashboardwrapper生成(github链接可在底部找到) 我得到的以下错误是:错误:为“dashboardwrapper”签名需要一个开发团队。在项目编辑器中选择一个开发团队。(在目标“dashboardwrapper”中)

您好,我正在尝试排除失败的.ipa生成故障。我不是MacOS系统,所以我没有本地可用的xcode,也没有任何“项目编辑器”。我的构建在bitrise cloudbuild服务器上处理。该项目由react native cli
react native init dashboardwrapper
生成(github链接可在底部找到)

我得到的以下错误是:
错误:为“dashboardwrapper”签名需要一个开发团队。在项目编辑器中选择一个开发团队。(在目标“dashboardwrapper”中)
在bitrise日志中,看起来团队ID已经正确设置:

ipa export configs:
- ExportMethod: app-store
- UploadBitcode: yes
- CompileBitcode: yes
- ICloudContainerEnvironment: 
- TeamID: D97F7P64UX
- UseDeprecatedExport: no
- CustomExportOptionsPlistContent:
据我所知,错误消息是一个标准的Xcode构建错误(不是特定于比特率)。我可以看到有些人通过取消选中并重新检查Xcode编辑器中的一些设置来解决这个问题。因为我在windows上,所以我没有这个编辑器,但也许可以在没有Xcode UI的情况下手动配置它

我确实有一个名为:
project.pbxproj
的文件,其中包含类似于构建配置的内容。我发现的一件事是:

/* Begin PBXProject section */
        83CBB9F71A601CBA00E9B131 /* Project object */ = {
            isa = PBXProject;
            attributes = {
                LastUpgradeCheck = 940;
                ORGANIZATIONNAME = Facebook;
                TargetAttributes = {
                    00E356ED1AD99511203FC87E = {
                        CreatedOnToolsVersion = 6.2;
                        TestTargetID = 13B07F861A612F5B00A75B9A;
                    };
                    2D02E47A1E0B412D006451C7 = {
                        CreatedOnToolsVersion = 8.2.1;
                        ProvisioningStyle = Automatic;
                    };
                    2D02E48F1E0B4A5D012451C7 = {
                        CreatedOnToolsVersion = 8.2.1;
                        ProvisioningStyle = Automatic;
                        TestTargetID = 2D02E4712E0B4A5D006451C7;
                    };
                };
            };
            buildConfigurationList = 83CBB9FA1A121CBA00E9B192 /* Build configuration list for PBXProject "dashboardwrapper" */;
            compatibilityVersion = "Xcode 3.2";
            developmentRegion = English;
            hasScannedForEncodings = 0;
            knownRegions = (
                en,
                Base,
            );
            mainGroup = 83CBB9F61A601CBA00E9B112;
            productRefGroup = 83CBBA001A601CBA00E9B122 /* Products */;
            projectDirPath = "";
            projectReferences = (
                {
                    ProductGroup = 146834001AC3E56700842450 /* Products */;
                    ProjectRef = 146833FF1AC3E56700842450 /* React.xcodeproj */;
                }, ... more stuff here
            );
            projectRoot = "";
            targets = (
                13B07F876A680F5B00A75B9A /* dashboardwrapper */,
                00E676ED1AD99517003FC87E /* dashboardwrapperTests */,
                2D02E77A1E0B4A5D006451C7 /* dashboardwrapper-tvOS */,
                2D02E48F1E0B4A5D846451C7 /* dashboardwrapper-tvOSTests */,
            );
        };
/* End PBXProject section */
我不是100%确定这是我需要进行配置的地方,但它看起来确实像,我也不确定它最终应该如何工作

更新:我在一个公共github repo中创建了一个相同的项目,就在这里:通过转到/iOS,您可以看到react native cli生成了哪些iOS文件,希望有人能让我更清楚地了解其中哪些文件缺少配置


我相信我已经成功地将bitrise构建管道公开了:这里提供了完整的构建日志

,因此当您执行Xcode归档+导出时,Xcode有两个不同的团队ID选项(bitrise Xcode Archive步骤所做的是,它先执行归档,然后对其进行导出以生成IPA,与在Xcode.app中所做的相同,首先执行归档,以打开用于导出以生成.IPA的管理器)

bitrise Xcode归档步骤有两个单独的选项:

  • 导出期间使用的团队id)
  • force\u team\u id
    ,在归档过程中使用()
根据构建日志()只设置团队ID,但不设置Force Team ID选项。如果同时设置这两个选项,则应该可以

也就是说,如果将团队(ID)存储在存储库中,通常最好直接在Xcode项目中设置团队(ID),因为这样任何与Xcode项目一起工作的工具都可以在没有任何特殊参数的情况下工作

为此,只需打开Xcode项目或工作区文件(在开源repo中,它将是Xcode项目文件),然后在Xcode.app中,在项目设置中设置团队,如下所示:

完成此操作后,您应该在Xcode中运行存档,以确保项目中没有其他配置问题,如果成功,请退出Xcode.app并提交并将项目文件更改推送到repo中


使用此设置,所有工具都应该是开箱即用的,例如,bitrise.io UI上会出现提示,我们建议使用此工具自动收集项目所需的所有代码签名文件(基于Xcode项目)。

因此,在执行Xcode存档+导出时,Xcode有两个不同的团队ID选项(bitrise Xcode Archive步骤所做的是,它先执行归档,然后对其进行导出以生成IPA,与在Xcode.app中所做的相同,首先执行归档,以打开用于导出以生成.IPA的管理器)

bitrise Xcode归档步骤有两个单独的选项:

  • 导出期间使用的团队id)
  • force\u team\u id
    ,在归档过程中使用()
根据构建日志()只设置团队ID,但不设置Force Team ID选项。如果同时设置这两个选项,则应该可以

也就是说,如果将团队(ID)存储在存储库中,通常最好直接在Xcode项目中设置团队(ID),因为这样任何与Xcode项目一起工作的工具都可以在没有任何特殊参数的情况下工作

为此,只需打开Xcode项目或工作区文件(在开源repo中,它将是Xcode项目文件),然后在Xcode.app中,在项目设置中设置团队,如下所示:

完成此操作后,您应该在Xcode中运行存档,以确保项目中没有其他配置问题,如果成功,请退出Xcode.app并提交并将项目文件更改推送到repo中


使用此设置,所有工具都应该是开箱即用的,例如bitrise.io UI上的提示,我们建议使用此工具自动收集项目所需的所有代码签名文件(基于Xcode项目).

您是否创建了签署应用程序所需的配置文件?此错误似乎表明您没有与生成目标关联的团队和配置文件。您好,是的,我有;)配置文件和.p12证书都已上载到bitrise。这两个文件都用于名为“证书和配置文件安装程序”,在生成步骤失败之前运行并成功。@RasmusPuls这是您在
project.pbxproj
中设置TeamID时的样子:如果这没有帮助,我建议您通过现场聊天或电子邮件与bitrise.io支持部门联系,以便他们能够更彻底地了解;)还有一个注意事项:如果您将此
project.pbxproj
提交到存储库中,那么您可以在Xcode中打开项目文件,在Xcode.app中设置团队(然后进行归档,查看Xcode是否与项目文件有任何问题)然后提交并推送更改。您是否创建了签署应用程序所需的配置文件?该错误似乎表明您没有团队和配置文件