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

提交iOS应用至App Store遇ERROR ITMS-90045权限问题求助

解决ITMS-90045代码签名权限错误

你碰到的ERROR ITMS-90045问题其实很好定位:UISupportedInterfaceOrientations这个配置键根本不属于代码签名权限(Entitlements)的范畴,它是Info.plist的专属配置项,现在错误地被塞进了签名授权文件里,才导致苹果审核报错。

问题本质

苹果的代码签名权限是用来管控应用的特殊功能权限(比如推送、iCloud、后台刷新这类),而UISupportedInterfaceOrientations是用来定义应用支持的屏幕方向的,这个配置只该出现在Info.plist中,绝对不能出现在签名的entitlements里。

一步步修复方案

  • 检查并修正Entitlements文件:找到项目里的.entitlements文件(一般和Info.plist在同一目录,或者在Xcode项目设置的「Signing & Capabilities」里能看到路径),打开后直接删掉UISupportedInterfaceOrientations这个键值对。
  • 确认Info.plist的正确性:确保你的Info.plist里确实保留了这个方向配置(这部分是完全合法的,不用动),示例配置如下:
    <key>UISupportedInterfaceOrientations</key>
    <array>
        <string>UIInterfaceOrientationPortrait</string>
        <string>UIInterfaceOrientationLandscapeLeft</string>
        <string>UIInterfaceOrientationLandscapeRight</string>
    </array>
    
  • 重置代码签名配置:在Xcode的「Signing & Capabilities」标签页,要是用的自动管理签名,可以先关闭再重新打开,让Xcode重新生成干净的entitlements文件;手动管理的话,确认CODE_SIGN_ENTITLEMENTS指向的是正确的文件。
  • 清理后重新归档:先执行Product > Clean Build Folder清理旧构建缓存,然后重新归档提交,确保错误的签名配置被彻底清除。

特殊情况排查

要是找不到entitlements文件,或者确认文件里没有这个键,那大概率是Xcode构建时错误把Info.plist内容注入到了签名权限里,试试这两步:

  • 删除项目的Derived Data目录(路径在Xcode > Preferences > Locations > Derived Data,点击箭头打开文件夹后删掉对应项目的文件夹)
  • 检查Build Settings里的CODE_SIGN_ENTITLEMENTS配置,确保没有指向错误的文件,或者配置了多余的内容

内容的提问来源于stack exchange,提问作者Lloyd Marshall

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 06:36:34