分类: 嵌入式
2011-05-27 21:41:01
Android 系统开发高端培训--IASN·爱朔科技 |
培训纲要
第一阶段.Android基本架构
l Android系统架构简介
l Android上面Java层与下面C/C++层之衔接架构和技术
l 认识Java虚拟机器VM所扮演的角色
l Anrdoid框架的四大基本组件
--- Activity
--- IntentReceiver
--- ContentProvider
--- Service
l 基本组件的Intent-Based沟通机制
第二阶段.「知己知彼」第1步:认识及发展Android的动态程式库
l 为什麽*.so动态程式库是焦点呢?
l *.so的基本结构
l *.so的开发技术、方法
l *.so的安装与使用
l *.so如何顶天立地,衔接上层Java应用程式与底层Driver。
l 设计*so的经验传承
第三阶段.Android框架内的沟通机制
l Android的线程(Thread)基本模式
l Android的Message Queue机制
l Android的Call Back机制
l Java函数如何呼叫C/C++函数
l C/C++函数如何反向呼叫Java函数
l 为什麽JNI是核心技术
l JNI的详细使用技术
l Intent-based的详细使用技术
l 以MediaPlayer为例说明Java层与C/C++层的详细线程沟通架构
第四阶段.实机示范演练
l 简介Linux及Ubuntu的使用
l 以Calculator为例规划*.so程式库的功能、线程及JNI介面内容
l 撰写JNI介面定义,并使用tool chain 进行编译。
l 撰写C/C++程式码支持JNI介面定义
l 使用tool chain编译C/C++程式码,并连结为*so动态程式库。
l 实机安装*so程式库
l 撰写Java应用类别来呼叫*so程式库,以实证之。
第五阶段.Android的Binder Kernel架构
l IPC(Inter-Process)管理机制简介
l Android的IPC管理机制:Binder Kernel架构
l 开发*so动态程式库时,如何确保能符合Android的线程模式和Binder Kernel架构。
l 以MediaPlayer为例说明*.so程式库如何融入Binder Kernel架构
l 以MediaPlayer为例说明*.so程式库如何符合Android的线程模式
第六阶段.「知己知彼」第2步:替*.so规划上层Java的抽象类别
l 複习「知己知彼」的第1步:分析、设计、开发及安装*.so动态程式库。
l 说明「知己知彼」的第2步:替*.so规划上层Java的介面,让Java层应用类别更容易使用*.son。
l MediaPlayer.java为例说明它如何呼叫*.so裡的 MediaPlayer.cpp类别函数
l 让Binder.java与MediaPlayer.java互相结合之做法
第七阶段.上层Java组件之沟通机制
l 细说Anrdoid上层Java组件:
--- Activity
--- IntentReceiver
--- ContentProvider
--- Service 之沟通机制
l 复习:Android的线程间沟通模式
l 细说Intent-based沟通机制的特性和限制
l 以设计样式(Design Patterns)说明Java组件之合作机制
l 以MediaPlayer为例说明Java类别的线程规划
l 以MediaPlayer为例说明Java类别的的IBinder介面设计
第八阶段.实机示范演练
l 简介Eclipse的使用
l 以Calculator.java为例实际进行它的线程规划
l 以Calculator.java为例实际进行它的IBinder介面设计
l 运用OO观念撰写l Calculator.java抽象父类别
l 撰写Calculator.java应用子类别
l 撰写Activity UI应用子类别来使用Calculator父子类别
l 实际手机安装:将上述*so和Java应用程式安装于HTC的G1实际手机,并执行来检验之。
l 实机演练之复习与讨论。
来源于IASN·爱朔科技