Skip to content

小米应用商店

小米应用商店是小米生态的官方应用分发渠道。Flu CLI 通过小米开放平台 API 上传 APK,支持新增应用和更新已有应用两种模式。

✨ 平台特点

  • RSA 签名认证:使用邮箱 + API 密码 + 公钥文件进行身份验证
  • 智能模式:自动判断应用是否已存在,选择新增或更新操作
  • 新增应用:首次上传时可同时提交应用信息(分类、介绍、截图等)

🔑 获取凭证

  1. 登录 小米开放平台
  2. 进入 管理控制台发布管理自动发布设置
  3. 获取以下信息:
    • 邮箱:你的开发者账号邮箱
    • API 密码:在自动发布设置中生成(注意:不是账户登录密码
    • 公钥文件:下载小米分配的 RSA 公钥文件(.cer 格式)

⚠️ API 密码和登录密码是两码事。API 密码在「自动发布设置」中单独生成。

📝 配置示例

更新已有应用

yaml
publish:
  xiaomi:
    enable: true
    auth:
      userName: '${XIAOMI_EMAIL}'
      privateKey: '${XIAOMI_API_PASSWORD}'
      publicKeyPath: './xiaomi-public-key.cer'
    uploadType: 'update'

新增应用(首次发布)

yaml
publish:
  xiaomi:
    enable: true
    auth:
      userName: '${XIAOMI_EMAIL}'
      privateKey: '${XIAOMI_API_PASSWORD}'
      publicKeyPath: './xiaomi-public-key.cer'
    appName: 'My Application'
    packageName: 'com.example.app'
    uploadType: 'new'
    category: 1
    keyWords: '工具 效率 日常'
    desc: '这是一款提升工作效率的应用...'
    brief: '一款高效的工具应用'
    privacyUrl: 'https://example.com/privacy'
    assets:
      icon: './store-assets/icon.png'
      screenshots:
        - './store-assets/screenshot1.png'
        - './store-assets/screenshot2.png'
        - './store-assets/screenshot3.png'

配置字段

基础字段

字段类型必填说明
enableboolean是否启用小米上传
auth.userNamestring开发者账号邮箱
auth.privateKeystringAPI 访问密码(非登录密码)
auth.publicKeyPathstringRSA 公钥文件路径
packageNamestring应用包名(不填则从 APK 推断)
uploadType'auto' | 'new' | 'update'上传类型,默认 'auto'

新增应用字段(uploadType'new' 时必填)

字段类型必填说明
appNamestring应用名称
categorynumber应用分类 ID
keyWordsstring搜索关键字(空格分隔)
descstring应用介绍
briefstring一句话简介
privacyUrlstring隐私政策链接
assets.iconstring应用图标路径
assets.screenshotsstring[]手机截图路径列表(至少 3 张)

uploadType 说明

行为
'auto'(默认)自动查询应用是否已存在于小米商店,存在则更新,不存在则新增
'new'强制按新增应用处理,需提供完整的应用信息
'update'强制按更新处理,只上传 APK

📦 支持的文件类型

文件类型说明
.apkAndroid 安装包

❓ 常见问题

Q: 提示 "签名验证失败" 怎么办? A: 请检查公钥文件路径是否正确,API 密码是否为「自动发布设置」中生成的密码(非账户密码)。

Q: 分类 ID 怎么获取? A: 可通过小米开放平台的分类查询接口 /dev/category 获取,常用分类:工具(1)、社交(2)、购物(3) 等。

Q: auto 模式下如何判断应用是否存在? A: 系统会根据 APK 中的包名在小米商店中查询,如果找到匹配的应用则走更新流程,否则走新增流程。

Q: 小米认证加密的限制? A: 小米 API 使用 1024-bit RSA 加密,单次加密上限为 117 字节。若您的元数据(如简介)过长,app-ship 会自动进行分段加密处理,无需手动截断。

Released under the MIT License.