车设apk dev 发版流程

流程:

流程图(白板转写):

工作日每天18:00或以后 → 选择平台/本地 编译

  • (平台分支)平台编译发布 → 修改(平台编译发布)进版change并打rom
  • (本地分支)本地编译发布 → 新建(本地编译发布)进版change并打rom

→ 刷rom自测 → merged 进版change → 进rom

详情:

发版:

发版内容:

🥦 正常情况:把当天18:00之前的merged gerrit changes发版。

平台编译发布:

平台配置:

  • Grapple 平台链接:https://grapple.auto.mioffice.cn/ApkPublish
  • version Name: 以 1.0.0.10-dev 这个的最后一个小数点的数字(1.0.0.1010)每次递增+1 。
  • versionCode: ****年**月**日 + 当天第一(**)次发版, 例如2025年12月12日 第一次发版就是:2025121201
  • Rom 进版分支: dev 分支 选择master。
  • 进版配置文件:选择manifest.xml,以自动创建packages仓库change
  • 最后点击构建按钮

图片展示的是车设apk dev发版流程中APK发布界面。界面中"仓库"选择为MiCarSettings,"分支"为dev,有"commit ID"输入框。关键信息部分用红色框突出显示,包括"version Name"为1.0.0.28 - dev,"version Code"为2025010601,"Rom开发分支"为master,"进版配置文件"选择manifest.xml。该图片与上下文紧密相关,直观呈现了发布时需填写的关键信息。

平台构建:

  • 构建成功后 汽车人会发送如下消息代表构建成功

图片展示了车设apk dev发版流程中平台构建成功后的相关信息。上方显示了两个Gerrit Add-Review消息,分别针对platform/packages/apps/Car/MiCarSettings和cockpit/core/platform/prebuilts/packages仓库,提交人为micar - dev,分支分别为feature - ci和master。下方是构建成功信息,项目为MiCarSettings_MANIFEST_1.0.0.10 - dev - cctest,描述暂无,详情链接为详情链接,时间为2025 - 12 - 15 15:03:57。该图片与文档中平台构建成功后汽车人发送消息代表构建成功的内容相关。

手动修改进版change:

  • 构建成功之后 其中一个自动生成的change 是 cockpit/core/platform/prebuilts/packages 仓库的change,需要手动在线平台修改。
  • 修改视频如下:

修改视频(QuickTime)

本地编译发布:(备选:已经执行了平台编译发布,该步骤可以跳过)

配置自己的 artifactory_user && artifactory_password

图片展示的是一个API Key配置界面。界面中有"Description""Token ID"等字段,但当前显示为空。重点突出显示了"API Key"和"Encrypted Password"两个输入框区域,其中"API Key"输入框右侧有复制图标,以及"Revoke API Key"和"?"plet"按钮。该图片与文档中"配置自己的artifactory_user&&artifactory_password"部分内容 自动生成

图片展示了MiCarSettings项目中project.properties文件的部分内容。其中,versionName和versionCode已配置,versionName为1.8.12-dev,versionCode为2025121201。关键信息是artifactory_user和artifactory_password两项,其前带有#号,处于未配置状态,被红色框突出显示。这与文档中"配置自己的artifactory_user&&artifactory_password"步骤相关,需在MiCarSettings/project.properties文件中进行配置。

配置apk versionCode和versionName

  • 在MiCarSettings/project.properties 文件修改版本号和版本名称
  • versionCode: ****年**月**日 + 当天第一(**)次发版, 例如2025年12月12日 第一次发版就是:2025121201
  • versionName:最后一个小数点的数字(1.0.0.1010)每次递增+1

图片展示了MiCarSettings项目中project.properties文件的内容。文件中记录了编译时间"Mon Nov 17 20:23:41 CST 2025",以及versionName和versionCode的值,分别为"1.0.0.10 - dev"和"2025121201"。该图片与文档中"配置apk versionCode和versionName"部分内容相关,直观呈现了在MiCarSettings/project.properties文件中配置版本号和版本名称的操作结果。

执行编译和发布脚本:

  • 如何执行:

    • 本地的仓库dev分支 git pull 到最新。
    • DCD:执行MiCarSettings/project_publish_dcd_app.sh 脚本
    • XCD:执行MiCarSettings/project_publish_xcd_app.sh 脚本
  • 确认APK是否发布到artifact成功:

    • 每执行一次编译发布脚本,在Build Out 搜索”Deploying artifact:” 有如下2个链接,并且点击能够下载:

    图片展示的是在BuildOut中执行MiCarSettings/project_publish_dcd_app.sh脚本后,确认APK是否发布到artifact成功时的界面。界面中显示了"Deploying artifact"链接,有两个链接,分别是"https://oss.xiaomi.net/artifactory/releases/com/xiaomi/MiCarSettings/1.0.8.11-dev/MiCarSettings-1.0.8.11-dev.xcd.apk"和"https://oss.xiaomi.net/artifactory/releases/com/xiaomi/MiCarSettings/1.0.8.11-dev/MiCarSettings-1.0.8.11-dev.apk",点击链接可下载APK文件。该图片与上文提到的"每执行一次编译发布脚本,在Build Out搜索'Deploying artifact:'有如下2个链接,并且点击能够下载"的内容相呼应。

创建进版change( cockpit/core/platform/prebuilts/packages )并且带change打rom:

创建进版change 版本( cockpit/core/platform/prebuilts/packages )并且提交:

带进版changes( cockpit/core/platform/prebuilts/packages )打rom

刷rom自测:

  1. 测试设备: 分别刷dcd 和 xcd rom 各一台设备。

  2. 测试用例:以下情况 没有crash :

    1. 左边每个TAB 点击一下。
    2. 点击 连接TAB- 蓝牙。
    3. 点击 系统TAB-应用管理。

Submit (Merged )进版change( cockpit/core/platform/prebuilts/packages ) :

🥦 @高毅@韩国良 cr+1,+2 通过, 即可以Submit(Merged)。