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

如何上传Safari扩展到App Store?归档上传报错排查指南

Safari扩展上传App Store点击上传按钮报错问题

问题描述

首次向App Store提交内容,开发产品为Safari扩展:在Xcode中完成归档创建后,点击Upload to App Store按钮时触发报错,报错截图如下:
报错截图
当前使用的开发者账号为已付费的正常活跃状态。
已知上传前需要完成profile和certificate相关配置,目前已完成的操作如下:

  • 已创建证书,但证书未关联至本机keychain,不确定该操作是否为必需步骤
  • 已创建标识符,且已将其作为bundle identifier配置在Xcode中使用
  • 已在App Store Connect中创建对应应用条目,补全了该扩展所需的全部信息

诉求:确认当前操作流程是否存在遗漏,获取该报错对应的可成功上传Safari扩展至App Store的解决方案。


解决方案

证书关联本机钥匙串是必需操作,也是本次报错的核心诱因

苹果分发证书必须安装到本机钥匙串、且携带对应私钥才能完成上传时的代码签名校验,缺这步必然触发上传失败:

  • 前往苹果开发者后台找到你创建的Apple Distribution证书,下载.cer格式的证书文件到本地,双击文件即可自动导入钥匙串
  • 打开「钥匙串访问」,在「登录」钥匙串的「我的证书」分类下找到刚导入的证书,展开条目后能看到对应私钥才算安装成功;如果看不到私钥,需要回到你当初生成证书签名请求(CSR)的设备,导出带私钥的.p12证书文件后再在当前设备安装。

签名配置校验

证书安装完成后,按以下规则检查签名配置:

  • 若使用自动签名:打开Xcode项目的Signing & Capabilities页面,勾选Automatically manage signing,选中付费开发者账号对应的Team,等待Xcode自动拉取更新描述文件,确认页面无红色报错即可。
  • 若使用手动签名:前往开发者后台生成对应Bundle ID的App Store分发类型描述文件,关联刚安装的分发证书,下载后双击导入Xcode,回到项目设置页手动选中该描述文件与匹配的证书。
  • Safari扩展专属校验点:扩展Target的签名配置需要和容器App保持一致,且扩展的Bundle Identifier必须是容器App ID的子层级,例如容器App ID为com.yourname.app,扩展ID需要设置为com.yourname.app.safariext这类格式,ID层级不匹配也会触发上传校验失败。

重新执行归档上传

所有配置修改完成后,按下快捷键Shift + Command + K清理Xcode构建缓存,关闭Xcode重新打开后再次执行Archive归档操作。归档完成后先点击Validate App做预校验,预校验通过后再点击Upload to App Store即可正常提交。
如果预校验仍有报错,直接根据提示的错误信息定向排查即可,常见的遗漏点还包括:App Store Connect中创建的应用条目Bundle ID与Xcode中配置的ID不完全一致、扩展Target与容器App的版本号/构建号不统一。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.30 17:21:22