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

在Xcode的Build Phase运行脚本中能否修改Info.plist文件?

问题原因

你遇到的修改被覆盖问题,不是该方案不可行,核心原因是两个:

  1. 自定义Run Script的执行顺序早于Xcode内置的Info.plist处理、签名步骤,后续内置步骤直接覆盖了你修改后的文件
  2. Xcode 14+默认开启自动生成Info.plist配置,会自动生成文件覆盖自定义修改
解决方案
  • 调整Run Script执行顺序:将你添加的Run Script拖拽到Build Phase所有步骤的最后面,确保在Xcode所有内置的Info.plist处理逻辑执行完成后再修改文件
  • 关闭自动生成Info.plist配置:进入Build Settings,找到「Generate Info.plist File」选项,设置为NO,确保Xcode不会自动生成文件覆盖你的修改
  • 优化脚本逻辑,避免异常:可以直接使用下方优化后的脚本,增加文件存在性校验,避免构建报错:
set -e
# 修改主包内的Info.plist
PLIST_PATH="${TARGET_BUILD_DIR}/${INFOPLIST_PATH}"
if [ -f "$PLIST_PATH" ]; then
    /usr/libexec/PlistBuddy -c "Add :BuildDate date `date`" "$PLIST_PATH"
fi

# 可选:同步修改dSYM文件的Info.plist,方便后续排查线上问题
DSYM_PLIST_PATH="${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}/Contents/Info.plist"
if [ -f "$DSYM_PLIST_PATH" ]; then
    /usr/libexec/PlistBuddy -c "Add :BuildDate date `date`" "$DSYM_PLIST_PATH"
fi
  • 验证修改是否生效:修改完成后Clean Build Folder(快捷键Command + Shift + K),重新构建后检查产物内的Info.plist即可。

内容的提问来源于stack exchange,提问作者jeff-h

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 22:54:08