impeccable 原生 Android 设计准则:用 Material 3 让 AI 交付可信的 Android 体验

发布时间:2026/9/8 15:48:54

impeccable 原生 Android 设计准则:用 Material 3 让 AI 交付可信的 Android 体验 impeccable 原生 Android 设计准则用 Material 3 让 AI 交付可信的 Android 体验【免费下载链接】impeccableThe design language that makes your AI harness better at design.项目地址: https://gitcode.com/GitHub_Trending/im/impeccableimpeccable 是面向 AI 编程/设计助手的一套设计语言与技能体系其目标正如项目描述所言——让 AI harness 更懂设计。当目标表面是原生 Android 应用时技能会加载 android.md 作为平台规则手册无论 Jetpack Compose、Android Views、React Native、Expo 还是 Flutter只要最终装到 Android 硬件上都以这份准则为校验基准。读完本文你将掌握 impeccable 对原生 Android 界面的全部硬性规范布局、触控、排版、色彩、组件与动效以及一套可复制的adb真机/模拟器验证流程并能理解这份参考在技能路由体系中如何被调用与测试。一、这份文档在 impeccable 中的位置与职责impeccable 的技能目录下reference/汇集了按领域拆分的规则文档其中android.md是原生平台三件套之一ios.md覆盖 Apple 硬件、android.md覆盖 Android 硬件而跨平台、需要同时遵守双方系统保证的情形则对应adaptive。这一点可以从两个副本得到印证仓库根目录的 skill/reference/android.md 与各 AI 客户端目录如 .kiro/skills/impeccable/reference/android.md、plugin/skills/impeccable/reference/android.md中的副本内容一致区别仅在于skill/下的正本为每条规则标注了形如!-- rule:android-layout-adaptive-nav --的机器可读规则 ID。从 .kiro/skills/impeccable/SKILL.md 的说明可以看出它的调用时机命令表中的adapt [target]、audit [target]都区分Web 与原生变体adapt.native.md明确写着——当平台为ios/android/adaptive时应先阅读目标平台的 ios.md 或 android.mdinit在记录到原生平台时也会自行加载对应参考文档。也就是说android.md并不是一份孤立的设计博客而是adapt、audit、animate、polish等一系列命令在 Android 项目上共用的事实标准与评分依据。核心原则一句话概括在原生平台访客模式会收窄表现层可以覆盖的范围——结构、导航与交互在任何模式下都由 Material Design 3 主导品牌只能通过 Material 的主题化层color roles、type scale、shape、motion来表达。即使一个处处 Material的跨平台应用同时发往 iPhone它在 Apple 硬件上依然欠着 iOS 的操作系统级保证安全区 inset、Reduce Motion、边缘滑动返回。二、Android slop 测试一眼识别套皮界面文档给出了一个可操作的质量门槛slop test一个流利的 Android 用户会信任这个应用还是会被不合规格的组件绊住最常见的穿帮是披着 Android 皮肤的 iOS 应用从 iPhone 照搬来的仅底部导航忽略系统Back 手势的返回箭头Cupertino 形状的开关switch与对话框dialog。结论非常直接Material 3 就是规则书——先使用它的组件再把品牌通过主题化渗透进去而不是用 iOS 控件等价物或自创控件。这与ios.md中reinventing these for flavor is the most common native slop的判断互为镜像只是 Android 侧的红线是Material 3 组件库。三、布局与结构Layout structure四条布局硬规则均带有可追踪的规则 ID见 skill/reference/android.mdMaterial 导航与宽度匹配rule:android-layout-adaptive-nav紧凑宽度compact width用底部导航栏Navigation bar3–5 个目的地展开宽度expanded width切换为导航 rail 或 drawer。绝不把手机版的底部栏原样放到平板上。系统返回永远可用rule:android-layout-system-back尊重 predictive Back 手势与 Back 按钮不允许困住用户或劫持该手势。对应 iOS 侧的edge-swipe back stays alive。Edge-to-edge 窗口 insetrule:android-layout-window-insets正确处理状态栏、导航栏、display cutout挖孔/刘海与 IME软键盘inset保证内容永远不会躲到系统栏或键盘后面。顶部应用栏提供屏幕语境rule:android-layout-top-app-bar当屏幕只有一个主操作时配合一个 FAB 使用。这组规则的意图是自适应不是缩放——adapt.native.md 强调结构要由 size class / 窗口尺寸类别驱动而不是靠机型判断并把把拉长的手机布局放上平板列为NEVER条款。四、触控目标48×48 dp 与 8 dp 间距规则rule:android-touch-target-48dpandroid.md每个触控目标最小 48×48 dp目标之间至少留 8 dp。对比 iOS 侧的 44×44 pt 即可看出这是平台差异所在——Android 的可访问性指南把可点区域下限定在 48dpimpeccable 直接将其固化为不可妥协的验收线。它是 slop test 中可机械化校验的指标之一而检测器 hook 恰好可以承担这类规则扫描见 .kiro/skills/impeccable/SKILL.md 中/impeccable hooks的说明。五、排版Material type scale、Roboto 与 sp 单位三条排版规则Material type scalerule:android-typo-type-scaleDisplay、Headline、Title、Body、Label 五类角色每类再分 large/medium/small。文本一律映射到角色上绝不在每个屏幕手挑字号。Roboto 是系统字体rule:android-typo-system-font品牌字体通过 type scale 注入主题保证正文、标签与控件始终易读、一致。sp 单位而非固定 pxrule:android-typo-scalable-sp让文字跟随系统字号设置。之所以强调角色映射而非手挑字号是为了让整套排版在 light/dark、大字号、不同密度设备上都能自洽——这也是后文字号缩放实测能直接暴露固定布局问题的原因。六、色彩与主题化色板角色、动态取色与深浅双主题四条色彩规则rule:android-color-*见 android.mdMaterial color rolesprimary、on-primary、surface、surface-variant、secondary-container、outline、error。角色 token 会自动解析浅/深色与对比度变体一旦裸写 hex 色值这套自适应就断了。Dynamic ColorMaterial You在合适处从 Android 12 用户的壁纸派生配色方案同时保留静态回退static fallback。深色主题是一等公民要专门设计与测试而不是简单反相never a quick invert。Tonal elevation色调高程用标准 surface tonal 层级表达高程必要时加阴影禁止随意添加投影。规则的统一指向是用平台给的 token 表达品牌品牌色通过 Material 主题层注入而不是绕过它。这也呼应了文档开头brand expresses through Materials theming的立场。七、组件与动效Material 组件库、单一 FAB、Snackbar 语义与无障碍动效7.1 组件边界必须使用 Material 组件rule:android-components-materialButtonsfilled / tonal / outlined / text、FAB、Switches、Chips、Snackbars、Bottom sheets、Material dialogs、Navigation bar / rail / drawer。禁止移植 iOS 控件也禁止自造等价物——这正是第二节 slop test 的落地清单。7.2 单一 FAB 与反馈层级一个 FAB 一个主操作rule:android-components-single-fab不堆叠多个 FAB也不把 FAB 浪费在次要任务上。Snackbar 承担瞬时反馈rule:android-components-snackbar需要时可带 action不要用 toast 承担这类反馈toast 在 Android 语义里不是可操作通知的载体。对话框只用于必须打断用户才能继续的决策。7.3 动效模式与无障碍动效遵循 Material motion patternsrule:android-motion-material-and-reducecontainer transform、shared-axis、fade-through配合标准 easing 与时长同时尊重系统移除动画设置——此时回退为 crossfade 或直接切换。换言之动效的可达性对应 iOS 的 Reduce Motion与 Material 的 motion language 必须同时成立。八、验证构建一套完整的 adb 实测流程文档的 Verifying the build 一节给出了最可操作的命令级工作流这是全文最有工程价值的部分值得逐条拆解8.1 截图必须来自模拟器或真机绝不来自浏览器规则rule:android-verify-emulator-capture# 构建安装后用 adb 截屏设备列表中有多台时用 -s serial 指定 adb exec-out screencap -p path adb -s serial exec-out screencap -p path要求覆盖应用发布到的每一种设备类别——至少一台手机若目标含平板则至少一台平板并把截图写到评审流程review flow期望的位置。8.2 深色主题与字号缩放必须进入验收规则rule:android-verify-theme-and-scale# 切换深色模式 adb shell cmd uimode night yes # 把系统字号调到 1.3 倍测完务必还原 1.0 adb shell settings put system font_scale 1.3 adb shell settings put system font_scale 1.0字号 1.3 正是用来暴露固定布局藏住的被截断标签的探针——与第五节sp 跟随系统字号形成闭环验证。多台设备连接时这些命令同样要带上-s serial。8.3 模拟器与真机的分工规则rule:android-verify-hardware-honesty模拟器提供广度设备矩阵但手势、刷新率与性能必须依赖真机。产出证据时必须声明证据来自哪一类。九、与技能体系的联动规则 ID、变体命令与验收闭环android.md的技术含量还体现在它并非一次性建议而是被系统性消费规则 ID 贯穿命令体系如 adapt.native.md 要求把 Web 页面移植到 Android 时reconform, dont reflow用平台导航模型替换 Web 导航、用平台控件替换 HTML 控件、用 sp 替换 px 字号最后用 slop test 作为验收线audit.native.md技术审计变体明确从 Compose / React Native / Flutter 等源码打分时以 ios.md / android.md 为评分基准。也就是说同一份规则既驱动设计命令adapt/animate/polish也驱动审计命令audit/critique与检测 hook 的rule:android-*标记。跨平台约束在本文件中显式声明A Material-everywhere cross-platform app that also ships to iPhone still owes iOS its OS guarantees on that hardware——即便应用全程 Material只要发布到 iPhone就必须在 Apple 硬件上兑现 iOS 的操作系统保证safe-area insets、Reduce Motion、edge-swipe back此时应合并参考 ios.md。十、小结一份可执行、可校验、平台对标的 Android 设计契约回到项目定位——让 AI 助手产出配得上被称赞的设计——android.md正是把 Android 平台的专业判断编码成机器可执行规则的那一环结构与交互交给 Material 3品牌只通过主题化层发声color roles / type scale / shape / motion每个可点目标 ≥ 48×48 dp、间距 ≥ 8 dp排版走 type scale、用 sp、以 Roboto 为底反馈与层级用平台语义Snackbar 管瞬时反馈、dialog 只管必须打断的决策、一个屏幕只许一个 FAB动效走 Material 模式并尊重移除动画设置验证以模拟器/真机为准深色模式与 1.3 倍字号是必测项证据必须标注来源模拟器或硬件。对任何正在用 Compose / Android Views / React Native / Expo / Flutter 开发 Android 应用、并希望让 AI 协作者按平台规范而非网页习惯做设计的开发者这份准则配合仓库中的 SKILL.md 路由说明、adapt.native.md 移植守则与 ios.md 对照文档即可搭出一套完整的原生设计—代码审计—实测验收闭环。【免费下载链接】impeccableThe design language that makes your AI harness better at design.项目地址: https://gitcode.com/GitHub_Trending/im/impeccable创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
延伸阅读

更多相关文章

2026/9/8 15:43:53

华为 云调试:单机调试流程(二)

一、调试流程 单机调试划分为 5 个标准步骤: 序号步骤详情1申请设备在单机调试页面申请调试设备(同一账号同时最多占用2台设备)2系统初始化设备申请设备成功后,系统自动进行设备初始化3上传新应用或安装已上传应用可上传新应用包…

2026/9/8 15:43:53

MQTT 协议核心机制详解:发布订阅、QoS 等级与遗嘱消息入门到实战

MQTT 协议核心机制详解:发布订阅、QoS 等级与遗嘱消息入门到实战从发布订阅模式到 QoS 可靠性等级,从遗嘱消息到持久会话,一篇掌握 MQTT 协议的核心设计与物联网场景选型。附 QoS 0/1/2 握手流程图与常见问题解答。一、为什么物联网需要 MQTT…

2026/9/8 17:09:14

ISO26262功能安全: HARA实战后半程—S/E/C评分ASIL判定与SG输出

个人主页:云纳星辰怀自在 座右铭:“所谓坚持,就是觉得还有希望!” 前言 案例:某BMS项目HARA评审会上,团队对“BMS通信丢失导致过充”这一危害事件的ASIL等级争论不休。A工程师认为“电池过充很危险&#xf…

2026/9/8 17:09:14

小白程序员必看:未来AI Agent多样化发展路线图

本文探讨了未来2-3年内AI可能的发展方向——Agent多样化。从当前LLM大模型时期的人为模型交互,到未来AI模型和Agent的自发协作,文章详细阐述了MCP和A2A协议的作用,以及Agent可能出现的协作、寄生/共生、1N和自组织等模式。此外,还…

2026/9/8 17:09:13

GitNexus架构拆解:如何让AI修改代码不再“一改就崩”

1. 从“一键生成”到“一改就崩”:AI 编程的信任危机 最近这一年,AI 编程工具几乎成了开发者标配。GitHub Copilot、Cursor、通义灵码这些工具,确实能帮你快速生成样板代码、补全函数、写单元测试,用起来是真香。但真到了改代码这…

2026/9/8 17:09:13

【Unity】TankBattle联机坦克大战(九)关卡的完整逻辑(下)

更新日期:2026年9月7日。 项目源码:获取源码。 索引 关卡的完整逻辑 六、玩家逻辑模块 PlayerRegion 1.基础属性 2.UI界面设计 3.关卡开始时初始化 4.关卡结束时清理 5.销毁玩家坦克 七、敌人AI模块 EnemyAIRegion 1.基础属性 2.UI界面设计 3.关卡开始时初始化 4.关卡结束时清…

2026/9/8 17:04:13

密钥容灾实战:用paperkey在KeyarchOS上实现OpenPGP私钥备份与恢复

1. 密钥容灾不是理论:一次真实的密钥丢失就够你喝一壶先讲一件真事。几年前我负责一台内部签名机的日常维护,上面跑着团队共用的GPG私钥,所有发布包的校验签名都靠它。某天机房断电重启后,磁盘出现坏道,虽然系统还能起…

2026/9/8 7:15:10

超人会飞不算本事:系统稳定依赖清晰规则与边界设计

开头先不绕弯子。“#斯坦李吐槽dc 所以超人是无缘无故会飞的嘛哈哈哈哈哈哈哈锤哥真是技术人才啊!#雷神 #复联”这类调侃式短标题,第一波冲击力在于它把两个宇宙的角色塞进同一个吐槽箱里,但细想一下就能发现,它真正碰到的根本不是…

2026/9/8 7:15:15

超人VS蜘蛛侠:拆解超级IP的影响力与传播方法论

把“蜘蛛侠 vs 超人”放在 CSDN 上聊,可能很多人第一反应是走错片场了。但如果把这两个角色看成“两个持续运营了 80 多年的文化产品”,你会发现,这场比较本质上是两个不同 IP 策略的长期结果对比:超人赢在定义了整个超级英雄题材…

2026/9/8 7:15:10

基于CNN的调制信号识别:MATLAB实现时频图分类实战

简介:本资源是一套面向通信工程与信号处理方向学习者、研究者的深度学习实践方案,聚焦调制信号自动检测与识别这一典型无线通信任务,解决传统方法依赖人工特征、低信噪比下性能下降等痛点。压缩包共12个文件(10.73MB)&…

2026/9/8 0:01:49

踩多轮坑才跑通|OpenClaw 3.1.0 双平台本地 AI 自动化搭建实操实录

🔹 工具简述 OpenClaw 是一款备受开发者与办公人群青睐的开源本地智能工具,凭借离线本地运行、可视化图形面板、全流程自主任务处理三大核心特点,积累了众多忠实用户。与普通对话类 AI 产品不同,它能够直接调用电脑的软硬件操作权…

2026/9/8 0:01:50

拒绝复杂命令行,Hermes Agent 一键包快速解锁智能办公能力

🔍前言 不少想要体验 Hermes Agent 办公能力的使用者,往往会被复杂的环境配置拦住使用脚步。手动下载匹配依赖、反复调整系统目录、处理命令行持续报错、修复权限异常、补全丢失核心文件等一系列操作,对普通使用者而言门槛较高,很…

2026/9/7 16:23:03

USB Type-C PCB布局分区设计:电源、高速信号与PD协议全攻略

做硬件这行,Type-C接口算是典型的“看着简单,做起来全坑”的东西。光引脚就24个,高低速信号、电源、控制线全部塞在一个小小的连接器里,如果PCB布局不做规划,打样回来基本就是“插上没反应”、“高速掉线”、“静电一打…

2026/9/7 22:46:00

系统编程学习原型如何补齐稳定性边界

系统编程学习原型如何补齐稳定性边界预算有限时&#xff0c;我先优化明显多余的复制&#xff0c;而不是猜测性地换容器。用借用传递只读数据通常就能减少分配&#xff1a; fn parse(line: &str) -> Result<Item, Error> { /* ... */ }用基准确认热点确实在分配&am…

2026/9/7 22:45:59

雨花区哪家财务公司代理记账比较好?

在雨花区&#xff0c;企业处理财税事务常常面临诸多挑战&#xff0c;选择一家靠谱的财务公司至关重要。湖南巨勤财务管理咨询有限公司就是本地正规实体财税服务机构&#xff0c;深耕本地工商财税行业多年&#xff0c;熟悉当地工商局、税务局最新政策与申报流程。主营公司注册、…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
咨询二维码