工程设置编辑器
不用打开 project.pbxproj。General 页修改标识、部署、签名和版本,Build Settings 页按 Basic、Customized、All 和来源层级查看修改,实时显示解析后的值。
打开
| 入口 | 操作 | 打开到 |
|---|---|---|
| 命令面板 | 「KXBuild: 工程设置…」 | Build Settings |
| 资源管理器 | 右键 .xcodeproj 或 .xcworkspace 选择「KXBuild: 工程设置…」,或双击 project.pbxproj | Build Settings |
| KXBuild 视图 | 工程行右键「KXBuild: 编辑工程设置」,target 行右键「KXBuild: 编辑目标设置」 | 工程为 Build Settings,target 为 General |
| 文本模式切回 | pbxproj 编辑器标题栏「KXBuild: 用工程设置编辑器打开」 | — |
从 .xcworkspace 进入时先选择其中的一个 .xcodeproj。左栏 PROJECT 是工程级设置,TARGETS 下每个 target 一项。
General 页
每个字段对应一个构建设置,修改这里等于修改 Build Settings 中对应的行。
| 分组 | 字段 | 构建设置 |
|---|---|---|
| Identity | Display Name | INFOPLIST_KEY_CFBundleDisplayName |
| Bundle Identifier | PRODUCT_BUNDLE_IDENTIFIER | |
| Product Name | PRODUCT_NAME | |
| Marketing Version | MARKETING_VERSION | |
| Current Project Version | CURRENT_PROJECT_VERSION | |
| Deployment | iOS Deployment Target | IPHONEOS_DEPLOYMENT_TARGET |
| 设备家族 | TARGETED_DEVICE_FAMILY | |
| Supported Platforms | SUPPORTED_PLATFORMS | |
| iPhone / iPad 方向 | INFOPLIST_KEY_UISupportedInterfaceOrientations_iPhone / …_iPad | |
| Launch Storyboard / Main Storyboard | INFOPLIST_KEY_UILaunchStoryboardName / INFOPLIST_KEY_UIMainStoryboardFile | |
| Signing | 签名方式 Automatic / Manual | CODE_SIGN_STYLE |
| Team | DEVELOPMENT_TEAM | |
| 证书 | CODE_SIGN_IDENTITY | |
| 描述文件 | PROVISIONING_PROFILE_SPECIFIER | |
| Entitlements 文件 | CODE_SIGN_ENTITLEMENTS | |
| Build | Swift 版本 | SWIFT_VERSION |
| Info.plist 文件 | INFOPLIST_FILE | |
| 自动生成 Info.plist | GENERATE_INFOPLIST_FILE | |
| App 图标集名 | ASSETCATALOG_COMPILER_APPICON_NAME |
签名设置和证书目录的配合见证书与签名,上架前修改版本号见发布与上架。
Build Settings 页
| 控件 | 作用 |
|---|---|
| Basic / Customized / All | 只看常用设置、只看本层修改过的、全部,默认 Basic |
| Combined / Levels | Combined 显示解析后的值,Levels 拆成 Target、Target xcconfig、Project、Project xcconfig、Default 五列,显示哪一层在生效 |
| 搜索框 | 按设置名或显示名过滤 |
| 显示设置名 | 把「iOS Deployment Target」这类显示名换成 IPHONEOS_DEPLOYMENT_TARGET |
| 按配置展开 | Debug 和 Release 值不同的设置分成两行,相同的合成一行 |
| <Multiple values> / (inherited) | 前者表示各配置值不同,后者表示本层未定义、沿用下层 |
| Quick Help | 底部显示选中设置的类型、可选值、默认值和说明 |
值单元格右键可以添加用户自定义设置、删除设置(去掉本层定义,回到继承)、复制设置名、复制值。列表类型的值一行一项,用 $(inherited) 保留下层的值。
保存
修改后 Combined 列和 General 页立即显示最终生效的值。Ctrl+Z 撤销,Ctrl+S 写回 project.pbxproj,只改动涉及的行。文件被其他工具修改而编辑器中有未保存改动时,会提示从磁盘重新加载或保留我的修改。
限制
编辑器只修改构建设置和它们映射的 Info.plist 键,target 的文件列表、构建阶段、依赖需要用文本模式修改。Storyboard 和 xib 没有可视化编辑,General 页只能填文件名。工具链和插件版本不一致时编辑器为只读并提示更新,更新后重新打开。