-
你知道哪些Layout,ConstraintLayout 的特点是什么
-
手机开发者选项有哪些,不保留活动是什么
四大组件
-
当内存不足时Service被杀死了,如何重启这个Service
-
Android系统杀进程时,是怎么考虑进程优先级的?
-
Fragment 的 ViewModel 如何访问到 Activity 的 ViewModel 的数据
-
Activity 4种启动模式说下,各种启动模式适合的应用场景
-
Activity 任务栈从底到顶为 A-B-C,低内存杀死进程后,重新点击,显示哪个?这时如果C里面有Fragment是怎样恢复的?
-
Activity如何传参给Fragment?为什么用setArgument传参,而不是使用带有参数的构造器?
-
window、view 和 Activity 的关系
-
Activity、Fragment 的各个生命周期依次说一下,各个生命周期里面适合做什么
-
Activity 调用 finish 方法后怎么走到 onDestroy 的
图片
-
Glide缓存特点
-
Glide为我们做了哪些内存优化
-
Glide如何加载 GIF
-
ListView 图片错位的原因,解决方案
-
bitmap如何处理大图,30M的大图如何防止OOM?
网络
-
OKHttp 如何实现缓存
-
OKHttp 的超时时间,有考虑DNS超时码
-
OKHttp 线程池、连接池讲下
-
OKHttp 的所有拦截器有哪些,请求失败了重试1、2次怎么做
-
Retrofit实现机制
-
Room注解如何在编译时生成类文件
-
http 和 https 的区别,shakehand的过程说下
-
状态码400、401,3xx有哪些
-
网络劫持是什么,应该怎么做
-
TCP三次握手,握手中的网络包各个标记位是多少,四次挥手说一下
-
TCP 发送窗口是什么?
-
混合开发h5了解多少
-
浏览器窗口访问一个网址的过程
-
POST 和 GET 有什么区别
优化
-
内存泄漏分析,LeakCanary的原理,泄漏对象是如何找到引用链的
-
APK瘦身
-
启动优化
-
卡顿分析!!
-
ANR分析!!
-
为什么布局文件中层级越多,性能可能差很多
-
你有哪些应用性能优化的经验必问
-
ProGuard怎么写
Java
-
hashCode、equals
-
HashMap 请开始你的表演
-
ConcurrentHashMap 分段加锁的原理
-
动态代理如何写
-
JVM 内存模型介绍下,哪些地方可能 OutOfMeomory
-
JVM GC 算法
-
线程池的原理,有哪些拒绝策略
-
Java锁优化:偏向锁、轻量级锁、自旋锁讲一下
-
为什么说反射的性能不好
Kotlin
-
Kotlin协程为什么能以同步代码写出异步逻辑?
-
suspend 函数的工作原理
-
在协程上定义了一个局部变量,为什么在其中的其他线程里的协程也能访问到?
-
by 的两种场景,by Lazy 的实现
-
object 单例的实现
算法
-
各种排序 算法(冒泡、选择、快排、归并。。。)的时间复杂度,各种查找算法)(顺序查找,二分查找……)的时间复杂度
-
LRU 实现(146)参考LinkedHashMap实现的3个方法
-
LFU 缓存(460) 同一频率使用LRU的NodeList,外面套一层{freq to NodeList},NodeList用双链表实现
-
两数相加(445)
-
找缺失的数字(268)注意相似题目里有中等
-
两个队列实现栈(225)
-
删除子文件夹(1233)
-
螺旋矩阵打印(54)
-
用生成随机数1-5(1,2,3,4,5)的方法,得到一个可以生成随机数(1-7)的方法
-
54张扑克牌,分成3堆,大小王出现在同一堆的概率(排列组合算数题)
抽象问题
-
讲讲做过的项目,有哪些亮点❤️
-
你自己的亮点在哪里,你的加入可以给团队带来什么❤️
-
技术规划,怎么发展❤️
设计题
-
如果让你设计一个音乐播放器,要实现哪些接口
-
设计一个图片下载库:深挖 Glide,如果图片没有设置有效期,如何保证缓存被更新???❤️
其实收集来的面经中问道的知识点远远不止这些,由于文章篇幅长度原因,我就整理这些Android 开发面试中被问频率较高的基础部分。其实你们把这些面试常见被问的基础部分掌握,再加对自己做个的项目有深入的了解,基本在面试时不会被面试官问倒,除非面试官特意刁难你。
小结
有了这么多优秀的开发工具,可以做出更高质量的Android应用。
当然了,“打铁还需自身硬”,想要写出优秀的代码,最重要的一点还是自身的技术水平,不然用再好的工具也不能发挥出它的全部实力。
在这里我也分享一份大佬自己收录整理的Android学习PDF+架构视频+面试文档+源码笔记,还有高级架构技术进阶脑图、Android开发面试专题资料,高级进阶架构资料这些都是我闲暇还会反复翻阅的精品资料。在脑图中,每个知识点专题都配有相对应的实战项目,可以有效的帮助大家掌握知识点。
总之也是在这里帮助大家学习提升进阶,也节省大家在网上搜索资料的时间来学习,也可以分享给身边好友一起学习
如果你有需要的话,可以点击这里领取