Android Framework & HAL軟硬整合技術(shù)班
Android 已成為重要的手持裝置操作系統(tǒng),為協(xié)助國內(nèi)企業(yè)快速掌握Android作業(yè)系統(tǒng)的技術(shù),并建立團隊技術(shù)能力,以提升企業(yè)產(chǎn)品開發(fā)的能力,是特別針對產(chǎn)品開發(fā)所涉及的Android底層技術(shù)所細心規(guī)劃的必要課程,內(nèi)容特別針對設(shè)計原理與實作細節(jié)進行說明,課程深入淺出,以至簡方式介紹實務(wù)Android框架與底層技術(shù)的課程。旨在培養(yǎng)出一批真正的能在Android領(lǐng)域可以實戰(zhàn)和馳騁的高端人才。
一、培訓(xùn)目標(biāo)
1)建立開發(fā)Android產(chǎn)品的正確觀念
2)建立開發(fā)框架的實務(wù)能力
3)建立開發(fā)HAL驅(qū)動模塊的實務(wù)能力
4)撰寫品質(zhì)良好的代碼
二、培訓(xùn)對象
1) 希望迅速了解和掌握Android底層技術(shù)的人員;
2) 希望從事移動終端開發(fā)的愛好者、工程師、程序員、以及相關(guān)行業(yè)的工程技術(shù)人員
三、教學(xué)大綱
第一階段 Android OS 開發(fā)環(huán)境建立與編譯
1.1 Android 框架(framework)架構(gòu)介紹
1.2 如何取得Android原始碼
1.3 Android product 分支建立
1.4 編譯 ARMv5+Android系統(tǒng)(image制作)
1.5 使用Android emulator
1.6 Vanilla Kernel & Android kernel 編譯
第二階段 HAL技術(shù)詳解
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 專題討論:開發(fā)LED的HAL 模組
第四階段 Extend Android APL
4.4 如何加入API至Android Framework
4.2 如何編譯并制作獨立JAR擋
4.3 上機實驗:開發(fā)LedService APL與制作mokoid.jar程式庫
第五階段 JNI & Runtime Library
5.1 什么是JNI
5.2 如何選寫JNI & Native Method
5.3 如何制作Android Runtime Library
5.4 專題討論:如何開發(fā)與制作 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設(shè)計觀念解析
7.4 ServiceMamager
7.5 專題討論:LeddService設(shè)計與ILedService探討
第八階段 Manager API(Refinement-架構(gòu)優(yōu)化)
8.1 SensorManager 與SensorService實例探討
8.2 Remote Object觀念與IBinder介紹
8.3 如何以Proxy Object整合Android Service
8.4 Long operations 的解析與實作細節(jié)
8.5 RemoteException 的解析與實作細節(jié)
8.6 Handler與Message 的解析與實作細節(jié)
8.7 Error Handling
第九階段 分組專題探討
9.1 Example 1:整合驅(qū)動程式至Android 框架
9.2 Example 2:選寫Android應(yīng)用程式以控制LED
9.3 Example 3:標(biāo)準(zhǔn)的Android HAL 架構(gòu)
9.4 Example 4:Motor HAL Stub