# CMK Android R2 — DESIGN_IMAGE_ASSET_MAP

- 平台：ANDROID（CMK Android）
- 基线 commit：`ec123ad33bdeab9bf8fba35dcc1c547133732994`
- 视觉权威：`CMK_ANDROID_VISUAL_AUTHORITY_R1 = CANDIDATE_NOT_APPROVED`（阻断项 O-5，无像素权威）
- 冻结可用性基线：`docs/architecture/10-ui-page-spec/04-child-app.md`（FROZEN）
- 统计：共 12 个图片相关区块；RECOVERED（含替代/品牌）= 4；BLOCKED_ASSET_AUTHORITY = 2；ICON_VECTOR_ONLY = 4

> 说明：`RECOVERED_SUBSTITUTE_DISCLOSED` 为仓库原创、明确披露为**替代而非复刻**的矢量图，**不计作原设计图片恢复**；`BRAND_ASSET_RECOVERED` 为 Owner 已批准品牌 mark 的恢复。原设计照片/插画/头像素材**均不存在于仓库**，登记 `BLOCKED_ASSET_AUTHORITY`。

## 1. 区块明细

| SCREEN_ID | BLOCK_ID | SURFACE | DISPOSITION | AUTHORITY_STATUS | BEFORE | AFTER | DEFECT | ROOT_CAUSE |
|---|---|---|---|---|---|---|---|---|
| CA.HUB.HOME | BLK-HOME-AVATAR | DS.ChildAvatar（顶部问候头像） | **RECOVERED_SUBSTITUTE_DISCLOSED** | 原设计素材缺失：CMK_ANDROID_VISUAL_AUTHORITY_R1=CANDIDATE_NOT_APPROVED（O-5），无已批准头像素材；AI-02 禁止真人影像 | emoji 字体字形 🧒（非图像资源） | 资源化矢量头像（自有、已披露替代） | D-AND-R2-01 | RESOURCE_MISSING + FONT_GLYPH_PLACEHOLDER |
| CA.HUB.PROFILE | BLK-PROFILE-AVATAR | DS.ChildAvatar / DS.AvatarPicker | **RECOVERED_SUBSTITUTE_DISCLOSED** | 同 BLK-HOME-AVATAR：无已批准头像素材 | emoji 字形 | 资源化矢量头像 | D-AND-R2-01b | RESOURCE_MISSING |
| CA.EXPLORE.EMPTY_OFFLINE | BLK-OFFLINE-ILLU | 离线插画 + 一句话解释 | **RECOVERED_SUBSTITUTE_DISCLOSED** | 原设计素材缺失：无已批准离线插画素材（O-5） | 无插画，仅 Offline 状态条图标 | 资源化矢量插画（自有、已披露替代） | D-AND-R2-02 | RESOURCE_MISSING + CODE_NOT_REFERENCED |
| SHELL.APP | BLK-LAUNCHER-ICON | 应用启动图标（adaptive icon） | **BRAND_ASSET_RECOVERED + FIXED_PACKAGING** | OWNER_APPROVED_BRAND：KIDS_WEBSITE_VISUAL_REFERENCE_R1（2026-10-08；refSha256=d58e7c1757a6268e55ea34e4883e22dee7c9ac599679becaf65405584c8f1fbe）；brand icon.svg sha=cbdcc9950e0c03387ba1327c4ab4462671f5dd58929cf12e449cf19459a1e341 | 仅 @drawable/ic_launcher_foreground，无 adaptive icon 背景层 | 品牌色背景 + 品牌 M 前景的 adaptive/round icon | D-AND-R2-03 | BUILD_PACKAGING (无 mipmap 自适应图标) |
| SHELL.APP | BLK-BRAND-LOGO | 横版品牌 logo（未被任何儿童端页面要求） | **AVAILABLE_NOT_REQUIRED_NO_UI_BINDING** | OWNER_APPROVED_BRAND（refSha256=d58e7c1757a6268e55ea34e4883e22dee7c9ac599679becaf65405584c8f1fbe） | 未使用 | 未使用 | — | NOT_REQUIRED |
| CA.HUB.HOME | BLK-HOME-MODULE-ICONS | 产品卡图标（安全/学习/探索/成长） | **ICON_VECTOR_ONLY_NOT_IMAGE_RECOVERY** | 自有描边矢量（V-2 候补） | 矢量图标 | 矢量图标 | — | — |
| CA.EXPLORE.HOME | BLK-PLACE-TILE | DS.PlaceTile 地点卡 | **ICON_VECTOR_ONLY_NOT_IMAGE_RECOVERY** | 自有矢量 | 矢量图标 | 矢量图标 | — | — |
| CA.LEARN.HOME | BLK-MISSION-CARD | DS.MissionCard | **ICON_VECTOR_ONLY_NOT_IMAGE_RECOVERY** | 自有矢量 | 矢量图标 | 矢量图标 | — | — |
| CA.SAFETY.HOME | BLK-SOS | DS.SOSButton 常驻 | **ICON_VECTOR_ONLY_NOT_IMAGE_RECOVERY** | 自有矢量 | 矢量+Canvas | 矢量+Canvas | — | — |
| CA.EXPLORE.MAP | BLK-MAP-TILES | DS.MapCanvas 地图瓦片 | **BLOCKED_ASSET_AUTHORITY** | BLOCKED：无已批准瓦片提供方/离线包 | 未实现 | 未实现（非本轮范围） | D-AND-R2-04 | EXTERNAL_DEPENDENCY_MISSING |
| CA.EXPLORE.MISSION_SUBMIT | BLK-MISSION-PHOTO | 任务照片证据（相机） | **FORBIDDEN_FAKE_RUNTIME_ASSET** | 禁止伪造（运行时用户内容） | 未提供拍照入口 | 未提供拍照入口（合规） | — | FORBIDDEN_TO_SIMULATE |
| KIDS_WEBSITE.R7 | BLK-WEBSITE-MEDIA | 网站 R7 原型家庭/活动照片与部分插画（共同根因） | **BLOCKED_ASSET_AUTHORITY** | BLOCKED_ASSET_AUTHORITY（OD-R16-MEDIA-01） | 缺失 | 缺失（跨端共同根因，不伪造） | D-AND-R2-05 | NO_AUTHORIZED_MEDIA_IN_REPO |

## 2. 素材 SHA-256 与绑定

| BLOCK_ID | ASSET_FILE | SHA-256 | CURRENT_BINDING | RUNTIME_VISIBLE_AFTER |
|---|---|---|---|---|
| BLK-HOME-AVATAR | apps/kids-cmk-android/app/src/main/res/drawable/ic_cmk_avatar_child.xml | `a165fd976c928234cecd2d3f3abc3dbf3cdf06c46bbfd7067b2f78c2eb704a53` | ui/components/CmkComponents.kt CmkHeroHeader -> CmkIcons.ChildAvatar；ui/FamilyPage.kt:68 | YES（真机截图） |
| BLK-PROFILE-AVATAR | apps/kids-cmk-android/app/src/main/res/drawable/ic_cmk_avatar_child.xml | `a165fd976c928234cecd2d3f3abc3dbf3cdf06c46bbfd7067b2f78c2eb704a53` | 复用 CmkIcons.ChildAvatar（Home 问候卡为儿童端唯一头像展示面） | YES（随 Home 头像） |
| BLK-OFFLINE-ILLU | apps/kids-cmk-android/app/src/main/res/drawable/ic_cmk_offline_illustration.xml | `b418792a49fcfde805ad69fdaa6a214c693bf0b1d0944d0bbfceb9cf62dacdd1` | ui/ExplorePage.kt:72 CmkEmptyIllustration(CmkIcons.OfflineIllustration) | YES（真机截图） |
| BLK-LAUNCHER-ICON | res/drawable/ic_launcher_foreground.xml + res/drawable/ic_launcher_background.xml + res/mipmap-anydpi-v26/ic_launcher.xml | `fg=a838ecf601660112aa5529b444ea1e26bc10baf9afa6f00a094bd0cfdbf8c7a4;bg=0d314b4e11408f31625f0bd037db02081c84c6b804a9431a481b9698cd21e085` | AndroidManifest android:icon=@mipmap/ic_launcher / android:roundIcon | YES（启动器/清单） |
| BLK-BRAND-LOGO | website/public/brand/kids/logo-horizontal.png | `5899889fa6bc8aa651a9af5c47c0da3b63292ebe43207d7b94c58245ff6c97ee` | 未绑定（儿童端冻结规格无 logo 放置位） | N/A（规格未要求） |
| BLK-HOME-MODULE-ICONS | res/drawable/ic_cmk_{safe,companion,explore,grow}.xml | `见 drawable 清单` | ui/FamilyPage.kt CmkModuleTile + CmkIcons | YES |
| BLK-PLACE-TILE | res/drawable/ic_cmk_location.xml 等 | `见 drawable 清单` | ui/ExplorePage.kt CmkPlaceTile | YES |
| BLK-MISSION-CARD | res/drawable/ic_cmk_task.xml 等 | `见 drawable 清单` | ui/CompanionPage.kt | YES |
| BLK-SOS | res/drawable/ic_cmk_sos.xml | `见 drawable 清单` | ui/components/CmkSosButton.kt | YES |
| BLK-MAP-TILES | —（运行时瓦片，无打包素材） | `—` | 未实现（文字地点列表可用） | NO |
| BLK-MISSION-PHOTO | —（用户运行时拍摄） | `—` | 仅按 completion_rule 提供勾选/文字/编号收集 | N/A |
| BLK-WEBSITE-MEDIA | —（仓库无已授权对应媒体） | `—` | 不适用（Android 端） | NO |

## 3. 根因分类汇总

| 根因 | 区块 |
|---|---|
| RESOURCE_MISSING + FONT_GLYPH_PLACEHOLDER | BLK-HOME-AVATAR |
| RESOURCE_MISSING | BLK-PROFILE-AVATAR |
| RESOURCE_MISSING + CODE_NOT_REFERENCED | BLK-OFFLINE-ILLU |
| BUILD_PACKAGING (无 mipmap 自适应图标) | BLK-LAUNCHER-ICON |
| NOT_REQUIRED | BLK-BRAND-LOGO |
| — | BLK-HOME-MODULE-ICONS, BLK-PLACE-TILE, BLK-MISSION-CARD, BLK-SOS |
| EXTERNAL_DEPENDENCY_MISSING | BLK-MAP-TILES |
| FORBIDDEN_TO_SIMULATE | BLK-MISSION-PHOTO |
| NO_AUTHORIZED_MEDIA_IN_REPO | BLK-WEBSITE-MEDIA |

## 4. BLOCKED_ASSET_AUTHORITY 与 Owner 决定项

- **BLK-HOME-AVATAR** (DS.ChildAvatar（顶部问候头像）) → Owner 决定项 `OD-AND-R2-AVATAR`；原因：原设计素材缺失：CMK_ANDROID_VISUAL_AUTHORITY_R1=CANDIDATE_NOT_APPROVED（O-5），无已批准头像素材；AI-02 禁止真人影像
- **BLK-PROFILE-AVATAR** (DS.ChildAvatar / DS.AvatarPicker) → Owner 决定项 `OD-AND-R2-AVATAR`；原因：同 BLK-HOME-AVATAR：无已批准头像素材
- **BLK-OFFLINE-ILLU** (离线插画 + 一句话解释) → Owner 决定项 `OD-AND-R2-OFFLINE-ILLU`；原因：原设计素材缺失：无已批准离线插画素材（O-5）
- **BLK-MAP-TILES** (DS.MapCanvas 地图瓦片) → Owner 决定项 `OD-AND-R2-MAP`；原因：BLOCKED：无已批准瓦片提供方/离线包
- **BLK-WEBSITE-MEDIA** (网站 R7 原型家庭/活动照片与部分插画（共同根因）) → Owner 决定项 `OD-R16-MEDIA-01 (shared)`；原因：BLOCKED_ASSET_AUTHORITY（OD-R16-MEDIA-01）

## 5. 证据引用

- 运行态截图：`RUNTIME_SCREENSHOTS/before/`、`RUNTIME_SCREENSHOTS/after/`（含 manifest 与 SHA-256）
- 差异登记：`VISUAL_DIFFERENCE_REGISTER/VISUAL_DIFFERENCE_REGISTER.md`
- 修复证据：`REMEDIATION_EVIDENCE/`
