归队
两年没写 Android,最危险的不是忘了某个 API,而是脑子里只剩一堆互不相连的名词:ViewModel、StateFlow、remember、WorkManager……
这本书只做一件事:沿着一个聊天页面的一次状态往返,把这些名词重新接成一条能推理、能手写、也能在面试里讲清楚的链。
先换掉六个旧直觉
下面不是术语表,而是这本书要完成的六次换脑。面试题之所以难,往往不是 API 记不住,而是问题一换皮,你就认不出它仍然在问同一件事。
suspend 会把活搬到后台ViewModel 是放业务逻辑的抽屉为什么贯穿案例是一条医疗消息
Celo Health 对外描述的是一套面向医疗团队的安全通信产品,覆盖 Android、iPhone 与 Web。公开页面还明确提到:临床照片与个人相册分开、患者信息不永久留在设备上、应用支持生物识别或 PIN,并要在弱网环境下保持通信可靠。
这几条约束正好把 Android 面试里最值钱的题绑在一起:生命周期、相机与权限、列表身份、离线队列、消息顺序、幂等重试、通知、后台执行、身份验证、日志脱敏与进程死亡。书里只使用这些公开约束来设计练习,不猜测 Celo 的内部代码或框架。
公开依据:Celo 产品页、安全与合规页、Google Play 页面。
写给谁
写给有 Android 经验、离开一段时间、要在几天内恢复判断力的人。默认你懂编程、见过 Gradle 与 MVVM,但不假定你记得现代 API 的名字。
不打算做什么
不从变量和循环讲 Kotlin;不把官方架构图逐格背一遍;不内置一台网页 IDE;也不把版本号冒充能力。需要手感的地方都给最小练习,留给 Android Studio 或 Kotlin Playground。
怎么在面试前读
只有一个晚上:读 01、02、06、07、09、10、13、14、16、18。还有三天:每天一卷,最后一天把第 18 章的题真正说出声。能打开 Android Studio:每章只做「⌨ 自己跑一遍」,不要另起大项目。
重新站稳
GROUND先恢复 Android 独有的约束:系统拥有组件寿命,主线程拥有 UI,进程随时可能消失。
把 Kotlin 接回来
KOTLINKotlin 用类型删掉错误路径;协程用父子关系删掉失控的后台工作。
让 Compose 重跑
COMPOSE界面不再被逐个修改,而是被反复描述。真正的题是:什么该记住、在哪里读、何时取消。
把一条消息送回来
DELIVER同一条消息贯穿 UDF、Room、网络同步、依赖注入、模块边界与医疗数据威胁模型。
走进面试
INTERVIEW最后不再增加框架:只把判断变成证据,把长答案压成对话。
版本快照,不是背诵清单
截至 2026 年 9 月,Android 官方 Compose 设置页示例使用 Kotlin 2.4.10 与 Compose BOM 2026.09.00;Compose 1.12.0 起要求 compileSdk 37 与 AGP 9。Android 17 对应 API 37。这些数字只用于帮你识别新项目,不是面试能力本身。真正该记的是:Compose 编译器插件跟 Kotlin 版本走,Compose 库用 BOM 对齐,而 compileSdk 与 targetSdk 解决的是两件不同的事。
核对来源:Compose 设置、Android 17 SDK。本书不会因为版本号变化而失去主线。