Android技术栈总结

Android技术栈

基础

Java基础

  • 符号集、数据类型、常量、变量、表达式语句
  • 继承、多态,序列化

Android基础

  • 四大组件及其生命周期

    • Activity
    • Service
    • Broadcast Receiver
    • Content Provider
  • Intent、Application、Fragment

  • 基本View的属性和使用,MD设计

    • 事件体系:触摸、滑动、传递
    • 绘制流程:MeasureSpec、Measure、layout、draw
    • 动画机制:逐帧动画、补间动画、属性动画
  • 资源访问,不同语言、屏幕、API适配原理

  • Handler的基本使用

  • 数据存储

    • SharedPreference
    • SQLite
    • 文件存储
  • 系统API使用

  • 异步处理技术

    • Thread
    • AsyncTask
    • HandlerThread
    • IntentService
  • 网络框架基本使用

    • http
    • okhttp
    • retrofit
  • 多媒体技术

    • 系统API特性及使用
    • Glide框架
  • 常用设计模式:单例、观察者、工厂

  • 事件总线:EventBus

  • 文件下载:DownloadManager

  • 构建与版本控制

  • Gradle

    • 共享变量的定义
    • aar函数库的应用
    • 签名和混淆配置
  • Git

    • git基本命令
    • Gitflow开发流程
  • Maven

    • Maven Central
    • JCenter

进阶

Java进阶

  • 泛型、反射、枚举、字节码
  • 多线程、并发机制、虚拟机特性、集合原理

View进阶

  • 事件分发、滑动冲突
  • 自定义View、Drawable

Android注解

  • 标准注解
  • 运行时注解:Retrofit
  • 编译时注解:Dagger2

多媒体进阶

  • FFMPEG
  • 图片压缩原理
  • 录制编辑机型适配
  • 音视频编解码原理
  • SurfaceView特性

数据库进阶

  • SQL,索引,表联查,GreenDao,ORM、数据库锁

设计模式

  • 掌握23种设计模式
  • 熟悉SOLID基础设计原则

架构模式

  • MVC、MVP、MVVM
  • 插件化、模块化、动态部署

版本特性

  • 权限管理:熟悉各版本权限差异变化
  • doze模式:了解Android打盹模式

IPC机制

  • Android多进程模式
  • 基础概念:序列化和Binder
  • 跨进程通信方式:Bundle、文件共享、Messenger、AIDL、ContentProvider、Socket

JNI和NDK编程

性能优化

  • 布局优化,绘制优化
  • listview和bitmap优化
  • 内存泄漏优化
  • 响应速度优化和ANR日志分析
  • 线程优化

Hybrid混合开发

  • WebView与Js相互调用

自动化构建

  • Jenkins+Gradle持续集成

热修复方案

  • 基本流程和工作原理
  • Sophix、Tinker、Robust、Amigo

AOP面向切面编程

  • AspectJ

拓展

  • Kotlin(Android官方支持开发语言)
  • React Native
  • Flutter

Android技术栈总结_第1张图片

注:以上为个人的一些技术总结,敬请指点。

你可能感兴趣的:(Android进阶,Android入门开发)