Files
MapLibreParticleLab/docs/报告/30_01_AndroidTestApp版本标识_Codex完成报告_v1.md
OpenAI Codex a1bcea9bbc
Some checks failed
validate-scripts / validate-scripts (push) Has been cancelled
testapp: show APK build identity in menu
2026-08-29 20:17:35 +08:00

2.2 KiB
Raw Permalink Blame History

30-01 Android Test App 版本标识 Codex 完成报告 v1

日期:2026-08-29

执行结论:WAITING_MANUAL_VALIDATION

1. 目标

在 Android Test App 主菜单列表顶部显示当前运行 APK 的版本与构建身份,使人工验证时能够直接确认设备上安装的是哪个 APK。

2. 基线与范围

  • 分支:particle/main。
  • 开始 HEAD:c9c7a8aac6b72461b4d1b4dc6985da9d8fcc6146。
  • 开始时工作区无修改。
  • 本轮只修改 Android Test App 菜单 UI,不修改 Core renderer、正式粒子实现、GPU、Mask、Vulkan 或 iOS。
  • 按 30-01 指令书不创建或修改 Step。

3. 实现

FeatureOverviewActivity 在主菜单顶部显示:

APK <versionName> (<versionCode>) · <renderer>/<buildType> · Git <revision>

数据全部来自 APK 构建产物自身:

  • Test App BuildConfig.VERSION_NAME;
  • Test App BuildConfig.VERSION_CODE;
  • Test App BuildConfig.FLAVOR;
  • Test App BuildConfig.BUILD_TYPE;
  • MapLibre Android BuildConfig.GIT_REVISION 的前 10 位。

版本信息没有写死;不同 renderer、build type 或 Git 提交构建出的 APK 会显示对应身份。

4. 修改文件

  • platform/android/MapLibreAndroidTestApp/src/main/java/org/maplibre/android/testapp/activity/FeatureOverviewActivity.kt
  • platform/android/MapLibreAndroidTestApp/src/main/res/layout/activity_feature_overview.xml
  • platform/android/MapLibreAndroidTestApp/src/main/res/values/strings.xml
  • 粒子开发记录.md
  • 本完成报告。

5. 检查

  • git diff --check:PASS。
  • 两个修改 XML 使用 Python 标准库只读解析:PASS。
  • Android/Gradle/Native 编译:未执行;用户明确要求 Codex 不编译。
  • 设备显示结果:等待用户重新手工构建、安装后确认。

6. Git

  • commit message:testapp: show APK build identity in menu。
  • 本次 commit hash:因报告与实现同一提交,为避免自引用,在 Codex 最终回复中记录。
  • push:提交后在 Codex 最终回复中记录。
  • 目标远端:origin/particle/main。

7. 未完成

  • 尚无用户手工 Android 构建与设备截图,因此不能宣称运行显示 PASS。
  • 30-01 Core RenderLayer 的修复后实机验证仍为 WAITING_MANUAL_VALIDATION。