华为 AppGallery
华为 AppGallery Connect 是华为官方应用分发平台。Flu CLI 通过 OAuth2 认证调用华为 Publishing API,支持上传 APK/AAB 文件,并可选上传商店素材(图标、截图、视频)。
✨ 平台特点
- OAuth2 认证:使用 Client ID/Secret 获取 Token
- 素材上传:支持同时上传应用图标、商店截图、预览视频
- 多区域支持:中国区、欧洲区、亚太区、俄罗斯区
- 草稿/提审模式:可选择仅保存草稿或直接提交审核
🔑 获取凭证
- 登录 AppGallery Connect
- 创建应用,记录 App ID(通常以
C开头,如C100xxxxx) - 进入 用户与权限 → API 客户端 → 创建新凭证
- 复制 Client ID 和 Client Secret
⚠️ 请确保 API 客户端拥有「App 管理」权限,否则上传会报权限不足。
📝 配置示例
最简配置
yaml
publish:
huawei:
enable: true
auth:
clientId: '${HUAWEI_CLIENT_ID}'
clientSecret: '${HUAWEI_CLIENT_SECRET}'
appId: 'C100xxxxx'完整配置(含素材上传)
yaml
publish:
huawei:
enable: true
auth:
clientId: '${HUAWEI_CLIENT_ID}'
clientSecret: '${HUAWEI_CLIENT_SECRET}'
appId: 'C100xxxxx'
releaseType: 'draft'
apiBaseUrl: 'https://connect-api.cloud.huawei.com'
assets:
icon: './store-assets/icon.png'
screenshots:
- './store-assets/screenshot1.png'
- './store-assets/screenshot2.png'
- './store-assets/screenshot3.png'
video: './store-assets/preview.mp4'配置字段
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
enable | boolean | 是 | 是否启用华为上传 |
auth.clientId | string | 是 | OAuth2 Client ID |
auth.clientSecret | string | 是 | OAuth2 Client Secret |
appId | string | 是 | 应用 ID(如 C100xxxxx) |
releaseType | 'draft' | 'submit' | 否 | 发布类型,默认 'draft' |
apiBaseUrl | string | 否 | API 地址,默认中国区 |
assets.icon | string | 否 | 应用图标路径(216x216 推荐) |
assets.screenshots | string[] | 否 | 商店截图路径列表(3-8 张) |
assets.video | string | 否 | 预览视频路径 |
API 区域地址
| 区域 | 地址 |
|---|---|
| 中国区(默认) | https://connect-api.cloud.huawei.com |
| 欧洲区 | https://connect-api-dre.cloud.huawei.com |
| 亚太区 | https://connect-api-dra.cloud.huawei.com |
| 俄罗斯区 | https://connect-api-dru.cloud.huawei.com |
📦 支持的文件类型
| 文件类型 | 说明 |
|---|---|
.apk | Android 安装包 |
.aab | Android App Bundle |
❓ 常见问题
Q: releaseType 设为 submit 后会直接上架吗? A: 不会。submit 只是自动提交审核,仍需通过华为审核后才会正式上架。建议先用 draft 模式验证流程。
Q: 素材上传有什么要求? A: 图标推荐 216x216 PNG/JPG,截图 3-8 张(PNG/JPG/BMP),视频为 MP4/MOV 格式。
Q: 提示 "permission denied" 怎么办? A: 请检查 API 客户端是否拥有「App 管理」权限,需要在 AppGallery Connect 后台的权限管理中授权。
Q: 华为认证过程中的常见坑点? A: 适配器已自动处理以下陷阱:
- 认证响应字段名不统一(
access_tokenvstoken) - 华为 API 返回的字段名偶见拼写错误(如
fileDestUlr),系统已做平滑迁移。 - 某些状态下提审接口会返回 404,此时需按提示手动进入后台操作。