Android 面试/进阶知识点梳理

Java基础

  • 泛型
  • 注解
  • 多线程
  • JMM
  • 类型信息
  • ClassLoader
  • 虚拟机实现原理
  • 垃圾回收算法
  • JDK 1.8 特性

数据结构

  • ArrayList源码分析
  • LinkedList源码分析
  • HashMap源码分析
  • LinkedHashMap源码分析
  • TreeMap
  • Set 相关
  • 使用SparseArray和ArrayMap代替HashMap
  • Pair

算法

  • 时间复杂度
  • 排序算法
  • 单链表反转
  • LRU、DiskLRU

网络

  • 网络分层及协议入门1、2
  • TCP/UDP
  • HTTP协议详述
  • HTTPS详解
  • HTTPS握手过程
  • HTTP2.0的改进、、HTTPS抓包
  • 断点续传原理、OKHttp实现

设计模式

  • 面向对象六大原则
  • 单例模式

Android基础

  • 布局控件整理
  • Activity生命周期、启动模式
  • Fragment
  • View事件体系
  • View工作原理
  • Android动画
  • Drawable
  • JNI和NDK
  • MVP( 一、二 )
    MVC
    MVVM

Android进阶

  • IPC 机制
  • Window分析
  • 四大组件工作过程 Activity流程
  • 消息机制
  • 线程和线程池
  • Dalvik 和 ART
  • APK 签名 V1、V2
  • APK 打包 过程总览、资源编译
  • 渠道打包 V1签名方案、 V2签名方案
  • 优化APK的大小
  • APK 安装过程 PMS源码分析 、另外一个分析
  • APP 启动过程
  • Android 开机过程
  • Android 中的 ClassLoader
  • 组件化
  • 插件化
  • 热修复
  • 性能分析
  • 单元测试

常见三方库的使用

  • OkHttp
  • Retrofit
  • EventBus
  • Jackson
  • Glide
  • Lottie
  • GreenDao
  • ObjectBox
  • RxJava
  • ButterKnife、插件
  • Dragger2

第三方源码分析

  • OKHttp 源码分析
  • Retrofit 源码分析
  • EventBus 源码分析
  • Glide 源码分析

工具使用

  • Android Studio的使用
  • Gradle
  • Git
  • SVN

安全性

  • 各种加密算法

你可能感兴趣的:(Android 面试/进阶知识点梳理)