Xcode 13如何隐藏或禁用「My Mac (Designed for iPad)」构建目标
解决方案
方法1:手动修改单份Xcode项目配置
- 打开Unity导出的Xcode项目,点击左侧导航栏最顶部的项目根节点
- 在中间编辑区选中你的iOS应用TARGETS,切换到Build Settings标签页
- 找到Architectures分组下的
Supported destinations配置项 - 展开配置后删除
Mac对应的选项,仅保留iOS相关配置即可 - 修改后该项目再次打开时,Xcode不会再展示My Mac作为可选构建目标
方法2:添加Unity后处理脚本,导出时自动禁用Mac目标
该方案可实现一劳永逸,避免每次导出项目后重复手动修改配置:
- 在Unity项目的
Assets/Editor目录下(无该目录则自行创建),新建C#脚本,命名为XcodePostProcessBuild.cs - 写入以下代码:
using UnityEditor; using UnityEditor.Callbacks; using UnityEditor.iOS.Xcode; public class XcodePostProcessBuild { [PostProcessBuild] public static void OnPostProcessBuild(BuildTarget buildTarget, string pathToBuiltProject) { if (buildTarget != BuildTarget.iOS) return; string projectPath = pathToBuiltProject + "/Unity-iPhone.xcodeproj/project.pbxproj"; PBXProject pbxProject = new PBXProject(); pbxProject.ReadFromFile(projectPath); string mainTargetGuid = pbxProject.GetUnityMainTargetGuid(); // 仅保留iOS真机平台支持 pbxProject.SetBuildProperty(mainTargetGuid, "SUPPORTED_PLATFORMS", "iphoneos"); pbxProject.SetBuildProperty(mainTargetGuid, "SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD", "NO"); pbxProject.WriteToFile(projectPath); } }
- 保存脚本后,后续Unity导出iOS项目时会自动修改Xcode配置,直接排除「My Mac (Designed for iPad)」构建目标
临时选择技巧
如果不想修改项目配置,可在Xcode打开后按住Option键点击顶部的构建目标选择栏,此时会直接过滤掉Mac相关目标,仅展示iOS真机和模拟器设备,直接选择你连接的iPhone即可。
内容的提问来源于stack exchange,提问作者ROBYER1
相关产品推荐
相关产品推荐

