求知 文章 文库 Lib 视频 Code iProcess 课程 认证 咨询 工具 火云堂 讲座吧   成长之路  
会员   
 
 
 
全部课程 | 技术学院 | 管理学院 | 嵌入式学院 | 在线学院  
成功案例   品质保证  电话 English
追随技术信仰

随时听讲座
每天看新闻
 
   
成功案例
知名某轨 “ReWorks中
塞默菲舍 《嵌入式软件架构设
某水声通 嵌入式Linux应
广汽研究 ARM处理器体系架
联合汽微 嵌入式软件架构设计
某全球知 Linux内核和系
广汽研究 嵌入式软件架构设计

相关课程  
UML +RoseRealtime+嵌入式
C++嵌入式系统开发
嵌入式白盒测试
手机软件测试
嵌入式软件测试
嵌入式操作系统VxWorks
 

Android 系统和驱动开发          
 
授课讲师:Hilsong ,某研发企业技术经理,多年Android开发经验
时间地点:北京、上海、深圳根据报名开班
课程费用: 5500元/人 (学生3折),详见 公开课学习手册
企业内训: 可以根据企业需求,定制内训,详见 内训学习手册
 
课程介绍

课程详细剖析驱动开发,HAL,framework的层开发,Android系统的介绍,以及电源管理,camera,audio子系统介绍。

 
培训目标
  • Android底层开发
  • 分析Android源代码
  • 驱动需要移植
  • HAL层深入分析
  • 连接Android和Linu内核的桥梁——Android的Bionic
  • 进程间通信——Android 的Binder
  • 连接Java和C/C++层的关键——Android的JNI
  • Android的同步和消息机制
  • 第一个用户进程——Android的Init进程
  • 支撑Android世界的一极——Zygote进程
  • 精确地控制资源的使用——Android的资源管理
  • Android系统的核心之一——SystemServer进程
  • APK包的安装、卸载和优化——Android的应用管理
  • Android的组件管理
  • Android的多用户模式
  • Android的图形显示系统
  • Android的窗口系统
  • Android的输入管理
  • Android的电源管理
  • Android的存储系统
  • Android的网络管理框架
  • 深入底层分析Android多媒体系统
  • Android的音频系统
  • 传感器系统
  • 照相机系统
培训对象:Android系统开发工程师
学员基础:具有Android系统级别开发经验
授课方式: 定制课程 + 案例讲解 + 小组讨论,60%案例讲解,40%实践演练
培训内容: 3天
Android底层开发 什么是驱动
开源还是不开源的问题
Android和Linux
简析Linux内核
分析Linux内核源代码很有必要
分析Android源代码 搭建Linux开发环境和工具
获取Android源代码
分析并编译Android源代码
编译Android Kernel
运行模拟器
驱动需要移植 驱动开发需要做的工作
Android移植
Android对Linux的改造
内核空间和用户空间接口是一个媒介
三类驱动程序
HAL层深入分析 认识HAL层
分析HAL层源代码
总结HAL层的使用方法
传感器在HAL层的表现
移植总结
开发一个硬件驱动程序
连接Android和Linu内核的桥梁——Android的Bionic
Bionic
Bionic C库中的系统调用
Bionic中的内存管理函数
管道
Bionic中的线程管理函数
Futex同步机制
Android的 Log模块
可执行文件格式分析
Bionic中的Linker模块
调试器——Ptrace和Hook API
进程间通信——Android 的Binder
Binder
如何使用Binder
Binder应用层的核心类
Binder的实现原理
Binder驱动
解析名称的模块——ServiceManager的作用
匿名共享内存ashmem
连接Java和C/C++层的关键——Android的JNI
JNI的作用
JNI用法
JNI环境
ART带来的JNI变化
Android的同步和消息机制
 
原子操作
Android native层的同步方法
Android Java层的同步机制
Android的消息机制
进程间的消息传递
第一个用户进程——Android的Init进程 Init进程的初始化过程
解析启动脚本init.rc
Init进程对信号的处理
属性系统
守护进程ueventd
“看门狗”——watchdogd
支撑Android世界的一极——Zygote进程 Zygote
Zygote进程的初始化
Zygote启动应用程序
预加载系统类和资源
精确地控制资源的使用——Android的资源管理
资源系统
Android资源的制作
Android资源的使用
Android资源管理的实现原理
全新的设计语言——Android 5.0
的Material Design

Android系统的核心之一——SystemServer进程
SystemServer的创建过程
SystemServer中的Watchdog
APK包的安装、卸载和优化——Android的应用管理
PackageManagerService安装
应用
系统运行时的应用管理
守护进程installd
Android的组件管理
应用进程的组成
Android框架的核心——ActivityManagerService服务
Process管理
Activity管理
应用的启动过程
Service管理
提供数据的访问——
ContentProvider管理
广播——BroadcastReceiver管理
Android的多用户模式 管理用户的系统服务——UserManagerService服务
PackageManagerService和多用户
ActivityManagerServier和多用户
Android的图形显示系统
画布——理解Surface
图像显示原理
SurfaceFlinger服务
图像的输出过程
Android的窗口系统
应用进程和WMS的联系
WindowManagerService服务
确定窗口尺寸
窗口动画管理
Android的输入管理
管理各种输入的服务——InputManagerService
应用进程处理Input消息
Android的电源管理
电源管理服务——
PowerManagerService
控制系统休眠的机制
电池管理服务
Android的存储系统
管理存储设备——Vold守护进程
对存储设备操作——MountService服务
其他存储相关的服务
Android的网络管理框架
管理各种网络设备——Netd守护进程
网络管理的中心——ConnectivityService服务
完成对网络物理接口操作——NetworkManagementService
深入底层分析Android多媒体系统
OpenMax框架
OpenCore框架
Stagefright框架
Android的音频系统
音频系统
AudioPolicyService服务——输入输出设备的状态
音频的核心——AudioFlinger服务
一次完整的播放过程
传感器系统
传感器系统的结构
分析需要移植的内容
在模拟器中实现传感器驱动
照相机系统
Camera系统的结构
分析需要移植的内容
移植和调试
实现Camera系统的硬件抽象层
 
其他人还看了课程
企业战略与变革管理  
红帽认证  
软件架构设计方法  
数据分析与挖掘  
定制内训




最新活动计划
QT应用开发 11-21[线上]
C++高级编程 11-27[北京]
LLM大模型应用与项目构建 12-26[特惠]
UML和EA进行系统分析设计 12-20[线上]
数据建模方法与工具 12-3[北京]
SysML建模专家 1-16[北京]