Files
lumaplayer/memory/lessons.md
T

1.6 KiB

教训

  • 中:本地目录原先没有 .git,不能直接 pull;应先获取远端历史,以共同基线做三方合并。
  • 中:合并后需编译检查跨文件 API;本次发现并修复资源别名、Backdrop 导入及底部导航 mainTabs 缺失问题。
  • 低:远端 URL 不保留账号密码,认证信息只用于本次读取。
  • 高:Kyant0 Backdrop 的 layerBackdrop 捕获范围内不能再直接绘制使用同一 backdrop 的玻璃控件,否则可能形成循环渲染并在 RenderThread 触发 SIGSEGV;页面源层与玻璃控件必须分离,视频源层只包 AndroidView。
  • 中:远端提交与本地大范围未提交 UI 改动并行时,先暂存本地改动、合并远端非冲突文件,再恢复本地改动并手动吸收远端业务行为,避免整文件覆盖。
  • 高:Backdrop 的来源层与消费玻璃必须是同级兄弟层;菜单外部手势层也必须位于菜单内容下方,否则打开手势会误触发关闭。
  • 中:Backdrop 的玻璃效果是否明显取决于来源内容;纯白卡片上无法显示明显折射,需依靠仓库的高光、阴影和 lens 边缘表现,不能用普通白色背景冒充。
  • 高:Root Overlay 若直接消费外层页面 layerBackdrop,外层 source 会把 Overlay 再捕获形成 RenderNode 循环;必须为局部页面建立只包裹底层内容的 source,并让 Overlay 作为兄弟 consumer。
  • 高:Room 实体由 Java 可空字段映射时,迁移列定义必须与 Room 的 notNull 预期一致;新增 protocol 使用可空列并在模型读取时回退 HTTPS,否则旧数据库启动会因迁移校验失败崩溃。