📚 课程介绍
本课程深入解析Android Framework面试题,帮助学员掌握Android高级职位所需技能,包括线程通信、进程通信、UI体系、应用组件、系统服务等。
📋 学习前提
1. Android开发基础(了解Android应用开发的基本流程和组件)
2. Java编程基础(熟悉Java语言和面向对象编程)
3. 线程与进程知识(了解操作系统中的线程和进程概念)
📖 课程目录
第1章 学习指南
1-1 课程导学
第2章 系统服务相关面试问题
2-1 谈谈对zygote的理解
2-2 说说Android系统的启动
2-3 你知道怎么添加一个系统服务吗?
2-4 系统服务和bind的应用服务有什么区别?
2-5 ServiceManager启动和工作原理是怎样的?
第3章 应用进程相关面试问题
3-1 你知道应用进程是怎么启动的吗?
3-2 应用是怎么启用Binder机制的?
3-3 谈谈你对Application的理解
3-4 谈谈你对Context的理解
第4章 Activity组件相关面试问题
4-1 说说Activity的启动流程
4-2 说说Activity的显示原理
4-3 应用的UI线程是怎么启动的
第5章 其它应用组件相关面试问题
5-1 说说service的启动原理
5-2 说说service的绑定原理-1
5-3 说说service的绑定原理-2
5-4 说说动态广播的注册和收发原理
5-5 说说静态广播的注册和收发原理
5-6 说说Provider的启动原理
第6章 UI体系相关面试问题
6-1 说说屏幕刷新的机制-1
6-2 说说屏幕刷新的机制-2
6-3 surface跨进程传递原理
6-4 surface的绘制原理
6-5 你对vsync机制有了解吗?
第7章 进程通信相关面试问题
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 课程总结
