Android Framework & HAL软硬整合技术班
                            
                            Android 已成为重要的手持装置操作系统,为协助国内企业快速掌握Android作业系统的技术,并建立团队技术能力,以提升企业产品开发的能力,是特别针对产品开发所涉及的Android底层技术所细心规划的必要课程,内容特别针对设计原理与实作细节进行说明,课程深入浅出,以至简方式介绍实务Android框架与底层技术的课程。旨在培养出一批真正的能在Android领域可以实战和驰骋的高端人才。
                          
                            一、培训目标 
                          1)建立开发Android产品的正确观念
                          2)建立开发框架的实务能力
                          3)建立开发HAL驱动模块的实务能力 
                            4)撰写品质良好的代码 
                          二、培训对象 
                          1) 希望迅速了解和掌握Android底层技术的人员; 
                          2) 希望从事移动终端开发的爱好者、工程师、程序员、以及相关行业的工程技术人员
                          
                          三、教学大纲
                          第一阶段 Android OS 开发环境建立与编译
                            1.1 Android 框架(framework)架构介绍
                            1.2 如何取得Android原始码
                            1.3 Android product 分支建立
                            1.4 编译 ARMv5+Android系统(image制作)
                            1.5 使用Android emulator
                            1.6 Vanilla Kernel & Android kernel 编译
                          第二阶段 HAL技术详解
                            2.1 HAL的意义与二进位佈署(Binary File Deploy)
                            2.2 Service 与 Manager 的意义与用途
                            2.3 Libhardware 与 HALAPL
                            2.4 Stub & Module的观念
                            2.5 专题讨论:定义并选写第一个HALStub 
                          第三阶段 HAL Development
                            3.1 HAL Stub Analysis and Design (OOAD)
                            3.2 HAL Stub Class
                            3.3 HAL Stub lnterface
                            3.4 专题讨论:开发LED的HAL 模组
                           第四阶段 Extend Android APL
                            4.4 如何加入API至Android Framework
                            4.2 如何编译并制作独立JAR挡
                            4.3 上机实验:开发LedService APL与制作mokoid.jar程式库
                          
                            第五阶段 JNI & Runtime Library
                            5.1 什么是JNI
                            5.2 如何选写JNI & Native Method
                            5.3 如何制作Android Runtime Library
                            5.4 专题讨论:如何开发与制作 Runtime Library
                           第六阶段 Android Service
                            6.1 Android Process 模式
                            6.2 Component 与 Main Thread 
                            6.3 SystemServer 介绍 
                            6.4 ServiceManager 介绍
                            6.5 专题讨论:SensorManager与SensorService实例
                           第七阶段 SystemService与HAL整合
                            7.1 IPC Remote method call与Binder观念说明
                            7.2 AIDL介绍与llnterface设计观念解析
                            7.4 ServiceMamager
                            7.5 专题讨论:LeddService设计与ILedService探讨
                           第八阶段 Manager API(Refinement-架构优化)
                            8.1 SensorManager 与SensorService实例探讨
                            8.2 Remote Object观念与IBinder介绍
                            8.3 如何以Proxy Object整合Android Service
                            8.4 Long operations 的解析与实作细节
                            8.5 RemoteException 的解析与实作细节
                            8.6 Handler与Message 的解析与实作细节
                            8.7 Error Handling
                           第九阶段 分组专题探讨
                            9.1 Example 1:整合驱动程式至Android 框架
                            9.2 Example 2:选写Android应用程式以控制LED
                            9.3 Example 3:标准的Android HAL 架构
                            9.4 Example 4:Motor HAL Stub