Knowledge
Chapters for every direction the job board covers — engineering, data, design, sales, marketing, operations and more. Every topic shows how many live jobs ask for it. The first chapter is free; a paid plan opens the rest.
Track syllabus
Mobile / iOS / Android
Mobile interview prep across iOS and Android lifecycles, Swift and Kotlin, cross-platform trade-offs, performance, and release at scale.
01 基础篇 Free
面试官想看你是不是真的理解系统什么时候回收你的应用:切后台多久会被挂起、被杀掉后从哪里恢复,而不是只会背几个回调的名字。
- App 与 Scene 两套生命周期的分工
- 前台、后台、挂起、终止的状态迁移
- 被系统回收后的状态恢复
- Delegate 与 Scene 的职责边界
我会按用户能感知的四种状态讲:前台活跃、后台运行、挂起、终止。进入后台后系统只给几秒收尾时间,我会在这个窗口里落盘草稿并结束长任务;被系统回收后,靠 Scene 的会话恢复把用户带回原来的页面,而不是重新走一遍冷启动。
考的是进程随时可能被系统回收这个前提:配置变更时谁负责重建、状态存在哪里、返回栈如何影响导航,这些决定应用在低端机上稳不稳。
- Activity 与 Fragment 生命周期的对应
- 配置变更与进程重建后的状态保存
- 任务栈与启动模式(launchMode)
- onSaveInstanceState 的取舍
我会先讲清系统随时可能杀死后台进程,再说明用 ViewModel 扛住旋转屏幕这类配置变更、用 SavedStateHandle 扛住进程重建;导航上给推送直达页配 singleTask,避免用户点通知后返回栈里堆出一串重复页面。
面试官想确认你能在写代码时就预判对象生命周期:什么时候用 weak、什么场景才敢用 unowned、闭包捕获 self 为什么容易造成泄漏。
- ARC 的引用计数与释放时机
- 循环引用与 weak/unowned 的选择
- 闭包捕获列表的实际影响
- 值类型语义与写时复制
我会用页面持有闭包、闭包又捕获 self 的例子讲循环引用,说明在捕获列表里用 [weak self] 打破环;再对比 struct 的值语义与写时复制,说明列表数据用值类型传递为什么更安全,代价只是一次拷贝。
协程已是 Android 的默认异步方式,面试官看的是你会不会给协程指定作用域、页面销毁时能否正确取消,而不是把它当成线程池的语法糖。
- 挂起函数与结构化并发
- CoroutineScope 与页面生命周期绑定
- Dispatchers 选择与主线程安全
- 取消传播与超时处理
我会把每个协程挂在生命周期明确的 Scope 上,页面销毁就随 ViewModel 一起取消;网络和数据库切 Dispatchers.IO,UI 更新回到 Main;接口用 withTimeout 兜底,取消异常按结构化并发向上传播,不让子任务在后台偷偷跑。
考察你能否解释一次真实的内存增长:是泄漏还是缓存没有上限,以及有没有用工具把引用链定位到具体那一行代码。
- 堆内存与 GC 的基本模型
- 常见泄漏:单例持 Context、监听器
- LeakCanary 与堆快照分析
- OOM 与图片内存控制
低端机用户反馈 OOM 后,我用 LeakCanary 定位到一个静态单例持有了 Activity 的 Context,改成 applicationContext 后泄漏消失;图片侧接入采样解码与 Bitmap 复用,列表页峰值内存从 320MB 降到 180MB。
面试官在确认你的代码库是否可维护:状态放在哪一层、UI 只负责渲染还是也管业务、模块之间靠什么解耦,这决定团队变大后还能不能改得动。
- MVVM 与 MVI 的数据流差异
- 单向数据流与状态收敛
- 模块化拆分与依赖边界
- 依赖注入与可测试性
我会说清我们把状态收敛在 ViewModel 里,UI 只订阅不可变状态、向上发事件;模块按 feature 拆分,只通过接口互相依赖,测试时用依赖注入换掉真实实现;新人加一个页面不用碰其他模块的代码。
The first chapter is free. A paid plan opens the rest.
The first chapter is free. A paid plan opens the rest.
The first chapter is free. A paid plan opens the rest.
The remaining chapters cover the full knowledge map and a preparation checklist.
See plansHiring now
Related jobs hiring now
Roles whose skill requirements overlap with this track. Review a chapter, then check the live openings.
German-Speaking Recruiter
Admin & Support Functions
Talent Acquisition Partner, GTM
Talent Acquisition
Senior Application Security Engineer
Security and IT
Software Engineer, iOS
Engineering
Engineering Manager, Issuing Platform
Engineering
Staff Mobile Engineer, Spend Foundation
Engineering