使用Transporter(MacOS)上传iOS应用Marées NC更新时签名验证失败求助
问题排查:Transporter上传应用时触发90035签名错误
问题详情
每次使用MacOS的Transporter工具上传iOS应用「Marées NC」(Bundle ID:nc.cocogeek.mareesNC)的更新版本,都会出现以下错误:
Asset validation failed (90035)
Invalid Signature. A sealed resource is missing or invalid. The file at path “Marees NC.app/Marees NC” is not properly signed. Make sure you have signed your application with a distribution certificate, not an ad hoc certificate or a development certificate".
已执行的排查操作:
- 多次使用Distribution证书尝试上传,甚至重新创建了全新的Distribution证书
- 同一证书可正常上传其他应用的新版本,但对该应用无效
- 重新创建证书和对应配置文件,问题仍未解决
疑问:该问题属于Apple端故障还是本地操作问题?
排查建议
优先排查本地问题
- 验证签名完整性
- 执行命令
codesign --verify --verbose=4 "Marees NC.app"检查签名细节,查看是否有具体的资源篡改、权限异常或签名链断裂提示 - 确认应用包内的
Marees NC可执行文件未被第三方工具(如加壳、代码注入工具)修改过
- 执行命令
- 核对配置文件匹配度
- 确认签名用的Provisioning Profile绑定的Bundle ID与
nc.cocogeek.mareesNC完全一致,注意大小写、特殊字符的匹配 - 检查配置文件类型为App Store发布专用,而非Ad Hoc或Development类型,且已关联当前使用的Distribution证书
- 确认签名用的Provisioning Profile绑定的Bundle ID与
- 清理构建缓存
- 删除Xcode的Derived Data目录(路径:
~/Library/Developer/Xcode/DerivedData),重新构建并导出IPA文件 - 重启Transporter工具,或删除
~/Library/Caches/com.apple.Transporter目录下的缓存文件后重试
- 删除Xcode的Derived Data目录(路径:
- 检查应用资源合法性
- 确认应用包内所有资源文件(图片、plist、本地化文件等)未被错误标记为可执行权限,且无损坏文件
- 排查文件名是否包含特殊字符(如空格、重音符号)导致签名校验失败
Apple端问题的可能性(概率较低)
若以上本地排查均无异常,且同一证书可正常上传其他应用,可能是Apple后台针对该应用的签名校验逻辑出现异常:
- 尝试联系Apple开发者支持,提供应用Bundle ID、证书信息和完整错误日志,请求后台核查
- 更换全新的Distribution证书(生成新证书并绑定新配置文件)再次测试上传
内容的提问来源于stack exchange,提问作者CocoGeek
相关产品推荐
相关产品推荐

