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

Xcode 15.4导出未签名IPA报错,求可行解决方案

导出未签名iOS IPA:Xcode 15.4+/16 Beta段错误的解决替代方案

问题背景

此前在Xcode 15.3中,通过bash脚本配合ExportOptions.plist配置可正常导出未签名IPA,但升级至Xcode 15.4(版本15F31d)或Xcode 16.0 beta 1(版本16A5171c)后,执行xcodebuild -exportArchive命令会触发Segmentation fault: 11错误,无法完成导出。

原使用的配置与脚本

原Bash脚本

xcodebuild clean archive \
  -workspace DemoApp.xcworkspace \
  -scheme DemoApp \
  -configuration Release \
  -sdk "iphoneos" \
  -archivePath DemoApp.xcarchive \
  CODE_SIGNING_REQUIRED=NO \
  CODE_SIGNING_ALLOWED=NO \
  CODE_SIGN_ENTITLEMENTS="" \
  CODE_SIGN_IDENTITY=""

xcodebuild -exportArchive \
  -archivePath DemoApp.xcarchive \
  -exportPath export \
  -exportOptionsPlist ExportOptions.plist \
  CODE_SIGNING_REQUIRED=NO \
  CODE_SIGNING_ALLOWED=NO \
  CODE_SIGN_ENTITLEMENTS="" \
  CODE_SIGN_IDENTITY=""

原ExportOptions.plist配置

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>compileBitcode</key>
    <false/>
    <key>method</key>
    <string>app-store-connect</string>
    <key>signingStyle</key>
    <string>manual</string>
    <key>stripSwiftSymbols</key>
    <true/>
    <key>teamID</key>
    <string>P38XW29864</string>
    <key>uploadSymbols</key>
    <false/>
</dict>
</plist>

可靠替代方案

方案1:手动构建未签名IPA(绕过xcodebuild导出步骤)

归档步骤保持不变,之后手动从归档文件中提取.app并打包成IPA:

  1. 执行原脚本中的归档命令,确保生成DemoApp.xcarchive
  2. 从归档中提取.app文件:
cp -R DemoApp.xcarchive/Products/Applications/DemoApp.app ./
  1. 创建Payload目录并放入.app文件:
mkdir -p Payload && mv DemoApp.app Payload/
  1. 打包生成未签名IPA:
zip -r DemoApp-unsigned.ipa Payload/
  1. 清理临时文件:
rm -rf Payload DemoApp.app

方案2:调整xcodebuild导出配置,避免段错误

修改ExportOptions.plist和导出命令,规避冲突的签名配置:

修改后的ExportOptions.plist

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>compileBitcode</key>
    <false/>
    <key>method</key>
    <string>development</string>
    <key>signingStyle</key>
    <string>manual</string>
    <key>stripSwiftSymbols</key>
    <true/>
    <key>teamID</key>
    <string>P38XW29864</string>
    <key>uploadSymbols</key>
    <false/>
    <key>signingCertificate</key>
    <string>iPhone Developer</string>
</dict>
</plist>

修改后的导出命令

移除冗余的签名禁用参数,仅保留必要配置:

xcodebuild -exportArchive \
  -archivePath DemoApp.xcarchive \
  -exportPath export \
  -exportOptionsPlist ExportOptions.plist \
  CODE_SIGNING_REQUIRED=NO

方案3:直接构建打包(跳过归档导出流程)

直接生成.app文件并打包为IPA,无需经过xcarchive环节:

xcodebuild clean build \
  -workspace DemoApp.xcworkspace \
  -scheme DemoApp \
  -configuration Release \
  -sdk iphoneos \
  CODE_SIGNING_REQUIRED=NO \
  CODE_SIGNING_ALLOWED=NO

# 打包生成IPA
mkdir -p Payload
cp -R build/Release-iphoneos/DemoApp.app Payload/
zip -r DemoApp-unsigned.ipa Payload/
rm -rf Payload build

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.22 04:52:42