操作系统

  • Windows/MacOSX/Linux

编程语言

  • Java
  • HTML/JS (Hybrid/Web App)
  • C/C++ (NDK)
  • SQL (DB)
  • Kotlin

开发工具

  • IDE

    • Android Studio
    • Eclipse
  • 调试工具

    • 网络调试

      • Charles
      • Wireshark
      • Fiddler
      • tcpdump
      • Paw/Postman
    • 内存分析

      • monitor
      • MAT
    • Android tools

      • adb
      • draw9patch
      • hierarchyviewer
      • uiautomatorviewer
  • 版本管理

    • Git

      • Git命令
      • Github/GitLab
    • SVN

  • CodeReview

    • Gerrit
    • Github pull request
  • Bug/任务管理

    • Redmine
    • JIRA
    • Bugzilla
    • Teambition
    • Tower
  • 编译工具

    • Gradle
  • 持续集成

    • Jenkins
    • Travis CI
  • 应用分发

    • 蒲公英
    • fir.im

App基础

  • 基本组件

    • Activity
    • Service
    • Content Provider
    • Broadcast Receiver
    • Intent/Intent Filter
    • App Manifest File
  • UI

    • Layouts
    • Widgets
    • Resources
    • Animations
    • 设备适配
  • Connectivity

    • WiFi
    • Mobile网络
    • 网络状态监听
  • MultiMedia

    • Audio/Video
    • Camera/Gallery
  • GPS&Location&Map

    • 系统定位

      • GPS定位
      • Network定位
    • 3rd Map定位

      • 百度Map
      • 高德Map

App进阶

  • Process&Thread

    • Process

      • Linux进程
      • App进程原理
    • AIDL

      • 实现方式
      • 原理
    • Handler/Looper/MQ/Thread

    • Loader

    • AsyncTask

  • 性能优化

    • ANR

    • 布局层级性能优化

  • 内存优化

    • 内存检测工具

    • 内存分析工具

    • Bitmap优化

    • 内存泄露查找及分析

  • 网络优化

    • API优化

    • 低网速下优化

    • 流量使用优化

      • 判断当前网络类型
      • 使用缓存
  • 单元测试

App高级

  • 相关原理熟悉

    • Activity

      • 启动流程
      • 生命周期回调原理
      • 与View/Window的关系
      • 与Fragment的关系
    • View/Window

      • View/Window关系
      • View渲染
      • View事件分发处理流程
    • 编译打包

      • 编译打包原理
      • 逆向工程分析
      • 热修复
  • Hybrid App

    • 与Native App的异同

    • 主流框架

      • PhoneGap
      • ionic
      • React Native
  • 架构能力

    • 架构

      • MVC
      • MVP
      • MVVM
      • Flux
      • Clean Architecture
    • App框架

      • 分包
      • 分层
    • 设计模式

      • OOD原则
      • 常用设计模式运用
  • ART&Dalvik

    • AOT compilation
    • GC
    • Bytecode&.Dex
  • 自动化测试

    • monkey/monkey runner
    • UIAutomator
    • Espresso
    • Robotium

扩展学习

  • 响应式编程

    • Rx

      • RxJava
      • RxAndroid
      • RxBinding
    • Agera

  • 主流开源库

    • 快速开发

      • Android Annotation
      • ButterKnife
    • Views

      • 太多
    • HTTP模型

      • Retrofit
      • OkHttp
      • Volley
    • 图片处理

      • Glide
      • Fresco
      • Picasso
      • UIL
    • 依赖注入

      • Dagger2
    • 数据库

      • ORMLite
      • GreenDAO
      • Realm
      • Sugar
    • 辅助

      • Logger
      • LeakCanary
      • DbInspector

本文转载自:https://github.com/TeamStuQ/skill-map/blob/master/data/map-MobileDev-AndroidDev.md

Android App 开发技能图谱的更多相关文章

  1. Android App开发技能图谱(转载)

    操作系统 Windows/MacOSX/Linux 编程语言 Java HTML/JS (Hybrid/Web App) C/C++ (NDK) SQL (DB) Kotlin 开发工具 IDE An ...

  2. Android ROM 开发技能图谱

    # Android ROM 开发技能图谱 ## 1. 操作系统 * Ubuntu(首选)* MacOSX ## 2. 编程语言 * Java * JNI(务必掌握)* C++* C ## 3. 源码 ...

  3. Android 架构师技能图谱

    # Android 架构师技能图谱 ## 架构与设计 - 设计模式 - 重构 - 技术选型 - 特性 - 可用性 - 性能 - 包大小 - 方法数 - 文档 - 技术支持 - UI架构模式 - MVC ...

  4. HTML5 开发技能图谱skill-map

    # HTML5 开发技能图谱![HTML5 脑图](https://github.com/TeamStuQ/skill-map/blob/master/data/designbyStuQ/png-HT ...

  5. 一看就懂的Android APP开发入门教程

    一看就懂的Android APP开发入门教程 作者: 字体:[增加 减小] 类型:转载   这篇文章主要介绍了Android APP开发入门教程,从SDK下载.开发环境搭建.代码编写.APP打包等步骤 ...

  6. Android APP开发需求文档范本

    Android  APP开发需求文档范本 软件需求文档格式的标准写法 1.引言 1.1 编写目的 • 阐明开发本软件的目的: 1.2 项目背景 • 标识待开发软件产品的名称.代码: • 列出本项目的任 ...

  7. Android App开发常用专题开源代码

    Android App开发中用到过的专题类开源代码: 项目的需求多了,不知不觉成了Github摘抄员,感谢分享精神,节省了很多弯路和时间.不过想要实现指定效果,还是要看懂作者的思路才好下手改造. 主题 ...

  8. 关于Android App开发技术分类的一个小总结

     前言 本文从热更新.异步并发.性能优化.网络请求等多个方面对Android App开发的技术进行了一个分类总结.欢迎大家沟通交流. 热更新 [原]热更新开源项目Tinker源码解析之Dex热更新 [ ...

  9. 关于Android App开发知识体系的一个小总结

     前言 本文从热更新.异步并发.性能优化.网络请求等多个方面对Android App开发的知识体系进行了一个分类总结.欢迎大家沟通交流. 热更新 [原]热更新开源项目Tinker源码解析之Dex热更新 ...

随机推荐

  1. TinyOS和Deluge的安装模拟(二)

    TinyOS的安装 TinyOS的安装是一件麻烦的事情,它不像其他的开发环境那样配置简单.要想成功安装好TinyOS,需要选择好PC操作系统,TinyOS安装文件的版本,工具链的版本…….总之,安装过 ...

  2. Microsoft Orleans 之 入门指南

    Microsoft Orleans 在.net用简单方法构建高并发.分布式的大型应用程序框架. 原文:http://dotnet.github.io/orleans/ 在线文档:http://dotn ...

  3. js 模块化历程

    作者:吕大豹 网址:http://www.cnblogs.com/lvdabao/p/js-modules-develop.html 这是一篇关于js模块化历程的长长的流水账,记录js模块化思想的诞生 ...

  4. easyui combobox 值怎样获取

    $('#com').combobox('getValue')获取当前选中的值$('#com').combobox('getText')获取当前选中的文字

  5. jQuery 3.0正式发布

    jQuery 基金会刚刚发布了该 JavaScript 框架的 3.0 版本,并且首次抛弃了对老旧的 IE 浏览器的支持.jQuery 3.0 的工作始于 2014 年 10 月,其最初目标是在 2. ...

  6. C#遍历Dictionary

    C#遍历Dictionary方法 Dictionary<string, int> d = new Dictionary<string, int>(); foreach (Key ...

  7. css特效

    1.页面淡入淡出 <html style="background:#0086b5"> <!--简易loading--> <div id="l ...

  8. XE8 for iOS 状态栏的几种效果

    XE8 实现 iOS 状态栏的几种效果: 一.状态栏底色: 开一个新工程. 设定 Fill.Color 颜色属性. 设定 Fill.Kind = Solid. 无需修改任何官方源码. 二.隐藏状态栏( ...

  9. Gym 100703G---Game of numbers(DP)

    题目链接 http://vjudge.net/contest/132391#problem/G Description standard input/outputStatements — It' s ...

  10. 框架Spring笔记系列 一 基础

    主题:Spring 1.什么样的问题,使得Spring框架应用而生?使用Spring解决了那些问题? 2.