新鲜出锅的Android面试知识点整理

不知不觉中2022年已经过了大半,马上又要到金九银面试季,相信不少心里痒痒的朋友们已经提前开始准备面试了。

近些年来面试的要求是越来越高,整个行业越来越卷。很多求职者抱怨大厂“面试造火箭,工作拧螺丝”,但实际上,面试中的大多数问题都是在全方位地考察你对技术的理解深度,以及解决问题的能力如果没有真正对技术原理和底层逻辑有一定的了解是无法通过的。

这里就将面试中常见的一些知识点做一个整理,希望可以帮助到大家。

1、Handler

  • Handler Looper Message 关系是什么?
  • Messagequeue 的数据结构是什么?为什么要用这个数据结构?
  • 如何在子线程中创建 Handler?
  • Handler post 方法原理?
  • Android消息机制的原理及源码解析 源码角度完整解析
  • Android Handler 消息机制
  • Android 消息机制

2、Activity 相关

  • 启动模式以及使用场景
  • onNewIntent()和onConfigurationChanged()
  • onSaveInstanceState()和onRestoreInstanceState()
  • Activity 到底是如何启动的
  • 启动模式以及使用场景
  • onSaveInstanceState以及onRestoreInstanceState使用 简单通透
  • onConfigurationChanged使用以及问题解决
  • Activity 启动流程解析

3、Fragment

  • Fragment 生命周期和 Activity 对比
  • Fragment 之间如何进行通信
  • Fragment的startActivityForResult
  • Fragment重叠问题
  • Fragment 初探
  • Fragment 重叠, 如何通信
  • Fragment生命周期

4、Service 相关

  • 进程保活
  • Service的运行线程
  • Service启动方式以及如何停止
  • ServiceConnection里面的回调方法运行在哪个线程?
  • startService 和 bingService区别
  • 进程保活一般套路
  • 关于进程保活你需要知道的一切

5、Android布局优化之ViewStub、include、merge

  • 什么情况下使用 ViewStub、include、merge?他们的原理是什么?
  • ViewStub、include、merge概念解析
  • Android布局优化之ViewStub、include、merge使用与源码分析

6、BroadcastReceiver 相关

  • 注册方式,优先级
  • 广播类型,区别
  • 广播的使用场景,原理
  • Android广播动态静态注册
  • 常见使用以及流程解析
  • 广播源码解析

7、AsyncTask相关

  • AsyncTask是串行还是并行执行?
  • AsyncTask随着安卓版本的变迁
  • AsyncTask完全解析
  • 串行还是并行

8、Android 事件分发机制

  • onTouch和onTouchEvent区别
  • dispatchTouchEvent, onTouchEvent, onInterceptTouchEvent 方法顺序以及使用场景
  • 滑动冲突,如何解决
  • 事件分发机制
  • 事件分发解析
  • dispatchTouchEvent, onTouchEvent,
  • onInterceptTouchEvent方法的使用场景解析

9、Android View 绘制流程

  • 简述 View 绘制流程
  • onMeasure, onlayout,ondraw方法中需要注意的点
  • 如何进行自定义 View
  • view 重绘机制
  • Android LayoutInflater原理分析
  • Android视图状态及重绘流程分析
  • Android自定义View的实现方法

10、Android 的核心 Binder 多进程 AIDL

  • Window、Activity、DecorView以及ViewRoot之间的关系
  • 常见的 IPC 机制以及使用场景
  • 为什么安卓要用 binder 进行跨进程传输
  • 多进程带来的问题
  • AIDL 使用浅析
  • binder 原理
  • binder 最底层解析 很
  • 多进程通信方式以及带来的问题
  • 多进程通信方式对比

11、Android 的AMS,WMS,PMS

  • AMS,WMS,PMS 创建过程
  • AMS,WMS,PMS全解析
  • AMS启动流程
  • WindowManagerService启动过程解析
  • PMS 启动流程解析

12、Android ANR

  • 为什么会发生 ANR?
  • 如何定位 ANR?
  • 如何避免 ANR?
  • 什么是 ANR
  • 如何避免以及分析方法
  • Android 性能优化之 ANR 详解

13、Android 内存相关

  • 什么情况下会内存泄漏?
  • 如何防止内存泄漏?
  • 内存泄漏和溢出的区别
  • OOM 概念以及安卓内存管理机制
  • 内存泄漏的可能性
  • 防止内存泄漏的方法

14、Android 屏幕适配

  • 屏幕适配相关名词解析
  • 现在流行的屏幕适配方式
  • 屏幕适配名词以及概念解析
  • 今日头条技术适配方案

15、Android 缓存机制

  • LruCache使用极其原理
  • Android缓存机制
  • LruCache使用极其原理述

16、Android 性能优化

  • 如何进行 内存 cpu 耗电 的定位以及优化
  • 性能优化经常使用的方法
  • 如何避免 UI 卡顿

17、Okhttp 、 Retrofit、Glide

  • Okhttp完整解析
  • Retrofit使用流程,机制详解
  • 从 HTTP 到 Retrofit
  • Retrofit是如何工作的
  • Glide的基本用法
  • 从源码的角度理解Glide的执行流程
  • 深入探究Glide的缓存机制

18、Android 组件化与插件化

  • 为什么要用组件化?
  • 组件之间如何通信?
  • 组件之间如何跳转?
  • Android 插件化和热修复知识梳理
  • 为什么要用组件化

19、面试常问的点

  • 你在项目中遇到最难得点是什么?如何解决的?
  • 平时遇到问题了是如何解决的?比较好的回答:
  • 你最近做的 APP 是如何架构的?为什么要这样架构?
  • 平时怎么进行技术进阶,如何学习?
  • 你觉得自己处于什么技术水平?
  • 你的技术优势是什么?

上面这些题目的答案我也都记录在了文档中,这里由于篇幅原因就没有一一把答案贴上来了,需要完整文档的朋友们可以私信我【面试】免费领取!

这些题目的答案我都已经整理到了本地PDF文档中,这里由于篇幅原因没有一一把答案贴上来,需要完整文档的朋友们可以私信我【面试】免费领取!

发表评论
留言与评论(共有 0 条评论) “”
   
验证码:

相关文章

推荐文章