前言:
与其每天浑水摸鱼、浑浑噩噩,不如多进阶学习,提升自己的竞争力。
Android中高级必会知识点:
一、性能优化
1、APP稳定性优化
1.做过哪些稳定性方面的优化?
2.性能稳定性是怎么做的?
3.业务稳定性如何保障?
4.如果出现异常,怎样快速止损?
2、APP启动速度优化
1.启动优化原理是什么?
2.是怎么异步的,异步遇到过什么问题吗?
3.启动优化有哪些容易被忽略的地方?
4.版本迭代导致的启动变慢有好的解决方式吗?
java方面
- 基本知识点 集合类的区别和适用场景 1次 java静态内部类和非静态内部类的区别 内存分配 创建过程 内存泄漏问题? 如何保证线程安全? 多次 (面试必问) 哪几种加锁方式(最好扯到monitor) 乐观锁和悲观锁 (适用场景) 锁的适用场景 线程池的概念 构成 适用场景 为什么要用线程池(扯到线程分配资源的过程,和进程分配资源过程的区别)
- 内核方面(面试必问) GC垃圾回收机制 n次 GC是怎么找要清除的对象的? java的四种引用和适用场景 GC内核清理用什么算法? 新生代复制清理,老生代标记整理 拓展:老生代标记整理如何有效的整理内存碎片? java内存结构 n次 java的内存是怎么分布的 java类的加载机制 java对象的加载机制 常量池 string对象的生成 Integer的缓存机制
计算机网络
- 网络层级结构以及对应的协议
- TCP TCP 三次握手(第一次和第三次如果没收到回应会怎样?) TCP四次挥手 拥塞控制没考过?
- HTTP HTTP报文,http各版本的区别,https
- IP 为啥不将mac作为ip地址 ping实现原理 ttl生存字段
- ARP 描述过程,广播单播
操作系统
- 线程和进程区别(资源分配上是怎样的)
- 进程通信
- 内存空间分配
- 死锁 产生死锁的条件(详细举例) 避免死锁的方法
设计模式
- 一般是自己说了解哪些模式,一定要说明适用场景
- 单例模式 懒汉式 饿汉式 线程安全,双重锁
- 观察者模式
- 适配器模式
- 外观模式
android方面(一般是根据项目问)
- android的进程通信
- service服务
- handlerThread
- handler运行机制 1次
- recyclerView缓存机制 1次
- view的重绘
项目方面
- fragment和activity交互
- webview的使用 安全问题? 和js互相调用
- 断点续传 描述过程 文件读写,怎么保证不冲突
- asynctask内存泄漏 为什么泄漏 解决方法 调试工具是什么
- MFCC流程 录音环节(快手问了一大堆细节,还让写伪代码)
- MVP
- recyclerView 和listview区别 缓存机制 item太多会内存泄漏吗
尾声
开发是需要一定的基础的,我是08年开始进入Android这行的,在这期间经历了Android的鼎盛时期,和所谓的Android”凉了“。中间当然也有着,不可说的心酸,看着身边朋友,同事一个个转前端,换行业,其实当时我的心也有过犹豫,但是我还是坚持下来了,这次的疫情就是一个好的机会,大浪淘沙,优胜劣汰。再等等,说不定下一个黄金浪潮就被你等到了。
这是我在这行工作10几年积累的一些资料,如果还想继续在这行业走下去的,或者现在打算跳槽,可以**私信【学习】**我愿意把资料免费分享给大家。
或者直接点击下面链接领取
Android学习PDF+架构视频+面试文档+源码笔记
- 330页 PDF Android核心笔记
- 几十套阿里 、字节跳动、腾讯、华为、美团等公司2020年的面试题
- PDF和思维脑图,包含知识脉络 + 诸多细节
- Android进阶系统学习视频
维脑图,包含知识脉络 + 诸多细节
[外链图片转存中…(img-rsGIRqmQ-1614248859115)]
- Android进阶系统学习视频