剖析Framework面试 冲击Android高级职位
【课程介绍】本次课程着重为大家讲解Android系统底层原理,补齐Android开发的Framework层知识短板。一方面对高级工程师的面试提供直接帮助,另一方面有效地提高大家的技术段位。兼顾面试知识技能与开发内功的提升,课程适合每一位Android中高级开发者。
【课程目录】
- 第1章 学习指南本章会告诉大家为什么应该学习这门课,课程有哪些特色,能给大家带来什么收获,还会讲到课程的整体内容安排,最后还会给出一些学习建议,让大家能更好地学习这门课。
- 1-1 课程导学
- 1-1 课程导学
- 第2章 系统服务相关面试问题本章重点讲解系统核心进程,以及一些关键的系统服务的启动原理和工作原理相关的面试内容。
- 2-1 谈谈对zygote的理解
- 2-2 说说Android系统的启动
- 2-3 你知道怎么添加一个系统服务吗?
- 2-4 系统服务和bind的应用服务有什么区别?
- 2-5 ServiceManager启动和工作原理是怎样的?
- 2-1 谈谈对zygote的理解
- 第3章 应用进程相关面试问题本章主要讲解应用进程的启动,以及伴随进程启动过程中的一些重要机制的初始化原理,比如binder机制,Application,以及Context等方面的面试问题。
- 3-1 你知道应用进程是怎么启动的吗?
- 3-2 应用是怎么启用Binder机制的?
- 3-3 谈谈你对Application的理解
- 3-4 谈谈你对Context的理解
- 第4章 Activity组件相关面试问题这一章主要讲解Activity相关的机制,包括Activity的启动流程,显示原理等相关面试问题,通过本章的学习,我们不但能熟悉它,更能深入了解它。
- 4-1 说说Activity的启动流程
- 4-2 说说Activity的显示原理
- 4-3 应用的UI线程是怎么启动的
- 第5章 其它应用组件相关面试问题本章主要讲除了Activity之外的应用组件相关面试问题,包括service的启动和绑定原理,静态广播和动态广播的注册和收发原理,provider的启动和数据传输原理等等。
- 5-1 说说service的启动原理
- 5-2 说说service的绑定原理-1
- 5-3 说说service的绑定原理-2
- 5-4 说说动态广播的注册和收发原理
- 5-5 说说静态广播的注册和收发原理
- 5-6 说说Provider的启动原理
- 第6章 UI体系相关面试问题本章主要讲UI体系相关面试问题,包括UI刷新机制,涉及到vsync和choreographer原理。另外还会讲到surface的相关原理,涉及到应用和WMS、surfaceFlinger通信。
- 6-1 说说屏幕刷新的机制-1
- 6-2 说说屏幕刷新的机制-2
- 6-3 surface跨进程传递原理
- 6-4 surface的绘制原理
- 6-5 你对vsync机制有了解吗?
- 第7章 进程通信相关面试问题本章主要讲进程通信相关面试问题,包括binder的整体架构和通信原理,oneway机制,binder对象的传递等等。
- 7-1 Android Framework用到了哪些跨进程通信方式
- 7-2 谈谈你对Binder的理解
- 7-3 一次完整的ipc通信流程是怎样的
- 7-4 binder对象跨进程传递原理是怎么样的
- 7-5 说一说binder的oneway机制
- 第8章 线程通信相关面试问题本章主要讲线程通信原理相关面试问题,包括消息队列的创建,消息循环机制,消息延时,同步和异步消息,消息屏障等等内容。
- 8-1 线程的消息队列是怎么创建的?
- 8-2 说说android线程间消息传递机制
- 8-3 handler的消息延时是怎么实现的?
- 8-4 说说idleHandler的原理
- 8-5 主线程进入loop循环了为什么没有ANR?
- 8-6 听说过消息屏障么?
- 第9章 技巧,心得相关除了上面章节之外的所有问题,都会放在本章讲到,除了原理之外,还会分享一些代码技巧。
- 9-1 怎么跨进程传递大图片
- 9-2 说说threadLocal的原理
- 9-3 来说说looper的副业
- 9-4 怎么检查线程有耗时任务
- 9-5 怎么同步处理消息
- 第10章 综合性面试问题本章主要是讨论一些综合性较强的面试题,这类题目不会问到具体某一块原理,需要充分结合自己的思考和积累,没有唯一的答案。本章我们就来讨论这些开放的题目该怎么答,有哪些思路可以借鉴的。
- 10-1 你去了解framework是为了解决一个什么样的问题,怎么解决的
- 10-2 Android Framework用到了哪些设计模式
- 10-3 Framework中有什么你觉得设计的很巧妙的地方,请举例说明-1
- 10-4 Framework中有什么你觉得设计的很巧妙的地方,请举例说明-2
- 第11章 课程总结课程总结
- 11-1 课程总结