asc-app-previews

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

asc App Previews

asc 应用预览视频管理

Manage App Store preview video sets and video uploads via the
asc
CLI.
通过
asc
CLI管理App Store预览视频集及视频上传操作。

Commands

命令说明

List preview sets for a localization

列出某本地化版本的预览集

bash
asc app-preview-sets list --localization-id <LOCALIZATION_ID>
bash
asc app-preview-sets list --localization-id <LOCALIZATION_ID>

Create a preview set

创建预览集

bash
asc app-preview-sets create \
  --localization-id <LOCALIZATION_ID> \
  --preview-type <PREVIEW_TYPE>
--preview-type
raw values have no
APP_
prefix
— unlike screenshot display types. Common values:
IPHONE_67
,
IPHONE_65
,
IPAD_PRO_3GEN_129
,
APPLE_TV
,
APPLE_VISION_PRO
,
DESKTOP
.
See preview-types.md for all valid values grouped by device.
bash
asc app-preview-sets create \
  --localization-id <LOCALIZATION_ID> \
  --preview-type <PREVIEW_TYPE>
--preview-type
的原始值没有
APP_
前缀
——这与截图展示类型不同。常用值包括:
IPHONE_67
IPHONE_65
IPAD_PRO_3GEN_129
APPLE_TV
APPLE_VISION_PRO
DESKTOP
。按设备分组的所有有效值请查看preview-types.md

List previews in a set

列出某预览集中的预览视频

bash
asc app-previews list --set-id <SET_ID>
bash
asc app-previews list --set-id <SET_ID>

Upload a preview video

上传预览视频

bash
asc app-previews upload \
  --set-id <SET_ID> \
  --file path/to/preview.mp4 \
  [--preview-frame-time-code 00:00:05]
  • Accepted formats:
    .mp4
    ,
    .mov
    ,
    .m4v
  • --preview-frame-time-code
    sets the poster frame shown in the App Store
  • Upload is a 3-step API flow: POST reserve → PUT chunks → PATCH MD5 confirm
bash
asc app-previews upload \
  --set-id <SET_ID> \
  --file path/to/preview.mp4 \
  [--preview-frame-time-code 00:00:05]
  • 支持的格式:
    .mp4
    .mov
    .m4v
  • --preview-frame-time-code
    用于设置在App Store中显示的预览封面帧
  • 上传流程分为三步API调用:POST申请上传配额 → PUT分块上传 → PATCH MD5校验确认

State Fields

状态字段

AppPreview
has two independent state fields (unlike screenshots which only have one):
FieldStatesMeaning
assetDeliveryState
AWAITING_UPLOAD
,
UPLOAD_COMPLETE
,
COMPLETE
,
FAILED
Upload progress
videoDeliveryState
AWAITING_UPLOAD
,
UPLOAD_COMPLETE
,
PROCESSING
,
COMPLETE
,
FAILED
Video encoding
videoDeliveryState: "COMPLETE"
= video ready.
PROCESSING
is unique to previews (absent on screenshots).
Nil fields are omitted from JSON output.
mimeType
values containing
/
are escaped as
\/
by JSONEncoder (e.g.
"video\/mp4"
).
AppPreview
包含两个独立的状态字段(截图仅包含一个):
字段状态含义
assetDeliveryState
AWAITING_UPLOAD
,
UPLOAD_COMPLETE
,
COMPLETE
,
FAILED
上传进度
videoDeliveryState
AWAITING_UPLOAD
,
UPLOAD_COMPLETE
,
PROCESSING
,
COMPLETE
,
FAILED
视频编码状态
videoDeliveryState
"COMPLETE"
时,表示视频已准备就绪。
PROCESSING
状态是预览视频独有的(截图没有该状态)。
空字段不会出现在JSON输出中。JSONEncoder会将包含
/
mimeType
值转义为
\/
(例如
"video\/mp4"
)。

CAEOAS Affordances

CAEOAS 便捷操作

Every JSON response includes
affordances
with ready-to-run follow-up commands:
AppPreviewSet:
json
{
  "affordances": {
    "listPreviews":    "asc app-previews list     --set-id <SET_ID>",
    "listPreviewSets": "asc app-preview-sets list --localization-id <LOCALIZATION_ID>"
  }
}
AppPreview:
json
{
  "affordances": {
    "listPreviews": "asc app-previews list --set-id <SET_ID>"
  }
}
每个JSON响应都包含
affordances
字段,其中提供了可直接运行的后续命令:
AppPreviewSet(预览集):
json
{
  "affordances": {
    "listPreviews":    "asc app-previews list     --set-id <SET_ID>",
    "listPreviewSets": "asc app-preview-sets list --localization-id <LOCALIZATION_ID>"
  }
}
AppPreview(预览视频):
json
{
  "affordances": {
    "listPreviews": "asc app-previews list --set-id <SET_ID>"
  }
}

Typical Workflow

典型工作流

bash
undefined
bash
undefined

1. Find the localization ID

1. 查找本地化版本ID

asc version-localizations list --version-id <VERSION_ID> --output table
asc version-localizations list --version-id <VERSION_ID> --output table

2. Create a preview set for the target device

2. 为目标设备创建预览集

asc app-preview-sets create
--localization-id <LOCALIZATION_ID>
--preview-type IPHONE_67
asc app-preview-sets create
--localization-id <LOCALIZATION_ID>
--preview-type IPHONE_67

3. Upload the video (copy --set-id from affordances in step 2)

3. 上传视频(从步骤2的affordances中复制--set-id的值)

asc app-previews upload
--set-id <SET_ID>
--file preview.mp4
--preview-frame-time-code 00:00:05
asc app-previews upload
--set-id <SET_ID>
--file preview.mp4
--preview-frame-time-code 00:00:05

4. Check processing state

4. 检查处理状态

asc app-previews list --set-id <SET_ID> --pretty
undefined
asc app-previews list --set-id <SET_ID> --pretty
undefined