关于 asc-promoted-purchases
asc-promoted-purchases 是用于管理 App Store 产品页推广内购项目的技能,面向维护应用商品页的开发者。它可创建、查看、更新和删除推广项,并根据审核状态隐藏可能引发冲突的操作。
主要功能
- 01列出应用的推广内购项目
- 02推广内购或自动续订订阅
- 03设置展示状态和启用状态
- 04更新或删除推广项目
- 05按审核状态限制操作入口
适用场景
- 01查看应用当前推广的内购项目
- 02在产品页推广内购或订阅
- 03审核期间避免执行不允许的修改或删除
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ tddworks/ asc-cli-skills --skill asc-promoted-purchases安装后在 Claude Code 中输入/asc-promoted-purchases确认已加载。
详细介绍
asc 推广内购项目
管理 App Store 产品页上的推广内购项目——显示在 App Store 应用产品页下方的精选 IAP / 自动续期订阅。每个展示位只能推广 IAP 或订阅其中一种,且需要单独通过 App Review,与底层产品的审核分开进行。
列表
asc promoted-purchases list --app-id <APP_ID> [--limit N] [--pretty]
创建
必须且只能指定 --iap-id 或 --subscription-id 其中一个(命令会验证并拒绝同时指定或都不指定):
# Promote an in-app purchase
asc promoted-purchases create --app-id <APP_ID> --iap-id <IAP_ID> --visible --enabled
# Promote an auto-renewable subscription
asc promoted-purchases create --app-id <APP_ID> --subscription-id <SUB_ID> --hidden --disabled
--visible / --hidden 用于切换 isVisibleForAllUsers。--enabled / --disabled 用于切换 isEnabled。默认值:isVisibleForAllUsers=true;如果未指定任何标志,则 isEnabled 保持不变。
更新
asc promoted-purchases update --promoted-id <PROMOTED_ID> [--visible | --hidden] [--enabled | --disabled]
如果省略某组标志,该字段将保持不变。
删除
asc promoted-purchases delete --promoted-id <PROMOTED_ID>
状态语义
PromotedPurchaseState 提供以下语义布尔值:
| 布尔值 | 状态为以下值时为真 |
|---|---|
isLocked | WAITING_FOR_REVIEW、IN_REVIEW |
isApproved | APPROVED |
与状态相关的操作
JSON 响应会隐藏 ASC 将拒绝为 409 冲突的修改操作:
| 状态 | update 链接 | delete 链接 |
|---|---|---|
approved / rejected / prepareForSubmission / developerActionNeeded | 显示 | 显示 |
waitingForReview / inReview(即 state.isLocked) | 隐藏 | 隐藏 |
{
"affordances": {
"listSiblings": "asc promoted-purchases list --app-id <APP_ID>",
"update": "asc promoted-purchases update --promoted-id <ID>", // omitted while in review
"delete": "asc promoted-purchases delete --promoted-id <ID>" // omitted while in review
}
}
解析 App ID
请参阅 project-context.md——在询问用户或运行 asc apps list 前,先检查 .asc/project.json。
典型工作流
APP_ID=$(cat .asc/project.json 2>/dev/null | jq -r '.appId // empty')
# Promote an IAP, visible to all users, slot enabled.
PROMO_ID=$(asc promoted-purchases create --app-id "$APP_ID" \
--iap-id "iap-1" --visible --enabled \
| jq -r '.data[0].id')
# Later: hide it temporarily without deleting
asc promoted-purchases update --promoted-id "$PROMO_ID" --hidden
# Or just remove the slot
asc promoted-purchases delete --promoted-id "$PROMO_ID"
参考
如需了解完整的领域模型和 REST 详情,请参阅 docs/features/promoted-purchases.md。
评论
支持 Markdown