SuperAPI AI 工具集

app-store-connect

部署与运维

查看项目

更新于 10-15 12:41

技能介绍

用途

本技能用于通过 App Store Connect REST API 与 xcodebuild 命令行,对 App Store Connect 进行完整管理,包括应用元数据、截图、评论、TestFlight、提交发布、内购订阅、报表分析以及构建上传等操作。

凭据与鉴权

凭据从 config/credentials.local.md(已加入 gitignore)加载,该文件包含:Key ID、Issuer ID、私钥路径、Team ID,以及默认联系信息(公司、邮箱、电话、版权)。

所有 API 调用都需要鉴权。使用 JWT(ES256 算法)生成令牌,payload 包含 iss、iat、exp(1200 秒)、aud(appstoreconnect-v1),请求头携带 Authorization: Bearer <token> 与 Content-Type: application/json。

核心 ID 解析(每次操作前先执行)

大多数操作需要以下 ID,更新前应先解析:

  1. APP_ID:GET /v1/apps
  2. VERSION_ID:GET /v1/apps/{APP_ID}/appStoreVersions
  3. LOCALIZATION_ID(版本级元数据):GET /v1/appStoreVersions/{VERSION_ID}/appStoreVersionLocalizations
  4. APP_INFO_ID 与 APP_INFO_LOC_ID(应用级元数据):GET /v1/apps/{APP_ID}/appInfos,再 GET /v1/appInfos/{APP_INFO_ID}/appInfoLocalizations

操作索引

  • 元数据与本地化:描述、关键词、副标题、版权、分类、推广文本、多语言、AI 翻译(references/metadata-and-localization.md)
  • 截图与预览:上传截图、应用预览、模拟器自动化、截图尺寸(references/screenshots-and-previews.md)
  • 客户评论:列出评论、回复、删除回复、AI 辅助回复(references/reviews-and-ratings.md)
  • TestFlight:Beta 群组、测试员、构建、Beta 审核提交、邀请(references/testflight.md)
  • 提交与发布:提交审核、分阶段发布、版本递增、提名(references/submissions-and-releases.md)
  • IAP 与订阅:内购、订阅组、促销优惠、定价(references/iap-and-subscriptions.md)
  • 报表与分析:销售报表、财务报表、下载 TSV 数据(references/reports-and-analytics.md)
  • 高级功能:应用内事件、自定义产品页、App Clips(references/advanced-features.md)
  • 构建与部署:Xcode 归档、上传、ExportOptions、一行命令部署(references/build-and-deploy.md)

API 权限

  • GET:apps、versions、localizations、reviews、builds、reports
  • UPDATE:metadata、screenshots、categories、reviews、TestFlight、releases
  • CREATE:versions、localizations、screenshots、IAPs、subscriptions、events

硬性限制(API 无法完成)

截至 2026 年 4 月,以下操作确认无法通过 App Store Connect REST API 完成,不要尝试以编程方式执行:

  • 创建新应用:无 POST /v1/apps 端点,API 密钥会返回 403 FORBIDDEN,Fastlane produce 也无法用 API 密钥完成。需在 https://appstoreconnect.apple.com -> Apps -> + -> New App 手动创建。
  • 配置 App 隐私:隐私问卷(数据收集类型、追踪声明)无 API 端点,Apple 仅提供网页向导。需在 ASC -> Apps -> [App] -> App Privacy -> Get Started 手动配置。
  • 上传或更换应用图标:图标嵌入 Xcode 资源目录并打包进二进制,无独立图标上传端点,更换图标需重新构建。需在 Xcode 的 Assets.xcassets -> AppIcon 设置后归档并上传新构建。
  • 获取应用图标图片:build 资源上的 iconAssetToken 可能返回图标 URL,但无专用图标下载端点,结果不稳定。建议从 Xcode 项目资源目录提取,或使用 App Store 营销图 URL。
  • 删除应用:无法通过 API 删除,可下架或(若从未发布)完全移除。需在 ASC -> Apps -> [App] -> Remove App 手动操作。
  • 转移应用:应用转移是两个开发者账号间的多步手动流程,无 API 支持。需在 ASC -> Apps -> [App] -> Transfer App 手动发起。
  • 管理协议/合同:付费/免费应用协议、税务表单、银行信息无 API。需在 https://appstoreconnect.apple.com/agreements/ 管理。
  • 配置隐私清单:PrivacyInfo.xcprivacy 文件属于 Xcode 项目,而非 ASC 元数据。需在构建前将 PrivacyInfo.xcprivacy 加入 Xcode 项目。

关于年龄分级:尽管部分指南将其列为手动,年龄分级可通过 PATCH /v1/ageRatingDeclarations/{id} 配置,本技能在 references/metadata-and-localization.md 中覆盖。

常见错误

  • whatsNew 无法编辑:新应用需移除 whatsNew(仅更新版本可用)
  • CREATE apps 返回 403 FORBIDDEN:这是 API 硬性限制,非权限问题,需在 ASC 门户手动创建应用
  • 无效 bundle ID:确保 bundle ID 已在开发者门户注册
  • JWT 过期:令牌最长 20 分钟,每次会话前重新生成
  • ENTITY_ERROR.RELATIONSHIP:检查关系 ID 是否存在且类型正确
  • 待处理协议:在 https://appstoreconnect.apple.com/agreements/ 接受最新协议

完整工作流清单

新应用发布:

  • 手动在 App Store Connect 创建应用(无 API)
  • 手动配置 App 隐私问卷(无 API)
  • 手动在 Xcode 资源目录设置应用图标(图标打包进构建,无 API)
  • 解析 ID:APP_ID、VERSION_ID、LOCALIZATION_ID、APP_INFO_ID
  • 更新描述、关键词、promotionalText、supportUrl
  • 设置副标题(最多 30 字符)、版权、分类
  • 设置年龄分级声明(API 支持)
  • 设置内容权利声明
  • 为每种设备尺寸上传截图
  • 设置审核联系信息
  • 通过 xcodebuild 归档并上传构建
  • 设置营销/支持/隐私 URL
  • 提交 App 审核
  • 可选启用分阶段发布

应用更新:

  • 创建新版本(或自动递增)
  • 为所有语言更新 whatsNew(发布说明)
  • UI 变化时更新截图
  • 上传新构建
  • 提交审核
  • 监控分阶段发布

持续管理:

  • 监控并回复客户评论
  • 管理 TestFlight Beta 测试员与构建
  • 下载销售与财务报表
  • 为促销创建应用内事件
  • 按需更新定价与可用性

App 隐私(手动)

App 隐私必须在 App Store Connect 手动配置:ASC -> Apps -> [App] -> App Privacy。无数据收集的应用选择 "Data Not Collected"。隐私政策 URL 示例:https://yourcompany.com/privacy。

创建新应用(手动)

  1. 访问 https://appstoreconnect.apple.com
  2. Apps -> + -> New App
  3. 平台:iOS,主要语言:English (U.S.)
  4. Bundle ID:从已注册 ID 中选择(不要选 widget 扩展)
  5. SKU:唯一标识符(例如 appname001)