Android 面试
IPC | IO模型 | Java 并发 | JVM | Java 面试
Android面试 | Android面试2 | Kotlin | Kotlin面试 | Dart | Flutter | Flutter面试 | Hybrid App
四大组件
Activity | Service | Broadcast Receiver | Content Provider
系统架构
Handler机制 | Handler面试 | IdleHandler面试 | 屏障消息
Binder机制 | App启动流程 | Activity启动流程 | SystemServer | Zygote | AMS | WMS | PMS | WindowManager Dialog | ServiceManager | PowerManagerService | SurfaceFlinger
设计架构
MVC | MVP | MVVM | MVPVM | MVI
前言技术
NDK
谈谈对网络通信框架Volley的理解?
Java基础方面:JVM、String、内部类、多态、抽象和接口、集合框架(Hashmap、Arraylist)、单例、线程、Synchronized、Look锁、动态代理、引用
Android基础方面:四大组件、View、进程、Bitmap、屏幕适配、消息机制、线程异步、WebView。
Android扩展方面:ART、Apk优化、Hook、Proguard、架构(MVC/MVP/MVVM)、Jetpack、NDK开发。
Android源码方面:Leakcanary、Eventbus
设计模式方面:面向对象六大原则、工厂模式、单例模式、建造者模式、观察者模式、适配器模式、策略模式、代理模式
算法方面:排序、二叉树、链表、栈和队列、二分、hash表、堆、数组/双指针、字符串处理、动态规划
网络知识:Http(缓存、Https、Http2.0)、TCP(三次握手四次挥手、socket)、类加载器
Application运行的过程当中,对于Activity的操作,状态转变,其实实际上是通过Handler消息机制来完成的,
Application当中只管去发, 由消息机制负责调用,因为在main方法当中我门的Looper轮训器是一直在进行轮训的
而当我们在加载Activity的时候,当中调用了一个performLaunchActivity()方法,在这个中间我发现了我们onCreate的调用痕迹
raw和assets的区别
底层原理:
1:相同点:
raw和assets下的资源文件会原封不动地保存到APK安装包中,不会像其他资源一样会被编译成二进制的形式保存到APK中;
2:不同点:
raw资源文件会在R.java中生成相应的ID标记,使用的时候直接通过id去获取; assets中的资源文件不会生成相应的标记,获取的时候,要通过AssetManager来获取;
assets资源文件中可以再创建目录,也就是说assets下可以有其它的文件目录,而raw下不可以有其它文件目录;
获取的方式:
raw资源文件的获取:InputStream is = getResources().openRawResource(R.id.FILENAME);
assets资源文件的获取:AssetManager assetManager=this.getAssets();InputStream is=assetManager.open("farsight/aa.txt");
Compose AGSL Context 机制 SplashScreen方案
简历如何写
Android程序员只要能够写好简历,进大厂的几率会提高90% https://zhuanlan.zhihu.com/p/108529078
8年Android开发程序员教你如何写简历!看完别再问为何你只值5K https://blog.csdn.net/weixin_44893918/article/details/90241572
安卓面试中高级安卓开发工程师总结之——如何写一份让HR主动邀请你面试的简历 https://blog.csdn.net/joyesee/article/details/82181197
安卓面试中高级安卓开发工程师总结之——大公司的任职资格要求总结(2018年) https://blog.csdn.net/joyesee/article/details/82145388
安卓中高级面试知识点巩固和回答技巧 https://blog.csdn.net/joyesee/category_7992879.html
Android开发简历书写的各个要点(新手) https://blog.csdn.net/weixin_33970449/article/details/85674451
简历模板 http://wuxiaolong.me/CV/
张扬-Android工程师-简历 http://hellozy.cn/2018/04/10/张扬的简历/
安卓开发工程师-简历范文 https://zhuanlan.zhihu.com/p/82097281
资料
高级UI---LSN-1-UI绘制流程详解(整体启动流程)ArrayMap、SparseArray、HashMap区别HashMap和ArrayMap对比
热修复/插件化/组件化-Andfix/Tinker源码简单解读及相关知识剖析笔记
https://www.jianshu.com/p/75fdcc7675e9
Android插件化基础1-----加载SD上APK
https://www.jianshu.com/p/8c0b8797136c
Android】如何从零开始写一款书籍阅读器
https://www.jianshu.com/p/f4595d2db8e6
https://blog.csdn.net/u014614038/article/details/74451484
https://blog.csdn.net/qq_37492806/article/details/84939157
https://blog.csdn.net/shenshibaoma/article/details/80594222
Android 开发有什么好的架构么? https://www.zhihu.com/question/21406685
学会这些Android开发热门前沿知识,2020年你就不用愁了
阿里P7移动架构师学习路线 https://github.com/Timdk857/Android-Architecture-knowledge-2-
面试官: 说一下你做过哪些性能优化? https://juejin.im/post/6844904105438134286#heading-10
android 面试题 https://www.jianshu.com/p/261ef3fe5130
Android-Architecture-knowledge-2-/面试题/ https://github.com/Timdk857/Android-Architecture-knowledge-2-/tree/master/面试题
“终于懂了” 系列:Android屏幕刷新机制—VSync、Choreographer 全面理解!
View的工作原理--《Android开发艺术探索》阅读笔记——第四章
Android 面试黑洞——当我按下 Home 键再切回来,会发生什么?
Android-举一反三:12个View绘制流程高频面试题,带你全面理解View的绘制流程
Android 面试BAT大厂 https://www.jianshu.com/p/0f82b0650909
Android面试必备26题 https://zhuanlan.zhihu.com/p/59960981
Android 开发面试 “108” 问 https://zhuanlan.zhihu.com/p/30455470
Android开发月薪20K与40K,相差这几样热门前沿知识 mvc mvp mvvm https://www.jianshu.com/p/55ea6248a5cf
Android 面经分享:面试了9家公司,我总结了这些需要注意的技术点 https://zhuanlan.zhihu.com/p/120993871
Android性能优化-渲染及卡顿优化 https://www.jianshu.com/p/69a55fe567f5
2020最新中高阶Android面试题总结 下(附解题思路) https://blog.csdn.net/chuhe1989/article/details/104385096
2019 Android 精选版面试题级答案(Android+Java+算法+性能优化+四大组件...) https://blog.csdn.net/weixin_44339238/article/details/102745352?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-16.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-16.nonecase
2020最新BAT Android高端技术面试145题详解 https://blog.csdn.net/AndroidAlvin/article/details/105043923?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-14.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-14.nonecase
Android 2020年经典面试题 https://blog.csdn.net/SimonLiss/article/details/104852212?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-5.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-5.nonecase
2017-2020历年字节跳动Android面试真题解析 https://blog.csdn.net/xiangzhihong8/article/details/104777855?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-3.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-3.nonecase
大厂Android面试经历(已获头条、百度、OPPO等大厂offer) https://blog.csdn.net/weixin_43901866/article/details/89035799?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.nonecase
Android高级面试笔记 https://blog.csdn.net/songzi1228/article/details/97374883
Android高级进阶 https://zhuanlan.zhihu.com/c_1088845369844191232
Android高级进阶 https://zhuanlan.zhihu.com/p/75999934
吊打面试官:Android中高级面试题 -- 终局之战
https://www.jianshu.com/p/a0db5e588506
Android篇:2019初中级Android开发社招面试解答(下)
https://juejin.im/post/5c984e926fb9a070c975a9b4
字节跳动Android面试凉凉,挥泪整理面筋,你不看看吗? https://www.jianshu.com/p/e43c72e62112
阿里巴巴高级面试题(首发、高频136道、含答案) https://blog.csdn.net/weixin_45132238/article/details/107251285?utm_medium=distribute.pc_feed_404.none-task-blog-BlogCommendHotData-3.nonecase&depth_1-utm_source=distribute.pc_feed_404.none-task-blog-BlogCommendHotData-3.nonecas
2019年Android面试题汇总 https://www.jianshu.com/p/feb9584b492c
AndroidInterview https://github.com/xcy396/AndroidInterview/blob/master/面试题总结(Android部分).md
百度搜 蚂蚁金服 android面试 https://blog.csdn.net/weixin_45074063/article/details/99854406
为什么Kotlin比Java能大量减少代码 https://www.jianshu.com/p/3d279fdcff65
Android知识笔记:让人耳目一新的 Jetpack MVVM 精讲! https://www.jianshu.com/p/1c2e968275f2
趁疫情赶紧复习!Android 精选版面试题级答案(Android+Java+算法+性能优化+四大组件...) https://www.jianshu.com/p/fe6b828b9911
Kotlin 风险高、RxJava 已过时,Android 原生开发现状分析! https://www.jianshu.com/p/b345ed579b99
Android高级面试题之SDK源码分析:通过线程提升性能 https://www.jianshu.com/p/360dac52c91a
Android 高级开发寒冬跳槽涨薪经验掏心分享,这样做你的面试通过率能翻倍! https://www.jianshu.com/p/d7205bd9614a
Android APK:为何你的应用老是被破解,该如何有效地做签名校验? https://www.jianshu.com/p/f3707aa6ab45
AAC架构一:AAC架构简介 https://www.jianshu.com/p/7164ebaa00e9
Android Jetpack 架构组件最佳实践 https://www.jianshu.com/p/4ad7aa0fc356
Android:你好,androidX!再见,android.support https://www.jianshu.com/p/41de8689615d
提问Java四大引用? https://www.jianshu.com/p/88fa462597e6
Context都没弄明白,还怎么做Android开发? https://www.jianshu.com/p/b68de4c95b05
Android项目120项 https://www.jianshu.com/p/6be91ee932a7
Android Architecture Guide 的翻译 https://www.jianshu.com/p/05d5b6d6df18
面试官问我:如何加载100M的图片却不撑爆内存 https://www.jianshu.com/p/ca4e086a8b1d
Android高级面试笔记 https://blog.csdn.net/songzi1228/article/details/97374883
Kotlin 风险高、RxJava 已过时,Android 原生开发现状分析! https://www.jianshu.com/p/b345ed579b99
阿里架构师最新整理 Android 面试点梳理,你收藏了吗? https://segmentfault.com/a/1190000022929543 https://zhuanlan.zhihu.com/p/148492789
Android开发如何学习,鸿洋推荐,必属精品! https://github.com/JsonChao/Awesome-Android-Notebook https://www.jianshu.com/p/674e9d6ea585
吊打面试官:Android中高级面试题 -- 终局之战 alvin https://www.jianshu.com/p/a0db5e588506
最强推荐: Android 开发中必备的代码 Review 清单,你还不知道吗 jett https://www.jianshu.com/p/1b6068ee5170
8年老Android开发谈;Context都没弄明白凭什么拿高薪? https://www.jianshu.com/p/f0fb461a2b2c
2020年大公司面试官最常问31道Android基础题 https://www.jianshu.com/p/db5343e6154f
厚积方能薄发,通往Android封神之路的知识体系 https://juejin.im/post/5ee1fca2e51d457863403c78
https://c.lanmit.com/yidongkaifa/Android/31932.html
https://www.colabug.com/2020/0306/7087518/
https://zhuanlan.zhihu.com/p/109500173
https://www.zhihu.com/question/60801590
http://blog.itpub.net/69952849/viewspace-2686009/
http://blog.itpub.net/69952849/viewspace-2686009/
Android中为什么主线程不会因为Looper.loop()里的死循环卡死? https://www.zhihu.com/question/34652589
理解协程、LiveData 和 Flow https://juejin.im/post/5ebb5c1ee51d454ddb0b4e1d
Android源码分析之View绘制流程 https://juejin.im/post/5c789b0ce51d454fbd5a8baa
Android View 测量流程(Measure)完全解析 https://www.jianshu.com/p/3299c3de0b7d
[Android 自定义 View] —— 深入总结 onMeasure、 onLayout https://juejin.im/post/5d6678dc6fb9a06ae37272ae
8年高级Android工程师;事件分发机制一遍就学会 https://zhuanlan.zhihu.com/p/74727246
Android事件分发机制面试题 https://www.cnblogs.com/aademeng/articles/10923336.html
Android进阶——Android事件分发机制之dispatchTouchEvent、onInterceptTouchEvent、onTouchEvent https://blog.csdn.net/qq_30379689/article/details/53967177
史上最全的Android View面试知识点集锦 https://juejin.im/post/5d3010d3e51d4577790c1d4a
Android事件分发机制详解:史上最全面、最易懂 https://www.jianshu.com/p/38015afcdb58
靠一个HashMap的讲解打动了头条面试官,我的秘诀是 https://www.jianshu.com/p/9fe4cb316c05
可能是全网最好的MySQL重要知识点 https://www.jianshu.com/p/5dd5993f981b