这份知识体系包含:
Java部分:集合,线程,异常,泛型,反射,jvm等(暂时没精力总结,以面试题为主)
Android部分:
基础部分:ABCS(四大组件),Handler,Fragment,RecyclerView,SQLite,项目架构(MVVM&MVP)等(基本涵盖所有的基础知识)
中级进阶:事件分发,View绘制,常用的库(Android10大常用库等)使用,JNI,屏幕适配,布局优化,内存优化,Android前沿知识(Flutter,热修复,插件化,组件化,模块化)等等。
高级进阶: 熟悉各种轮子的设计原理,自己造轮子,Framework开发相关知识等等算法与数据结构部分
以分享链接为主。计算机网络部分
五层网络模型,三次握手&四次挥手,请求头&响应头,Socket&WebSocket…面试题部分
简书Android面试题集
CSDN Android面试题集
知识体系加面试题总结,能力越来越强,因为努力很值得>-<。
文章改造中,请给笔者时间(2019-04-30)。点击查看改造中的文章
以下是Android面试系列文章知识体系图以及文章的具体链接:
Android面试系列文章知识体系图:
2018年3月份(Version-1.0.0):
2018年9月份(Version-1.0.1):
当然这次升级添加了很多东西,你可能疑问面试为什么会有这么多东西,其实笔者的这份不仅仅可以用来面试,当作是进阶路线也是可以的,理论上讲这份完全是可以应付面试的,希望对你有所帮助。关于这份面试知识体系的说明请看后面。
脑图非常大,这里列不完,请读者下载笔者给的脑图链接,然后在详细看每一个知识体系结构。
详细内容,读者可以下载上述百度云分享链接的那个文件,并使用Xmind8打开。
注意:对于正在入门学习Android的同学,请看笔者另外一篇文章:https://blog.csdn.net/clandellen/article/details/78258187 (里面介绍了如何去自学Android,有Java视频教程,Android Studio版本的Android视频教程),Android基础部分对你来说可以去看一看,对于1到2年开发经验的读者,基础部分,必须掌握和明白,而有些部分,你可以选择性去看和掌握,比如:Android源码部分,你不必去弄清android系统的启动过程,只需要了解init进程什么,Zygote进程是什么,AMS是什么,作用是啥即可,而常用框架源码部分呢,如果你面的公司是有严格要求的,我指的是类似于BAT,你要选择其中3,4甚至5,6个着重去学习,其它的作为了解粗略看一下就行了,http自然不用我说了吧,Java设计模式等,数据结构与算法部分,也不必太耗时间去整明白,知道多线程环境下最安全的单例模式,而且知道一些框架中采用了何种设计模式,比如RxJava采用的观察者设计模式等,能手写冒泡,二分法,最好会快排,知道堆和栈,链表,队列等的特性即可,也要注意合理安排时间,有些链接里文字过多的,粗略的看看,达到能自己说出来重点即可,比如:Android基础部分,对于Context的理解,你需要知道Android中有几种上下文,它们的作用分别是什么即可,而对于3年经验甚至更多的读者,对我而言你已经是个大佬了,首先我要跟你打声招呼:大佬你好,基础部分,经验部分对你而言已经不再是难题,你应该去明白Android系统的启动流程的源码分析,一个app是如何启动等,常用框架的源码至少得弄懂大半,深入源码,并有自己的一套分析思维模式。最后总结:如果你对自己有严格要求,希望你找到offer后,把这篇文章里你不懂的部分还是去好好学习,只有不停的学,才可以让自己更加去胜任平时的工作。
1.Android知识体系总结之Android部分之Activity篇
http://blog.csdn.net/clandellen/article/details/79257489
2.Android知识体系总结2之Android部分之Broadcast篇
http://blog.csdn.net/clandellen/article/details/79279416
3.Android知识体系总结之Android部分之ContentProvider篇
https://blog.csdn.net/ClAndEllen/article/details/82765220
4.Android知识体系总结之Android部分之Service篇(已更新,all&Face)
http://blog.csdn.net/clandellen/article/details/79276411
5.Android知识体系总结之Android部分之Fragment篇(已更新,all&Face)
http://blog.csdn.net/clandellen/article/details/79269680
6.Android知识体系总结之Android部分之WebView篇 (已更新,all&Face)
http://blog.csdn.net/ClAndEllen/article/details/79287020
7.Android知识体系总结之Android部分之Binder机制篇 (已更新,A3&A4&Face)
http://blog.csdn.net/ClAndEllen/article/details/79343389
8.Android知识体系总结之Android部分之Handler机制篇(已更新,all&Face)
http://blog.csdn.net/ClAndEllen/article/details/79343538
9.Android知识体系总结之Android部分之AsyncTask篇(已更新,all&Face)
http://blog.csdn.net/ClAndEllen/article/details/79346383
10.Android知识体系总结之Android部分之HandlerThread篇(已更新,all&Face)
http://blog.csdn.net/ClAndEllen/article/details/79346492
11.Android知识体系总结之Android部分之IntentService篇(已更新,all&Face)
http://blog.csdn.net/ClAndEllen/article/details/79346624
12.Android知识体系总结之Android部分之View绘制机制篇(龟速更新中…可以看看,all&Face)
http://blog.csdn.net/ClAndEllen/article/details/79365250
13.Android知识体系总结之Android部分之事件分发机制篇(已更新,all&Face)
http://blog.csdn.net/ClAndEllen/article/details/79365369
14.Android知识体系总结之Android部分之ListView篇(已更新,all&Face&Update)
http://blog.csdn.net/ClAndEllen/article/details/79365499
15 Android知识体系总结之Android部分之RecyclerView篇(已更新,all&Face&Update)
https://blog.csdn.net/ClAndEllen/article/details/82859578
16 Android面知识体系总结之Android部分之ViewPager篇(已更新,all&Face&Update)
https://blog.csdn.net/ClAndEllen/article/details/82862804
17 Android知识体系总结之Android部分之动画机制篇(待更新…,all&Face)
http://blog.csdn.net/ClAndEllen/article/details/79411999
18 Android知识体系总结之Android部分之自定义View篇(待更新…,A2&A3&A4&Face)
http://blog.csdn.net/ClAndEllen/article/details/79412399
19 Android知识体系总结之Android部分之Android中的布局篇(已更新,all&Face)
https://blog.csdn.net/ClAndEllen/article/details/82979812
20 Android知识体系总结之Android部分之网络数据解析篇(已更新,all&Face)
https://blog.csdn.net/ClAndEllen/article/details/82980593
21 Android知识体系总结之Android部分之Android中的序列化篇(已更新,all&Face)
https://blog.csdn.net/ClAndEllen/article/details/82980677
22 Android知识体系总结之Android部分之Android系统版本特性篇(已更新,all&Face)
https://blog.csdn.net/ClAndEllen/article/details/82982518
23 Android知识体系总结之Android部分之JNI和NDK篇(已更新,A2&A3&A4&Face)
https://blog.csdn.net/ClAndEllen/article/details/82966507
24 Android知识体系总结之Android部分之Android本地存储篇(已更新,all&Face)
https://blog.csdn.net/ClAndEllen/article/details/82997955
25 Android知识体系总结之Android部分之Intent篇(已更新,all&Face)
https://blog.csdn.net/ClAndEllen/article/details/83000920
26 Android知识体系总结之Android部分之对话框篇(已更新,all&No)
https://blog.csdn.net/ClAndEllen/article/details/82966342
27 Android知识体系总结之Android部分之通知篇(已更新,all&No)
https://blog.csdn.net/ClAndEllen/article/details/83001281
28 Android知识体系总结之Android部分之Application类篇(已更新,A2&A3&A4&Face)
https://www.jianshu.com/p/f665366b2a47
29 Android知识体系总结之Android部分之Context的理解篇(已更新,A2&A3&A4&Face)
https://www.jianshu.com/p/94e0f9ab3f1d
30 Android知识体系总结之Android部分之Window的理解篇(已更新,A2&A3&A4&Face)
https://blog.csdn.net/yhaolpz/article/details/68936932
31 Android知识体系总结之Android部分之系统结构与系统源码目录篇(已更新,all&Face)
https://blog.csdn.net/itachi85/article/details/54695046/
32 Android知识体系总结之Android部分之冷启动&热启动篇(已更新,A2&A3&A4&Face)
https://blog.csdn.net/ClAndEllen/article/details/79383005
33 Android知识体系总结之Android部分之Andrid中的锁屏篇(已更新,all&No&Update)
https://www.jianshu.com/p/6c3a6b0f145e
https://blog.csdn.net/zrf1335348191/article/details/54377042
34 Android知识体系总结之Android部分之悬浮窗篇(已更新,all&No)
https://blog.csdn.net/ClAndEllen/article/details/82966403
35 Android知识体系总结之Android部分之蓝牙&相机篇(已更新,all&No&Update)
Android部分之蓝牙
Android部分之相机
如何获取手机本地图片
36 Android知识体系总结之Android部分之音视频开发篇(已更新,all&No)
https://blog.csdn.net/ClAndEllen/article/details/83023573
37 Android知识体系总结之Android部分之手机定位篇(已更新,all&No)
https://blog.csdn.net/qq_33689414/article/details/54136922
Android Studio地图开发(百度地图)
38 Android知识体系总结之Android部分之点九切图篇(已更新,all&No)
https://blog.csdn.net/leeccncdl/article/details/7303635
39 Android知识体系总结之Android部分之Material Design篇(待更新…,all&No)
Material+design非官方中文指导手册1.0 提取码:uqex
40 Android知识体系总结之Android部分之Android Drawable篇(已更新,all&No)
https://www.cnblogs.com/sharecenter/p/5620967.html
RecyclerView水波纹点击效果
Android:为Button添加圆角黑色边框及透明底色
41 Android知识体系总结之Android部分之内存优化&布局优化篇(已更新,all&Face&Update)
https://blog.csdn.net/carson_ho/article/details/79708444?from=singlemessage
42 Android知识体系总结之Android部分之屏幕相关知识&屏幕适配篇(已更新,all&Face&Update)
https://blog.csdn.net/carson_ho/article/details/51234308
43 Android知识体系总结之Android部分之进程间通信篇(已更新,A2&A3&A4&&Face)
https://blog.csdn.net/u011240877/article/details/72863432
44 Android知识体系总结之Android部分之图片开发&Bitmap&高清大图显示篇(待更新…,all&Face)
https://blog.csdn.net/ClAndEllen/article/details/79382123
1.Android知识体系总结之Java部分I/O流篇
http://blog.csdn.net/ClAndEllen/article/details/79429328
2.Android知识体系总结之Java部分多线程流篇
3.Android知识体系总结之Java部分异常篇
http://blog.csdn.net/ClAndEllen/article/details/79389561
4.Android知识体系总结之Java部分注解篇
http://blog.csdn.net/ClAndEllen/article/details/79392453
5.Android知识体系总结之Java部分类加载器篇
http://blog.csdn.net/ClAndEllen/article/details/79392630
6.Android知识体系总结之Java部分反射机制篇
http://blog.csdn.net/ClAndEllen/article/details/79393029
7.Android知识体系总结之Java部分泛型篇
8.Android知识体系总结之Java部分集合框架篇
9.Android知识体系总结之Java部分设计模式篇(已更新,all&Face)
https://blog.csdn.net/ClAndEllen/article/details/82966697
10.Android知识体系总结之Java部分Java虚拟机篇
1.Android知识体系总结之算法与数据结构部分之算法的效率篇
2.Android知识体系总结之数据结构之链表篇
https://blog.csdn.net/lishuzhai/article/details/50972779
3.Android知识体系总结之数据结构之队列篇(已更新,all&Face)
https://blog.csdn.net/javazejian/article/details/53375004
4.Android知识体系总结之数据结构之栈篇
https://blog.csdn.net/javazejian/article/details/53362993
5.Android知识体系总结之数据结构之堆篇
https://blog.csdn.net/wypblog/article/details/8076324
6.Android知识体系总结之算法之排序算法
http://blog.csdn.net/happy_wu/article/details/51841244
7.Android知识体系总结之算法之查找算法
http://blog.csdn.net/three_man/article/details/46799659
8.Android知识体系总结之数据结构之树篇
https://blog.csdn.net/u011240877/article/details/53193877
9.Android知识体系总结之算法与数据结构部分之其它算法篇(待更新)
1.什么是进程?什么是线程?进程和线程之间的区别
2.Windows剪切板的和Android的进程间通讯是不是类似
1.Android知识体系总结之实战经验部分之Android Stdio目录结构篇
http://blog.csdn.net/ClAndEllen/article/details/79368343
2.Android知识体系总结之实战经验部分之代码版本控制篇
http://blog.csdn.net/ClAndEllen/article/details/79369538
3.Android知识体系总结之实战经验部分之Android构建流程篇
http://blog.csdn.net/ClAndEllen/article/details/79369302
4.Android知识体系总结之实战经验部分之gradle篇
http://blog.csdn.net/ClAndEllen/article/details/79369643
5.Android知识体系总结之实战经验部分之proguard混淆篇
http://blog.csdn.net/ClAndEllen/article/details/79369761
6.Android知识体系总结之实战经验部分之Android屏幕适配篇(已更新,all&Face)
https://blog.csdn.net/ClAndEllen/article/details/82977894
7.Android知识体系总结之实战经验部分之Android多渠道打包与apk签名篇
1.Android知识体系总结之常用框架之网络框架篇
http://blog.csdn.net/clandellen/article/details/79373303
2.Android知识体系总结之常用框架之异步框架篇
http://blog.csdn.net/ClAndEllen/article/details/79373350
3.Android知识体系总结之常用框架之图片加载框架篇
http://blog.csdn.net/ClAndEllen/article/details/79375228
4.Android知识体系总结之常用框架之依赖注入框架篇
http://blog.csdn.net/clandellen/article/details/79375249
5.Android知识体系总结之常用框架之内存优化框架篇
http://blog.csdn.net/ClAndEllen/article/details/79375317
6.Android知识体系总结之常用框架之数据库存储框架篇(已更新,all&Face)
https://blog.csdn.net/ClAndEllen/article/details/82967459
1.Android知识体系总结之Android所具备的网络基础篇(老版本)
http://blog.csdn.net/ClAndEllen/article/details/79379691
2.Android知识体系总结之Android所具备的网络基础篇(新版本)
https://blog.csdn.net/ClAndEllen/article/details/89854552#t14
1.Android知识体系总结之异常处理ANR异常篇
http://blog.csdn.net/ClAndEllen/article/details/79381399
2.Android知识体系总结之异常处理OOM异常篇
http://blog.csdn.net/ClAndEllen/article/details/79381656
3.Android知识体系总结之内存管理之Bitmap的加载篇
http://blog.csdn.net/ClAndEllen/article/details/79382123
4.Android知识体系总结之内存管理之UI卡顿篇
http://blog.csdn.net/ClAndEllen/article/details/79382430
5.Android知识体系总结之内存管理之内存泄漏篇
http://blog.csdn.net/ClAndEllen/article/details/79382815
6.Android知识体系总结之内存管理篇
http://blog.csdn.net/ClAndEllen/article/details/79382919
7.Android知识体系总结之内存管理之冷启动过优化及其他优化篇
http://blog.csdn.net/ClAndEllen/article/details/79383005
http://blog.csdn.net/ClAndEllen/article/details/79383058
8.Android知识体系总结之Android代码分析工具:Lint检查
http://blog.csdn.net/ClAndEllen/article/details/79400555
9.Android知识体系总结之Android代码编程规范
10.Android知识体系总结之实战经验部分之调试能力之测试篇
1.Android知识体系总结之之架构搭建之MVC模式篇
http://blog.csdn.net/ClAndEllen/article/details/79396116
2.Android知识体系总结之之架构搭建之MVP模式篇
http://blog.csdn.net/ClAndEllen/article/details/79396527
3.Android知识体系总结之之架构搭建之MVVM模式篇
http://blog.csdn.net/ClAndEllen/article/details/79396831
4.Android知识体系总结之之架构搭建之谷歌官方推荐架构TODO-MVP篇
https://www.jianshu.com/p/8b81493d1297
1.Android知识体系总结之前沿的技术之Android组件化开发篇(待更新,A2&A3&A4&Face)
2.Android知识体系总结之之Android插件化&热更新篇
插件化
热更新
3.Android知识体系总结之前沿的技术之进程保活篇(待更新,A2&A3&A4&Face)
http://blog.csdn.net/ClAndEllen/article/details/79398132
4.Android知识体系总结之Kotlin语言面试篇
http://blog.csdn.net/ClAndEllen/article/details/79400968
5.Android知识体系总结之Android消息推送篇:
https://www.jianshu.com/p/b61a49e0279f
6.Android知识体系总结之面向切面编程AOP篇:
http://blog.csdn.net/innost/article/details/49387395
7.Android知识体系总结之谷歌最新跨平台UI框架Flutter篇
谷歌的移动UI框架Flutter
由于笔者没有写源码分析文章的习惯,只是看源码的时候,自己大脑转了一遍,但没关系,我这里会贴出一些高质量大神写的源码分析的文章,希望读者被面试官问道的时候能够从容应答。
1.Android知识体系总结之LRU算法有关的集合LinkedHashMap的源码探究
http://blog.csdn.net/justloveyou_/article/details/71713781
2.Android知识体系总结之Java常用集合源码探究
ArrayList:
http://blog.csdn.net/gulu_gulu_jp/article/details/51456969
http://blog.csdn.net/chun0801/article/details/51481877
http://blog.csdn.net/u014136713/article/details/52089156
…不止这些,还有很多,请读者耐心等待笔者总结
1.启动一个app的源码分析
2.Android中的main()方法在哪里?
…
弄懂Android源码,你需要理解什么是init进程,什么是Zygote进程,SystemServer,AMS等等,这是需要时间去理解的:
http://blog.csdn.net/itachi85/article/details/54695046
init进程的启动流程:
http://blog.csdn.net/itachi85/article/details/54783506
Zygote(受精卵进程)的启动流程:
http://blog.csdn.net/itachi85/article/details/55047104
SyetemServer进程启动过程:
http://blog.csdn.net/itachi85/article/details/55053356
Launcher启动过程与系统启动流程:
http://blog.csdn.net/itachi85/article/details/56669808
程序启动的流程:
http://blog.csdn.net/itachi85/article/details/64123035
http://blog.csdn.net/itachi85/article/details/64243223
源码分析也不能完全按照大神的角度去看,有时候自己尝试去理解,就会发现不一样的地方,觉得世界一下被打开了,笔者在研究广播机制的源码的时候,就有这样的感觉,研究的时候,笔者终于知道为什么系统广播不安全,而本地广播那么安全高效,因为系统广播的通信机制使用的Binder,而Binder是走的系统,通过AMS注册的传播广播信号,而本地广播是通过Handler机制实现的通信,这就意味着,本地广播的信号肯定不会发送到应用之外,由于采用的Handler机制,所以高效就不足为奇了。
笔者曾被一个学弟提问道,研究源码有什么好处?除了平时能装逼,应付面试,还有什么?其实研究源码好处不止有这些,因为源码是比我们还要厉害的大神写出来的,我们可以学习这些源码里的一些实现逻辑,把这些实现逻辑搬到自己的代码中,这就厉害啦,有时候我们碰到难以实现的模块,我想源码或许会无形当中会提供一些解决方案,GitHub上那些Star比较多的项目的博主,我想他们肯定有看源码的习惯。
1.Android知识体系总结之网络框架OkHttp源码分析篇
https://www.jianshu.com/p/27c1554b7fee
2.Android知识体系总结之网络框架Retrofit源码分析篇
https://www.jianshu.com/p/0c055ad46b6c
3.Android知识体系总结之图片框架Glide源码分析篇
http://blog.csdn.net/yulyu/article/details/60331803
4.Android知识体系总结之图片框架Picasso源码分析篇
http://blog.csdn.net/woliuyunyicai/article/details/51417839
5.Android知识体系总结之内存分析框架LeakCanary源码分析篇
http://blog.csdn.net/cloud_huan/article/details/53081120
6.Android知识体系总结之依赖注入Butterknife源码分析篇
http://blog.csdn.net/ta893115871/article/details/52497297
7.Android知识体系总结之依赖注入Dragger2源码分析篇
https://www.jianshu.com/p/eef7fa8136e7
8.Android知识体系总结之异步框架EventBus源码分析篇
http://blog.csdn.net/ljd2038/article/details/51470734
9.Android知识体系总结之异步框架RxJava源码分析篇
http://gank.io/post/560e15be2dca930e00da1083
10.Android知识体系总结之图片框架ImageLoader框架源码分析
http://blog.csdn.net/xiaanming/article/details/26810303
http://blog.csdn.net/xiaanming/article/details/27525741
http://blog.csdn.net/xiaanming/article/details/39057201
以上就是Android知识体系总结的所有内容,下次更新时间预计于2019年3月左右,也就是每次跳槽最佳时间都会去更新一遍文章,即金三银四,金九银十,再次谢谢大家的阅读,觉得不错,就点个赞吧!
一个GitHub受欢迎的Android第三方库整理的网站,读者可以收藏一下,高效率开发
笔者上面没能将Java,Kotlin,算法与数据结构总结完善,当然这也在笔者的规划之中。
Java知识体系
算法与数据结构知识体系
Kotlin知识体系(待整理)
Python知识体系(待整理)