Android ROM 开发技能图谱
# Android ROM 开发技能图谱
## 1. 操作系统
* Ubuntu(首选)
* MacOSX
## 2. 编程语言
* Java
* JNI(务必掌握)
* C++
* C
## 3. 源码
### 3.1 管理方式
* Codelines/Branches/Releases
* Codenames/Tags/Build Numbers
### 3.2 源码地址
* [官方源码](https://android.googlesource.com)
* [Github镜像](https://github.com/android)
* [高通扩展源码](https://www.codeaurora.org/projects/all-active-projects/android-msm)
* [CM源码](https://github.com/cyanogenmod)
* [MIUI部分源码](https://github.com/MiCode)
### 3.3 下载
* Repo/Git
### 3.4 阅读修改工具
* SourceInsight(首选)
* Eclipse
* Android Studio
### 3.5 编译
* 搭建编译环境
* Makefile编译体系
## 4. 层次体系
### 4.1 核心Applications
* Phone/Contacts/MMS
* Camera/Gallery/Music/Video
* Settings
### 4.2 Frameworks
* Telephony
* MultiMedia
* Connectivity
* Window/View/ActivityManager
* Surface/Graphics
### 4.3 Native Libs
### 4.4 Android Runtime
* Dalvik
* ART
### 4.5 HAL
### 4.6 Linux Kernel
### 4.7 Driver
## 5. 核心系统
### 5.1 Audio
### 5.2 Bluetooth
### 5.3 Camera
### 5.4 Media
### 5.5 Storage
* Internal
* External
* OTG
### 5.6 Sensor
### 5.7 Input
* EventHub
* Touch
### 5.8 Accessories
### 5.9 DRM
### 5.10 Power
### 5.11 Window
* WindowManager
* View
* ActivityManagerService
### 5.12 Telephony
* Phone
* RIL
* ATCommands
* Modem
## 6 辅助技术
### 6.1 刷机
* fastboot
* unlock
* flash
* bootloader
### 6.2 设备分区
* boot
* system
* vendor
* userdata
* cache
* recovery
* misc
### 6.3 product配置
* Carrier
* File System
* Low RAM
* Runtime Permission(6.0)
* ...
### 6.4 调试工具
* GDB
* Valgrind
* Systrace
* Dumpsys
* Network usage
* RAM usage
### 6.5 兼容测试
* CTS源码下载
* CTS设置和执行
### 6.6 OTA升级
* 升级过程
* 全量升级
* 增量升级
* 升级优化
* 缩减升级包
Android ROM 开发技能图谱的更多相关文章
- Android App 开发技能图谱
操作系统 Windows/MacOSX/Linux 编程语言 Java HTML/JS (Hybrid/Web App) C/C++ (NDK) SQL (DB) Kotlin 开发工具 IDE An ...
- Android App开发技能图谱(转载)
操作系统 Windows/MacOSX/Linux 编程语言 Java HTML/JS (Hybrid/Web App) C/C++ (NDK) SQL (DB) Kotlin 开发工具 IDE An ...
- HTML5 开发技能图谱skill-map
# HTML5 开发技能图谱——ROM架构以及Updater-Script脚本分析,常见的Status错误解决办法
Android ROM开发(二)--ROM架构以及Updater-Script脚本分析,常见的Status错误解决办法 怪自己二了,写好的不小心弄没了,现在只好重新写一些了,上篇简单的配置了一下环境, ...
- Android ROM开发(三)——精简官方ROM并且内置ROOT权限,开启Romer之路
Android ROM开发(三)--精简官方ROM并且内置ROOT权限,开启Romer之路 相信ROM的相关信息大家通过前几篇的学习都是有所了解了,这里就不在一一提示了,这里我们下载一个官方包,我们还 ...
- Android ROM开发(一)——Windows下Cygwin和Android_Kitchen厨房的安装
Android ROM开发(一)--Windows下Cygwin和Android_Kitchen厨房的安装 很久没有碰到ROM开发了,在很久很久以前也是从ROM起步的,无奈还是一脚踏上了Android ...
- Node.js 开发技能图谱
# Node.js 开发技能图谱 ## Node.js 语言环境搭建 - Node.js 安装(3m大法:nvm.npm.nrm)- Node.js 命令- Node.js开发工具(推荐vscode) ...
- Golang 开发技能图谱
# Golang 开发技能图谱 ## Go 语言环境搭建- Go 安装- GOPATH 与工作空间- Go 命令- Go开发工具 ## GO 语言编程基础- 关键词和语法(Language Synta ...
随机推荐
- mysql审计插件
Audit Plugin安装使用 原文: https://www.cnblogs.com/waynechou/p/mysql_audit.html#_label0 #有卸载方法 下载地址: htt ...
- 2018-2019-2 20175126谢文航 实验四《Android开发基础》实验报告
一.实验封面 课程:Java程序设计 班级:1751 班 姓名:谢文航 学号:20175126 指导教师:娄嘉鹏 实验日期:2019年5月15日 实验时间:--- 实验序号:实验四 实验名称:Andr ...
- l1和l2正则化
https://blog.csdn.net/tianguiyuyu/article/details/80438630 以上是莫烦对L1和L2的理解 l2正则:权重的平方和,也就是一个圆 l1正则:权重 ...
- 在虚拟机的Linux系统下安装wineqq
| 版权声明:本文为博主原创文章,未经博主允许不得转载. 本文参考教程:http://www.ubuntukylin.com/ukylin/forum.php?mod=viewthread& ...
- 安装Consul服务中心
安装Consul服务中心 首先下载对应版本的安装程序.点击下载 我下载的是macOS64位版本,下载文件是一个ZIP文件,下载后解压缩到一个你喜欢的位置,以开发模式启动consul服务: #进入con ...
- luoguP3128 [USACO15DEC]最大流Max Flow 题解(树上差分)
链接一下题目:luoguP3128 [USACO15DEC]最大流Max Flow(树上差分板子题) 如果没有学过树上差分,抠这里(其实很简单的,真的):树上差分总结 学了树上差分,这道题就极其显然了 ...
- .net Core AJAX使用Header传递参数,以JsonResult返回信息
function postHeader() { $.ajax({ url : "/myTest/PostHeader?time="+ (new date()).getTime(), ...
- go语言从例子开始之Example15.闭包
Go 支持通过 闭包来使用 匿名函数.匿名函数在你想定义一个不需要命名的内联函数时是很实用的. 闭包简单理解,函数反回值是一个函数 Example: package main import " ...
- 三、SpringBoot项目探究
1.pom文件 父项目 <parent> <groupId>org.springframework.boot</groupId> <artifactId> ...
- 程序猿必备的10款web前端动画插件
1.基于jQuery的瀑布流图片筛选插件 瀑布流的展现方式在目前的网页中用得越来越广泛,特别是图片和首页文章的动态加载. 今天分享的这款就是基于jQuery的瀑布流图片筛选插件,我们可以点击图片分类名 ...