引言:
今天偶然看到StuQ的技术图谱, 找了找竟然没有Android开发的. 想起之前自己弄了一个, 翻出来看看并不过时, 整理下发出, 大家共同进步.
转载请注明出处: 简书/anly_jun/Android App 开发技术图谱
图片比较大, 加载较慢, 请等待~~
1. 操作系统
Windows/MacOSX/Linux
2. 编程语言
- Java
- HTML/JS (Hybrid/Web App)
- C/C++ (NDK)
- SQL (DB)
- Kotlin
3. 开发工具
3.1 IDE
- Android Studio
- Eclipse
3.2 调试工具
3.2.1 网络调试
- Charles
- Wireshark
- Fiddler
- tcpdump
- Paw/Postman
3.2.2 内存分析
- monitor
- MAT
3.2.3 Android tools
- adb
- draw9patch
- hierarchyviewer
- uiautomatorviewer
3.3 版本管理
3.3.1 Git
- Git命令
- Github/GitLab
3.3.2 SVN
3.4 CodeReview
- Gerrit
- Github pull request
3.5 Bug/任务管理
- Redmine
- JIRA
- Bugzilla
- Teambition
- Tower
3.6 编译工具
- Gradle
3.7 持续集成
- Jenkins
- Travis CI
3.8 应用分发
- 蒲公英
- fir.im
1. App基础
1.1 基本组件
- Activity
- Service
- Content Provider
- Broadcast Receiver
- Intent/Intent Filter
- App Manifest File
1.2 UI
- Layouts
- Widgets
- Resources
- Animations
- 设备适配
1.3 Connectivity
- WiFi
- Mobile网络
- 网络状态监听
1.4 MultiMedia
- Audio/Video
- Camera/Gallery
1.5 GPS&Location&Map
1.5.1 系统定位
- GPS定位
- Network定位
3rd Map定位
- 百度Map
- 高德Map
2. App进阶
2.1 Process&Thread
2.1.1 Process
- Linux进程
- App进程原理
2.1.2 AIDL
- 实现方式
- 原理
2.1.3 Handler/Looper/MQ/Thread
2.1.4 Loader
2.1.5 AsyncTask
2.2 性能优化
2.2.1 ANR
2.2.2 布局层级性能优化
2.3 内存优化
2.3.1 内存检测工具
2.3.2 内存分析工具
2.3.3 Bitmap优化
2.3.4 内存泄露查找及分析
2.5 网络优化
2.5.1 API优化
2.5.2 低网速下优化
2.5.3 流量使用优化
- 判断当前网络类型
- 使用缓存
2.6 单元测试
3. App高级
3.1 相关原理熟悉
3.1.1 Activity
- 启动流程
- 生命周期回调原理
- 与View/Window的关系
- 与Fragment的关系
3.1.2 View/Window
- View/Window关系
- View渲染
- View事件分发处理流程
3.1.3 编译打包
- 编译打包原理
- 逆向工程分析
- 热修复
3.2 Hybrid App
3.2.1 与Native App的异同
3.2.2 主流框架
- PhoneGap
- ionic
- React Native
3.3 架构能力
3.3.1 架构
- MVC
- MVP
- MVVM
- Flux
- Clean Architecture
3.3.2 App框架
- 分包
- 分层
3.3.3 设计模式
- OOD原则
- 常用设计模式运用
3.4 ART&Dalvik
- AOT compilation
- GC
- Bytecode&.Dex
3.5 自动化测试
- monkey/monkey runner
- UIAutomator
- Espresso
- Robotium
4. 扩展学习
4.1 响应式编程
4.1.1 Rx
- RxJava
- RxAndroid
- RxBinding
4.1.2 Agera
4.2 主流开源库
4.2.1 快速开发
- Android Annotation
- ButterKnife
4.2.2 Views
- 太多
4.2.3 HTTP模型
- Retrofit
- OkHttp
- Volley
4.2.4 图片处理
- Glide
- Fresco
- Picasso
- UIL
4.2.5 依赖注入
- Dagger2
4.2.6 数据库
- ORMLite
- GreenDAO
- Realm
- Sugar
4.2.7 辅助
- Logger
- LeakCanary
- DbInspector
本文已上传至Github AndroidDevResources 项目, 欢迎Fork, 提出意见.