Xcode 12上传App Store遇WatchApp架构缺失错误ITMS-90733求助
解决Xcode 12上传watchOS应用时的ITMS-90733架构错误
我之前完全踩过这个坑!升级Xcode 12后本地测试一切正常,结果上传App Store就弹出这个架构错误,手动加arm64_32也没用,直到把几个细节捋清楚才搞定。以下是亲测有效的解决步骤:
1. 统一所有Target的架构配置
打开项目文件,依次选中主App Target、Watch App Target、Watch Extension Target,进入Build Settings做以下检查:
- 找到
Architectures选项,确保所有Target都设置为Standard Architectures (watchOS) - $(ARCHS_STANDARD),不要手动指定单一架构。 - 如果
Valid Architectures选项可见(Xcode 12可能默认隐藏,可通过搜索调出),确认里面包含armv7k和arm64_32这两个针对watchOS 5+的架构,缺少的话直接添加。
2. 排查Excluded Architectures的残留设置
这是Xcode 12升级后最容易忽略的坑:
- 在每个Target的
Build Settings里搜索Excluded Architectures,检查Debug和Release模式下,有没有误排除arm64_32或armv7k。如果之前为模拟器测试添加过i386之类的排除项,只保留针对模拟器的规则,不要影响真机架构。
3. 重置CocoaPods配置(如果项目用了Pods)
如果你的watchOS项目依赖CocoaPods,Xcode 12对Pods的架构处理容易出问题:
- 终端执行命令:
pod deintegrate pod install - 打开Pods项目,同样检查Pods里的watchOS相关Target的架构设置,确保和主项目的配置完全一致。
4. 确认Deployment Target和SDK版本
- 所有watchOS相关Target的
Deployment Target必须设置为Watch OS 5.0或更高(和错误提示的要求对应)。 - 检查
Base SDK是否为Latest watchOS(Xcode 12默认应该是,但升级后可能残留旧设置)。
5. 彻底清理后重新打包
- 执行
Product > Clean Build Folder(快捷键Shift+Command+K),清空旧的编译缓存。 - 切换到
Generic iOS Device(或对应watchOS真机),重新Archive项目后再尝试上传。
如果还是不行,可以手动验证包内的架构:
- 在Organizer里右键Archive,选择
Show in Finder,右键.xcarchive文件选Show Package Contents。 - 找到
Products/Applications/你的Watch App.app,右键选Show Package Contents,定位到Extension文件。 - 终端执行
lipo -info 你的Extension文件名,查看输出是否包含armv7k和arm64_32。如果缺少某一个,说明编译时没生成对应架构,回到Build Settings再仔细核对。
内容的提问来源于stack exchange,提问作者Zifigo
相关产品推荐
相关产品推荐

