Android开发应该掌握的28⼤内容和10⼤建议(⼀)成为Android⾼⼿必须掌握的8项基本要求
【1】 Android操作系统概述
1. Android系统架构。
2. Android利⽤设计理念。
3. Android 开源知识。
4. Android 参考⽹站与权威信息。
【2】 Android SDK及其开发环境搭建
1. Android SDK的版本发布。
2. ADT插件的安装和更新。
3. Android利⽤程序架构。
4. 建⽴第⼀个Android项⽬(HelloAndroid!)。
5. 通过Eclipse导⼊⼀个开源项⽬
6. 可视化的界⾯开发⼯具
7. 布置利⽤程序到Android模仿器或⼿机
【3】Android源代码开发环境搭建与源码结构分析
1.开发系统主机环境搭建。
2. 安装软件包Required Packages。
3.Ubuntu 6.06 (Dapper)。
4. Ubuntu 8.04。
5. Ubuntu 7.10。
6.Install javva。
7.源码结构分析Android source (kernel / platform/application)。
8. Android build system。
9. Android bring up。
【4】 Android 利⽤程序设计模型
1. drawable。
2. layout 。
3. values(l、l、l 、l等)。
4. R.java分析及应⽤。
5. l。
6. Android.mk。
7. Activity 。
8. Intent。
9. Service 。
10.ContentProvider。
【5】 Android 利⽤程序界⾯(⼀)
1. TextView的应⽤。
2. drawable的应⽤。
3. 引⽤Drawable⾊彩常数及背风景。
4. CharSequence数据类型与ResourceID利⽤。
5. DisplayMetrics的应⽤。
6. Style样式的定义。
7. Button事件处理。
8. setContentView的利⽤。
9. Intent对象的应⽤。
10. Bundle对象的实现。
11. startActivityForResult法⼦。
12. AlertDialog窗⼝。
13. Button与TextView的交互。
14. Typeface对象应⽤。
android编程入门指南 pdf16. 多按钮利⽤。
17. Menu功效菜单程序设计。
18. ProgressDialog与线程利⽤。
19. 动态产⽣按钮并最⼤化。
20. 选择功效的对话框。
21. Android主题(Theme)实现。
22. ⽀撑多种分⼿率的屏幕。
【6】 Android利⽤程序界⾯(⼆)
1. EditText与setOnKeyListener事件。
2.ImageButton的焦点及事件处理。
3. Toast对象的应⽤。
4. CheckBox的isChecked属性。
5. 多选项CheckBox的利⽤。
6. RadioGroup组与onCheckedChanged事件。
7. ImageView的堆栈利⽤。
8. Spinner与setDropDownViewResource。
9. ArrayList与Widget的依附性。
10. Gallery与衍⽣BaseAdapter容器。
11. JavaI/O的利⽤。
12.ImageButton选择特效。
13. AutoCompleteTextView与数组。
14. AnalogClock与DigitalClock的原理。
15. DatePicker与TimePicker利⽤。
16. ImageView点击事件与透明度处理。
17. ProgressBar与Handler的整合利⽤。
18. GridView与ArrayAdapter设计。
19. ListView的布局。
20. ListActivity与Menu整合技术。
21. JavaI/O与ListActivity的联合。
22. 应⽤decodeFile法⼦。
23. 运⽤Matrix对象来缩放图⽂件。
24. Bitmap与Matrix旋转ImageView。
25. RadioButtonID。
26. 对话窗⼝上的ICON图标。
【7】Android 利⽤交互与⼿机模块把持
1. PendingIntent与AlarmManager。
2. PendingIntent 与 SmsManager 。
3. Intent 与 Email。
4. 数据存储法⼦。
5. NotificationManager与Notification。
6. Adapter对象与Cursor。
7. TelephonyManager的利⽤。
8. RunningTaskInfo的利⽤。
9. Provider.Contact的应⽤。
10.Provider.Calendar的应⽤。
11. Service与Runnable整合并⽤。
12.BroadcastReceiver与Intent 。
13. receiver与intent-filter。
14. Android⽹络编程。
15. HTTP恳求与连接。
16. WebView.loadUrl。
17. Webkit 与 WebCore。
18. HttpURLConnection与URLConnection和运⾏线程。
19. Runnable混搭SurfaceView。
【8】 Android 系统服务
1. Activity Manager。
2. Windows Manager。
3. Surface Manager(surface flinger)。
4. Package Manager。
5. Telephony Manager。
6. Content Provider。
7.Resource Manager。
8. AssetManager。
9. View System。
10.Location Manager。
11. Notification Manager。
12.AlarmManager。
13. BatteryManager。
14. HardwareManage。
15. 如何添加⼀个新系统Service并开放API。
16. 要害服务。
17. Android系统启动流程。
(⼆)成为Android⾼⼿必须掌握的20项进阶要求
ARM平台 Android 移植与驱动核⼼开发
Android嵌⼊式智能操作系统是基于Linux内核和驱动的,对于HTC、华为等公司开发Android操作系统时,需要专门将Android移植到特定硬件平台下,同时将必要的驱动进⾏编写及开发。本课程旨在让学员成为Android的核⼼层开发者,让学员在这种嵌⼊式设备⼚商中谋得核⼼开发⼈员的职位。
1. Android系统体系及移植相关⼯具
1.1Android操作系统体系结构介绍。
Android Linux内核移植介绍。
⽂件系统,toolbox等移植。
存储驱动移植。
Bootloader相应⽅案与移植。
Android虚拟器Dalvik移植介绍。
1.2ARM处理器介绍。
ARMv5TJS。
ARM中断处理。
ARM体系结构与ARM处理器的体系结构。
IP核、芯⽚与开发板。
ARM处理器结构处理器模式。
. 寄放器。
. 流⽔线结构。
C语⾔内嵌汇编款式与编程实例。
1.3ARM指令系统。
.
算术逻辑指令。
.指令对状态寄放器的影响。
.对⽐指令。
.分⽀指令。
.移位。
.指令位图。
.辨认机器指令。
1.4内存造访与内存把持。
.数据总线与地址总线的应⽤与实例。
.STR/LDR 。
1.5ARM历程调⽤标准。
.
反汇编。
.APCS。
.C语⾔函数与汇编的互相调⽤。
【案例】应⽤Android Linux patch进⾏Linux内核的构建      2. AndroidLinux内核移植与核⼼开发
2.1ARM处理器的Android系统构建。
2.2输⼊输出设备驱动移植。
2.3存储设备nand flash,MMC/SD卡驱动移植。
2.4Framebuffer移植。
2.5 Touchscreen移植。
2.6 Open Binder IPC移植。
【案例】
2.7在ARM处理器上移植Android实验。
2.8编写Nand flash驱动。
2.9移植Framebuffer驱动。
2.10硬件相关部分(键盘、触摸屏、LCD等)。
3. Android相关环境库、以及Bionic系统移植
3.1libc移植。
3.2libm移植。
3.3libdl移植。
3.4libm移植。
3.5 busybox, toolbox移植。
【案例】
1.移植glibc。
2.移植busybox和toolbox。
4. Android Dalvik移植⼀
4.1 JNI Call Bridge相关原理。
4.2 dx, dalvitvm原理和应⽤。
4.3 Dalvik指令款式。
4.4 Dalvik履⾏款式dex 。
4.5 Java字节码款式。
5. Android Dalvik移植⼆
5.1 Dalvik Library原理。
5.2 dalvit libcore核⼼库移植。
5.3 dalvit/vm/native移植。
5.4 Dalvik Interpreter原理。
5.5 Dalvik Mterp。
6. ARMAT&T汇编
6.1AT&T汇编语法详解。
6.2gas⼯具的应⽤。
6.3label标签的作⽤。
6.4数据与代码的散播。
7. 链接脚本ld-script
7.1 段地址的断定。
7.2 编写ld-script。
7.3 ELF款式与libc函数库的关系。
8. 时序电路根基
8.1电平信号。
8.2 电路图分析。
8.3时序图分析。
8.4datasheet查看。
8.5s3c2440的外围器件结构。
8.6GPIO操作。
9. AMBA总线标准
9.1 AMBA总线标准。
9.2 FCLK/HCLK/PCKL频率分配与设置。
9.3 Watchdog计时操作。
9.4 UART操作。
9.5 ARM中断体系。
9.6 异常向量表。
9.7 ARM模式切换。
9.8 ARM中断把持器。
9.9 软中断。
9.10 Linux系统调⽤的实现。
10. Nand Flash把持器
10.1 Flash原理。
10.2 Nand把持器原理及时序分板。
10.3k9f1208时序分析。
11. 内存把持器
11.1 s3c2440物理地址散播。
11.2 SDRAM原理与时序。
11.3 内存把持器的物理连接。
11.4 地址对齐。
11.5 SRAM造访。
12. 内存管理单元
12.1 MMU的原理。
12.2ARM协处理器指令。
12.3 section模式。
12.4 small page模式。
12.5 I & D TLBs 。
12.6 I & DCache。
12.7 哈佛结构的原理与实现。
13. DMA 直接内存造访的机制与应⽤
13.1 DMA的状态机。
13.2 DMA的把持。
14. 触摸屏接⼝与ADC接⼝与实例
14.1 ADC原理。
14.1 触摸屏接⼝与把持。
15. LCD把持器
15.1 图形显⽰原理。
15.2 LCD把持器。
15.3 LCD时序。
15.4 LCD驱动相关的框架与体系。
16. I2S⾳频总线
16.1⾳频硬件原理。
16.2 I2S时序。
16.3 s3c2440上I2S的操作。
16.4⾳频设备的裸驱动讨论。
17. CS8900⽹卡把持
17.1 逻辑链路层与MAC层。
17.2 CS8900原理与时序分析。
17.3后续⽹卡裸驱动讨论与体系结构。
18. TCP/IP协议栈移植,与⽹络体系结构            18.1 LwIP TCP/IP协议栈简介。
18.2 LwIP配置与编译。
18.3 tftp配置与编译。
19. Bootloader原理与移植
19.1u-boot的配置、编译。
19.2u-boot启动历程分析。