网站首页 > 开源技术 正文
引言:
今天偶然看到StuQ的技术图谱, 找了找竟然没有Android开发的. 想起之前自己弄了一个, 翻出来看看并不过时, 整理下发出, 大家共同进步.
图片比较大, 加载较慢, 请等待~~
Android_App_Skill_Map
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, 提出意见.
(本文地址, 或github资源地址
https://github.com/mingjunli/AndroidDevResources/wiki/Android-App%E5%BC%80%E5%8F%91%E6%8A%80%E6%9C%AF%E5%9B%BE%E8%B0%B1)
猜你喜欢
- 2025-03-06 ADB 下载、安装及使用教程:让你更好地管理 Android 设备
- 2025-03-06 优化细节表现 Nexus 5体验Android M
- 2025-03-06 Android Studio中使用AIDL
- 2025-03-06 Debian10下使用Android平板作为第二台显示器
- 2025-03-06 pingtools pro安卓版
- 2025-03-06 Android ANR:原理分析及解决办法
- 2025-03-06 编译适用于Android-ARM架构的tcpdump工具
- 2025-03-06 使用Xamarin和Visual Studio开发Android可穿戴设备应用
- 2025-03-06 达内安卓培训专家:Android应用开发必备
- 2025-03-06 为什么嵌入式开发不用安卓
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- jdk (81)
- putty (66)
- rufus (78)
- 内网穿透 (89)
- okhttp (70)
- powertoys (74)
- windowsterminal (81)
- netcat (65)
- ghostscript (65)
- veracrypt (65)
- asp.netcore (70)
- wrk (67)
- aspose.words (80)
- itk (80)
- ajaxfileupload.js (66)
- sqlhelper (67)
- express.js (67)
- phpmailer (67)
- xjar (70)
- redisclient (78)
- wakeonlan (66)
- tinygo (85)
- startbbs (72)
- webftp (82)
- vsvim (79)
本文暂时没有评论,来添加一个吧(●'◡'●)