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

使用ns publish ios发布iOS应用因App Store Connect API空响应报错

NativeScript发布iOS应用到App Store Connect报错解决方案

故障表现

使用NativeScript发布基于Angular构建的iOS应用到App Store Connect时,IPA构建步骤可正常完成,后续CLI连接App Store Connect接口拉取应用数据阶段抛出错误,无法完成应用推送。
已确认传入的Apple ID、应用专用密码、发布描述文件等参数均符合要求,数月前使用完全相同的流程、参数配置曾成功发布过该应用,可排除基础参数配置错误。

执行命令

使用的发布命令如下:

ns publish ios <appleid> <appleidpassword> <provisioningprofile> --appleApplicationSpecificPassword <apppassword> --log trace

报错信息

IPA构建完成后抛出的JS错误如下:

TypeError: Cannot read property 'summaries' of null
at ApplePortalApplicationService.<anonymous> (/usr/local/lib/node_modules/nativescript/lib/services/apple-portal/apple-portal-application-service.js:27:53)
at Generator.next (<anonymous>)
at fulfilled (/usr/local/lib/node_modules/nativescript/lib/services/apple-portal/apple-portal-application-service.js:5:58)
at processTicksAndRejections (internal/process/task_queues.js:97:5)

日志排查结果

开启trace日志追踪后确认,CLI发起的接口请求本身返回HTTP 200状态码,但响应体未返回有效业务数据:
请求详情:

httpRequest: {
  url: 'https://appstoreconnect.apple.com/WebObjects/iTunesConnect.woa/ra/apps/manageyourapps/summary/v2',
  method: 'GET',
  body: { contentProviderId: <redacted>},
  headers: {
    'Content-Type': 'application/json',
    Cookie: '<redacted>',
    'User-Agent': 'tnsCLI/8.2.3 (Node.js 12.22.7; darwin; x64)',
    'Accept-Encoding': 'gzip,deflate'
  }
}
httpRequest: Done. code = 200

接口返回内容:

{
    "data": null,
    "messages": {
        "warn": null,
        "error": null,
        "info": null
    },
    "statusCode": "SUCCESS"
}

根因说明

该问题由两方面原因共同导致:

  • NativeScript 8.2.3及更早版本的CLI,调用的是苹果未公开的旧版App Store Connect私有接口,苹果后续对该接口做了鉴权规则收紧、返回逻辑调整,未携带新版校验头的请求不会返回真实应用列表数据
  • 若苹果开发者账号存在未同意的最新平台协议、未补全的税务/付费协议信息,旧接口会直接返回空数据,而非错误提示

修复方案

按优先级依次尝试以下方案:

  • 账号状态校验
    分别登录苹果开发者中心、App Store Connect后台,检查是否存在待确认的协议更新、待补全的账户/税务/银行信息,所有待办项处理完毕后再重试发布命令
  • 升级NativeScript CLI
    将本地安装的NativeScript CLI升级到最新正式版,新版已经适配苹果调整后的接口鉴权规则,修复了旧接口返回空数据导致的空指针报错
  • 手动上传IPA绕开CLI内置发布逻辑
    如果升级CLI后问题仍存在,可跳过CLI的自动上传步骤:
    1. 执行ns build ios --release --forDevice --provision <你的发布描述文件标识>单独构建发布版IPA包
    2. 打开Mac端的Transporter工具(苹果官方上传工具,可在App Store免费下载),登录对应开发者账号
    3. 把构建好的、存放在platforms/ios/build/Release-iphoneos路径下的ipa包拖入Transporter,完成校验后直接上传即可
      该方式不依赖CLI对苹果私有接口的适配,稳定性最高。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.26 22:57:20