写点什么

拔刀金九银十:2020 年最新 BAT 大厂 Android 面试知识点,安卓开发入门到精通

用户头像
Android架构
关注
发布于: 2021 年 11 月 03 日
  • 异常情况下的生命周期

  • 异常情况下的数据保存

  • 各种情况下跳转到某个 Activity 时目标 Activity 及当前 Activity 的生命周期

  • Activity 的启动模式及应用场景

  • 进程和应用生命周期


Service 相关


  • Service 的定义及作用

  • Service 两种启动方式 startService、 bindService 区别及生命周期

  • Service 绑定服务的三种实现方式,扩展 Binder 类、使用 Messenger、使用 AIDL

  • 关于启动服务与绑定服务间的转换问题 先绑定服务后启动服务、先启动服务后绑定服务

  • 服务 Service 与线程 Thread 的区别

  • Android 5.0 以上的隐式启动问题及其解决方案

  • 如何保证服务不被杀死

  • IntentService 的使用及原理


BroadcastReceiver 相关


  • BroadcastReceiver 定义及作用、应用场景

  • BroadcastReceiver 的注册方式,静态方式、动态方式

  • BroadcastReceiver 注册与取消的时机

  • BroadcastReceiver 的不同类型,普通广播,系统广播、有序广播、粘性广播、应用类广播


Fragment 相关


  • Fragment 生命周期

  • Fragment 的懒加载

  • Fragment 之间的通信

  • FragmentPagerAdapter 与 FragmentStatePagerAdapter 的区别

  • 为什么不建议直接通过使用 new Fragment 的方式传入数据


序列化相关


  • 序列化与反序列化的定义及区别

  • Serializable 中 serialVersionUID 及 transient 关键字的作用

  • 序列化:Parcelable 和 Serializable 差异


IPC 相关


  • 在 Android 中什么样的情况下会使用多进程模式,如何开启多进程

  • Android 为什么采用 Binder 做为 IPC 机制

  • IPC 常用方式 使用 Bundle、使用文件共享、使用 Messenger、使用 AIDL、使用 ContentProvider、使用 Socket

  • AIDL 的语义

  • AIDL 如何创建

  • AIDL 生成 Java 文件详细分析


View 事件机制相关


  • View 的坐标体系

  • View 滑动的几种方式,使用 ScrollTo/ScrollBy、使用动画、改变布局参数

  • 弹性滑动的原理及实现

  • View 的事件分发机制,点击事件的传递规则,事件分发的源码解读

  • 处理滑动冲突的场景及解决方法


View 绘制相关


  • DecorView、Window、ViewRootImpl 等概念

  • MeasureSpec 概念

  • View 的工作流程,measure 过程、layout 过程、draw 过程

  • 自定义 View 需要注意的事项

  • Activity、Window、View 三者之间的关系


View 动画相关


  • 常用动画 View 动画(补间动画)、属性动画与帧动画

  • 补间动画与属性动画区别

  • 差值器和估值器理解

  • 属性动画的工作原理


Handler 相关


  • Handler 机制之 ThreadLocal

  • Handler 机制之 Looper、Handler、消息队列如何理解

  • Handler 机制之 Message 的发送与取出

  • Handler 机制之 Message 及 Message 的回收机制

  • Handler 机制之循环消息队列的退出

  • Handler 机制之内存泄漏

  • Handler 机制之 IdleHandle 的理解及使用


AsyncTask 相关


  • AsyncTask 的使用和注意事项

  • AsyncTask 几个重要的方法 doInBackgound、onProgressUpdate、onPostExecute 等

  • AsyncTask 的工作原理及源码理解


Bitmap 压缩回收相关


  • Bitmap 所占内存

  • 常用压缩图片方式

  • LruCache 原理

  • DiskLruCache 原理

  • LinkedHashMap 原理


ListView 与 RecyclerView 相关


  • ListView 的原理和复用机制

  • ListView 和 RecyclerView 的区别


数据存储相关


  • 常用数据库框架 GreenDao,官方 Room

  • 数据库数据迁移问题

  • GreenDao 中一对一,一对多,多对多关系

  • SharedPreferences 使用及源码,commit 与 apply()方法的区别


Android 开源框架知识点


==========================================================================


OkHttp 相关


  • OkHttp 的优点

  • OkHttp 执行请求的整个流程

  • OkHttp 中的拦截器

  • OkHttp 中的同步请求与异步请求的理解及其源码

  • OkHttp 中涉及到的设计模式

  • OkHttp 底层网络请求实现,socket 还是 URLConnection


Retrofit 相关


  • Retrofit 执行请求的整个流程

  • Retrofit 中 ConverterFactory、CallAdapterFactory 的理解

  • Retrofit 中 CallAdapter 的适配器模式


RxJava 相关


  • RxJava 常用创建操作符 create、from、just、interval、range 等

  • RxJava 常用组合、合并操作符 combineLatest、join、merge、zip 等

  • RxJava 错误处理操作符 onErrorReturn、onErrorResumeNext、onExceptionResumeNext 等

  • RxJava 过滤操作符 filter、ofType、sample、take 等

  • Rxjava 背压相关理解

  • RxJava 实际开发中的使用:网络请求轮询、网络请求嵌套回调、从磁盘 / 内存缓存中 获取缓存数据等


Glide 相关


  • Glide 的执行流程

  • Glide 的缓存机制

  • Glide 图片转换

  • Glide 带进度的图片加载功能

  • Glide 内存、磁盘缓存,优先级使用


ButterKnife 相关


  • Java 注解相关 Annotation

  • Java 注解相关之 APT 工具

  • ButterKnife 注解框架原理


EventBus 相关


  • EventBus 原理,及索引类的使用


Android 性能优化


=======================================================================


  • 性能优化:布局优化、绘制优化、线程优化等

  • ANR 异常:主线程执行了耗时操作,如 BroadcastReceiver(前台广播 10s,后台广播为 60s)、Service(前台 20s,后台 200s)没有处理完相关任务等

  • OOM 异常:内存溢出的原因

  • 内存泄漏:内存泄露的几种场景,如单例模式引出的泄露、静态变量导致的泄露、属性动画导致的内存泄露等


Android 屏幕适配知识点


==========================================================================


  • 今日头条适配方式

  • 宽高限定符适配方式

  • smallestWidth 适配


Android 打包知识点


========================================================================


  • 安卓签名的理解

  • Gradle 多渠道打包


Android 架构知识点


========================================================================


  • MVC 架构设计模式面试问题讲解

  • MVP 架构设计模式面试问题讲解

  • MVVM 架构设计模式面试问题讲解


Android 不同版本特性知识点


=============================================================


《Android学习笔记总结+最新移动架构视频+大厂安卓面试真题+项目实战源码讲义》
浏览器打开:qq.cn.hn/FTe 免费领取
复制代码


===============


  1. Android 不同版本下的特性

  2. 广播在 7.0、8.0、9.0 下的适配

  3. Android 6.0 权限下的适配

用户头像

Android架构

关注

还未添加个人签名 2021.10.31 加入

还未添加个人简介

评论

发布
暂无评论
拔刀金九银十:2020年最新BAT大厂 Android 面试知识点,安卓开发入门到精通