
新应用上架要填一堆应用信息?图标怎么还要我自己传?截图随手一截不符合要求?要处理的信息也太多了吧,deepin/UOS 应用商店的投递流程,终于有人给“无痛”重构了。
社区大佬@罐子 亲自操刀,打造了这款 应用投递助手 ,新应用上架、线上应用更新、甚至只改文案和截图,都能在一个工作台里轻量完成。
想彻底告别重复劳动?文末附录还奉上 GitHub Action 自动化发布方案。

适用场景
应用投递助手主要解决三类工作:
1. 新应用上架:拖入本地 .deb、玲珑 .uab 或 .layer 包,自动解析元数据,补齐文案、截图、图标和适配范围后提交。
2. 已上架应用更新:选择“我的应用”中的线上应用,可只更新文案、截图、图标或适配范围;如果拖入新包,则作为版本更新提交。
3. 多架构包更新:同一个应用可以同时维护 x86、amd64、arm64、loong64 等不同架构包。包列表按包展示,点击某个包后,右侧显示该包对应的截图、图标和适配范围。
启动与登录
-
安装 deb 后,从桌面图标或启动器打开“应用投递助手”。 -
开发环境下也可以直接运行 Qt 程序:
./Qt-C++/build/utpublisher-qt-cpp
-
首次启动后,点击右上角“同步”,拉取商店能力缓存(包括 deb 系统线、玲珑系统线、baseline、CPU 和主板适配项等)。 -
点击左下角 “登录”,支持扫码或账号密码。登录成功后左下角会显示账号和 Cookie 有效状态。

新应用上架完整流程
Step 1:确保空白状态
-
点击左侧 “我的应用”,回到未选择任何应用和本地包的空状态。
Step 2:拖入安装包
-
将 .deb / .uab / .layer 文件拖入中间虚线框(或点击“选择包文件”)。 -
等待解析,工具自动填充:应用名、版本号、架构、包格式、官网等。
Step 3:填写或确认资料
-
官网:不严格限制 URL 格式,可填官网、项目地址或文档地址。 -
开发者:填写开发者名称,提交时写入商店信息。 -
分类:选择应用分类。 -
中文文案:名称、简介、详情、更新说明。 -
英文文案:对应的英文内容(商店会展示双语)。 -
发布区域:中国(含港澳台)/ 其他地区,可多选。
Step 4:处理图标和截图
-
工具会自动尝试从包内提取图标(deb 从 desktop 文件或图标主题路径,玲珑包从元数据)。 -
截图支持:添加截图(本地选择)、粘贴(从剪贴板导入)、占位(仅测试用)。 -
关键一步:点击 “预处理素材”,工具自动把截图调整到商店规范尺寸: -
横屏截图 3:2(1050×700 到 1920×1280) -
竖屏截图 9:16(360×640 到 900×1600) -
至少准备 3 张有效截图,体现主界面和核心功能。 -
如需替换线上图标/截图,勾选 “替换图标/截图”。
Step 5:配置适配范围(非常重要)
-
适配范围是按包设置,不是整个应用统一设一次。 -
点击左侧包列表中的某个包 → 右侧点击 “调整” → 选择该系统线和具体版本范围。 -
只勾选系统线不选具体版本:使用商店默认兼容逻辑。 -
选择具体版本:明确限定可上架的版本范围。 -
“不上架版本”用于排除某些版本。 -
对于 ARM 架构包,还可以配置 CPU 和主板适配项(非 ARM 包通常不需要)。
Step 6:提交
-
检查底部状态栏(解析 → 制图 → 等待 → 提交),点击 “执行全自动提交”。 -
提交完成后生成 report.json,包含每个包的提交状态(submitted / submit_failed / failed)。如果失败,看 message 字段即可定位问题。
更新已上架应用(更轻量)
场景一:只更新文案、截图、图标或适配范围(不换包)
-
登录并同步。 -
左侧 “我的应用” 中点击目标应用,工具会加载线上资料。 -
直接修改中文/英文文案、官网、开发者、发布区域、截图、图标或适配范围。 -
不拖入新包,点击“执行全自动提交” → 资料更新生效。
场景二:更新安装包(版本更新)
-
推荐方式:先选线上应用,再拖入新包(避免包名匹配错乱)。 -
备选方式:直接拖入新包,让工具按包名自动匹配线上应用(可能匹配错误,优先用第一种)。 -
包列表会显示所有历史架构包。本次不更新的架构包信息不会丢失,商店仍保留。 -
常见问题:如果商店返回“包文件名称不一致”,说明新包包名与线上应用包名不匹配,请检查 deb 控制字段或玲珑元数据。
附录:GitHub Action
name: Update UOS Store Appon: workflow_dispatch: inputs: package:
description: Package path
required: true
jobs:
update-app:
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v4
- name: Update app store listing
uses: guanzi008/appstore@main
with:
username: ${{ secrets.APPSTORE_USERNAME }}
password: ${{ secrets.APPSTORE_PASSWORD }}
packages: ${{ inputs.package }}
app-id: "1096227"
note: "自动更新"
mode: api
多包更新:
packages: |dist/app_1.2.0_amd64.debdist/app_1.2.0_arm64.debdist/app_1.2.0_loong64.deb
只验证账号:
test-only: "true"Action 更适合固定流程。涉及截图挑选、适配范围核对、文案编辑时,优先使用桌面端。
写在最后
应用投递助手已上架deepin 25 应用商店欢迎下载体验,更详细功能介绍可前往deepin论坛-应用投递助手专帖查阅。
目前工具的各项功能仍在持续打磨中,但它已经能帮你省下大量重复劳动。项目现已完全开源,希望更多生态开发者能一起参与共建。
如果你在使用中遇到任何问题,或对下一版功能有想法,欢迎到 deepin论坛-应用投递助手专帖留言反馈,也欢迎直接提 Issue、PR,让这个工具变得更顺手。
项目地址:https://github.com/guanzi008/appstore.git
感谢罐子,也感谢每一位愿意让 deepin 生态更好的你。
生态招募:我们需要,热爱 Linux 生态的你
Linux 生态的发展,从来不是一个人的战斗,而是一群技术爱好者的携手同行。
deepin 作为在 DistroWatch 全球排名中表现亮眼、广受全球用户认可的开源操作系统,诚邀所有热爱开源的朋友,加入我们的 deepin 生态共建队伍,无论你是技术大牛,还是刚入门的技术爱好者,只要你认同开源精神,愿意为 Linux 生态贡献一份力量,这里都有你的一席之地。