用途:当 iOS 应用的二进制或安装包体积超出目标、且需在保持应用行为、安全与启动质量的前提下缩减体积时使用。适用于 Swift/Xcode 项目,输入包括 workspace 或 project、scheme、configuration(默认 Release)、risk_level(low/balanced/aggressive)、可选 size_budget_mb 与 min_gain_mb(默认 0.3 MB)、slice_scope。
主要能力:先做基线采集(构建设置快照、ipa/app/__TEXT/符号/dSYM 体积、冷启动与内存、冒烟测试),再按三级通行证调度优化。Tier 1 保守:仅 Release 确定性流水线、DEPLOYMENT_POSTPROCESSING、STRIP_INSTALLED_PRODUCT、STRIP_SWIFT_SYMBOLS、DEAD_CODE_STRIPPING、WholeModule、本地化与资源清理、ASSETCATALOG_COMPILER_OPTIMIZATION=space、STRIP_PNG_TEXT。Tier 2:-Osize、LLVM_LTO、架构裁剪、ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES=NO、依赖最小化、App thinning 校验。Tier 3 高风险需显式批准:反射元数据削减、符号导出加固、移除 -ObjC/-all_load、按需资源、模块拆分。
使用方式:逐项应用单一风险层级,失败立即回退;构建命令保持原样,如 xcodebuild -workspace "$WORKSPACE" -scheme "$SCHEME" -configuration Release -destination "$DESTINATION" -archivePath "$TMP_ARCHIVE" clean archive,导出用 -exportArchive。每轮跑大小、功能、稳定性、运行时、安全、回退六道闸门,每道至少两次取中位数;增益低于 min_gain_mb 或任一闸门失败即回退该轮。
限制:禁止使用 -Ounchecked、-enforce-exclusivity=unchecked 等不安全运行时设置;不得移除 dSYM,需保持符号上传与崩溃符号化;不得在未通过功能闸门时合并行为变更;low 风险级别未经批准不得执行 P14 及以上;balanced 停在 Tier 2。安全与质量优先级、评估报告 JSON 字段与退出条件均按资料规定执行。实际体积收益、耗时与性能影响因项目而异,资料未提供具体数值预期。