You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用dotnet publish构建iOS MAUI应用时如何指定exportOptions.plist?

在Cake流水线中通过dotnet publish调用exportOptions.plist构建iOS MAUI应用

完全可行,你可以通过dotnet publish的属性参数指定exportOptions.plist文件,结合Cake的DotNetPublish方法就能在流水线中实现这一需求。

具体实现步骤

  1. 在Cake脚本中配置DotNetPublish任务
    直接在DotNetPublishSettings的Properties字典中添加ExportOptionsPlist项,指定你的配置文件路径,同时记得开启ArchiveOnBuild(因为导出IPA需要先完成归档操作)。示例代码如下:

    Task("Publish-iOS-MAUI")
        .Does(() =>
        {
            DotNetPublish("./YourMauiApp.sln", new DotNetPublishSettings
            {
                Configuration = "Release",
                Framework = "net8.0-ios", // 根据你的MAUI版本调整,如net7.0-ios
                Runtime = "ios-arm64",
                Properties = new Dictionary<string, string>
                {
                    { "ExportOptionsPlist", "./Configs/exportOptions.plist" }, // 替换为你的文件路径
                    { "ArchiveOnBuild", "true" },
                    { "CodesignKey", "Apple Distribution: Your Team Name (XXXXXX)" }, // 可选,若plist未指定签名信息可补充
                    { "CodesignProvision", "Your Provisioning Profile Name" }
                }
            });
        });
    
  2. 直接使用dotnet命令行验证
    如果需要单独测试,对应的命令行指令如下:

    dotnet publish -c Release -f net8.0-ios -r ios-arm64 /p:ExportOptionsPlist=./Configs/exportOptions.plist /p:ArchiveOnBuild=true
    

关键注意事项

  • 确保exportOptions.plist的路径正确,可使用相对路径(相对于Cake脚本的工作目录)或绝对路径
  • plist文件中的导出类型(如app-store、ad-hoc)、签名团队ID等配置必须与你的开发者证书、配置文件完全匹配,否则会出现签名或导出失败
  • 在CI环境中运行时,需提前确保开发者证书和配置文件已正确导入构建环境的密钥链,或通过Cake脚本添加密钥链导入步骤

内容的提问来源于stack exchange,提问作者Alex Hardwicke

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 11:43:12