[课程背景]
    Android是Google于07年11月5日发布的基于Linux核心的开源手机软件平台,该平台由操作系统、中间件、用户界面和应用软件组成,号称是首个为移动终端打造的真正开放和完整的移动软件。该软件平台由谷歌与开放手机联盟合作开发,这个联盟包括了中移动、摩托罗拉、高通、宏达和 T-Mobile 在内的30多家技术和无线应用的领军企业。
    毫无疑问该平台的出现是具有极大的商业价值的。目前对该平台的应用主要分为两部分人员,一是设备制造商,希望在自己的硬件平台上运行android;另外一部分是移动应用开发者,希望将自己的应用移植到该平台上或者在该平台上开发应用。无论是那部分的人员,首要解决的就是需要对android的系统架构和运行机制有全面而整体的了解和把握。
    本课程就是亚嵌针对这样的培训需求设计的,课程的目的力求通过对android中的zygote进程,android runtime,多媒体系统,RIL等重要组成部分进行细致而深入的讲解,力求让培训者在很短的时间内对android的基本架构有全面而深入的认识,同时结合一定量的实验和分析来加深培训者对这些知识的理解。
[培训目标]
    通过对android中的zygote进程,android runtime,Surface系统,UI系统,Meida框架,RIL等重要的软件模块细致的分析和讲解,使培训者在短时间内能够对android的基本架构有全面而深入的认识,满足进一步深入开发的需要。
[基础要求]
  具有C和C++编程基础,具有一定的Linux的使用和编程基础。
[教学环境]
  ARM6410 (人手一块)
 
[教材参考]
  《亚嵌android课程讲义》
[教师简介]
    ·秦老师,硕士,国内著名公司操作系统部部门经理,作为主要负责人负责公司自主知识产权的操作系统和Linux 3G手机产品核心驱动的开发研究工作。具有多年的嵌入式系统开发经验,丰富的操作系统和驱动开发和授课经验。
    ·冯老师,信庭嵌入式工作室创始人。主要工作和研究领域是嵌入式技术应用、嵌入式产品开发、嵌入式系统架构工程、嵌入式系统项目管理。7年以上嵌入式软硬件开发经验,5年以上项目管理经验 。历任南信工雷达实验室国家863项目"昆虫雷达"项目助理、硬件工程师(含驱动)、系统软件工程师、驱动组组长(驱动架构工程师)、高级嵌入式系统工程师(系统架构工程师)、项目经理(应用架构工程师)、项目主管(产品架构工程师)、嵌入式系统高级讲师、系统硬件部经理、Android技术顾问、Meego技术顾问、产品总监等职位。在 10家公司任过职,为20家公司做过产品,开发过30个以上的项目。
[开课情况]

  开课时间:2011年07月30日 24学时
  上课地点:中科院校区
  学    费:2800元
            为保证教学质量,本班为小班授课,15人为满,报满15人即停止报名或顺延下一期,如您决定上课请
  及时填写报名表并办理报名手续。(报名时需携带本人身份证复印件1张及本人一寸照片3张)

   课程安排 课程内容
第一阶段
理论课

1. android基本介绍和应用开发

  • Android平台介绍

  • android的源代码目录结构

  • android 的核心(kernel),库(libraries),应用框架(frameworks)和应用(application)介绍

  • android的编译结构和编译生成结构

  • android的应用程序结构分析

实验课

【实验】
  1. 建立android编译和开发环境
  2. Pc平台上android模拟器环境的使用(adb, qemu)
  3. 编写简单的hello world应用程序,并在模拟器上运行

理论课
2. android的运行时分析
  • Android底层库,Binder,ashmem机制
  • Android根文件系统说明
  • Init进程和其初始化脚本
  • Init进程启动的系统服务 (sh, adbd, servicemanager, mountd, rild等)
  • zygote进程和android runtime分析
  • zygote进程启动的android系统服务和manager
实验课

【实验】
  1. 编译和配置android的linux核心
  2. 在akae2440平台从NFS上运行android
  3. 分析和配置android初始化脚本
  4. 将hello world程序运行到真实硬件平台上

理论课
3. android中的UI和多媒体框架
  • Surface系统(SurfaceFlinger)和
  • Audio系统(AudioFlinger及移植层)
  • Android的UI系统(包括Camera)
理论课
4. android中的UI和多媒体框架
  • Android Meida框架
  • 播放器,照相机,录音机,摄像机等应用的架构
  • Skia和OpenCore的实现
理论课
5. Radio Interface Layer (RIL)和UI框架结构
  • RIL介绍
  • 背景知识介绍,AT命令和ppp
  • RIL的工作原理和涉及的系统服务
  • RIL的电话呼叫过程和ppp激活过程UI的surface框架
实验课
【实验】
  1. 定制android系统服务
  2. 编译和配置product名为akae2440的android方案
  3. 烧写该方案到开发板上,完成系统的自启动