課程大綱 |
課程內(nèi)容 |
第一階段 |
第1部分 異步事件處理 |
1. 異步處理事件概述
1.1.1 異步函數(shù)和異步服務
1.1.2 活動叼頓器
1.1.3 活動對象
1.2 活動對象編程
1.2.1 實現(xiàn)活動對象
1.2.2 運行機制
1.2.3 常見問題
1.3 定時器編程簡介
1.3.1 定時器服務簡介
1.3.2 RTimer類
1.3.3 RTimer編程實例
1.4 CTimer編程實例
1.4.1 倒數(shù)技術(shù)
1.4.2 鬧鐘
1.4.3 自動鍵盤鎖
1.5 其他定時器類
1.5.1 CPeriodic類
1.5.2 CHeartBeat類
1.5.3 CDeltaTimer類 |
【實驗】 |
實驗1:自動鍵盤鎖
實驗2:鬧鐘 |
第2部分 TCP/IP網(wǎng)絡編程 |
2. TCP/IP協(xié)議與互聯(lián)網(wǎng)
2.1.1 TCP/IP協(xié)議
2.1.2 IP地址、域名、和端口號
2.1.3 客戶機/服務器模型
2.2 配置開發(fā)環(huán)境
2.2.1 設(shè)置模擬器的IP地址
2.2.2 選擇網(wǎng)卡
2.2.3 驗證配置是否正確
2.3 TCP/IP套接字編程
2.3.1 UDP套接字編程方法
2.3.2 TCP套接字編程方法 |
【實驗】 |
實驗1:UDP套接字編程實驗
實驗2:TCP套接字編程實驗 |
第3部分 高級開發(fā)技巧詳解 |
3. 良好的編程風格
3.1.1 遵循編碼約定
3.1.2 減少代碼量
3.1.3 謹慎使用棧內(nèi)存
3.1.3 堆內(nèi)存的注意事項
3.1.3 提高執(zhí)行效率
3.2 防御性編程技術(shù)
3.2.1 嚴重錯誤
3.2.2 斷言
3.2.4 對象不變性
3.2.5 堆檢查
3.3 測試技術(shù)
3.3.1 審查源代碼
3.3.2 代碼覆蓋率測試
3.3.3 測試程序引擎
3.3.4 模擬資源訪問錯誤
3.3.5 手機與模擬器的區(qū)別
3.4 調(diào)試技術(shù)
3.4.1 IDE的調(diào)試功能
3.4.2 搜集出錯誤
3.4.3 定位內(nèi)存泄漏
3.4.4 輸出調(diào)試信息 |
第二階段 |
第4部分 文件服務器及流處理詳解 |
1.1 基于文件的應用程序
1.1.1 用戶和系統(tǒng)文件
1.1.2 命名和位置約定小結(jié)
1.2 API詳解
1.3 文件服務器
1.3.1 文件服務器會話
1.3.2 當前目錄
1.3.3 驅(qū)動器、文件系統(tǒng)和存儲介質(zhì)
1.3.4 文件
1.3.5 目錄
1.3.6 文件名解析
1.4 streams程序
1.4.1 與文件服務器建立連接
1.4.2 文件寫入
1.4.3 回讀
1.4.4 文件名解析
1.4.5 文件API小結(jié)
1.5 流
1.5.1 內(nèi)部格式和外部格式
1.5.2 外部化和內(nèi)部化數(shù)據(jù)的途徑
1.5.3 流類型 |
第5部分 多媒體,視頻播放以及流媒體技術(shù)詳解 |
2.1 多媒體組件架構(gòu)
2.2 多媒體框架(MMF)
2.2.1 客戶端API
2.2.2 控制器框架
2.2.3 控制器插件
2.2.4 底層子系統(tǒng)
2.2.5 圖像轉(zhuǎn)換庫(ICL)
2.2.6 板載照相機API(ECam)
2.3 使用MMF
2.4 使用音頻
2.4.1 播放音調(diào)
2.4.2 播放剪輯
2.4.3 錄制剪輯
2.4.4 格式轉(zhuǎn)換
2.4.5 音頻流化
2.5 使用視頻
2.5.1 視頻回放
2.5.2 視頻錄制
2.6 控制器框架API
2.7 使用ICL
2.7.1 基于活動對象的圖像處理
2.7.2 圖像解碼
2.7.3 圖像編碼
2.7.4 靜態(tài)函數(shù)
2.7.5 位圖轉(zhuǎn)換 |
【實驗】 |
實驗1:用帶圖標的listbox列舉出任意目錄下所有的指定擴展名的文件和文件夾
本實驗主要是了解對本地文件和文件夾操作方法。
實驗2:讀取ZIP文件
本實驗使用Symbian OS提供的一個名為CzipFile的類來讀取ZIP格式的文件。
實驗3:使用手機本身的選擇框選擇手機的一個圖片、音頻、視頻文件打開
本實驗通過系統(tǒng)方式對圖片、音頻、視頻文件打開。
實驗4:播放一個本地3gp文件,并實現(xiàn)旋轉(zhuǎn)和縮放功能,啟動realplayer播放rstp
本實驗主要演示3gp文件的播放處理技巧。
|
第三階段 |
第6部分 網(wǎng)絡連接處理詳解 |
3.1 socket詳解
3.1.1 Series 60 的套接字
3.1.2 客戶端和服務器
3.1.3 斷開式和連接式套接字
3.1.4 連接式套接字
3.1.5 安全套接字
3.2 http詳解
3.2.1 會話
3.2.2 事務
3.2.3 Headers
3.2.4 Data supplier
3.2.5 Filter |
第7部分 藍牙處理詳解 |
4.1 藍牙應用概述
4.1.1 基本術(shù)語介紹
4.1.2 藍牙技術(shù)和產(chǎn)品應用領(lǐng)域
4.2 藍牙應用系統(tǒng)技術(shù)分析
4.2.1藍牙協(xié)議棧的體系結(jié)構(gòu)
4.2.2 藍牙無線傳輸分析
4.2.3 藍牙系統(tǒng)基本結(jié)構(gòu)分析
4.3 Symbian藍牙通信的實現(xiàn)
4.3.1 藍牙服務的發(fā)布
4.3.2 藍牙設(shè)備的搜尋
4.3.3 藍牙服務的搜尋
4.3.4 藍牙套接字通訊 |
【實驗】 |
實驗1:Soket方式網(wǎng)絡示例
實驗2:端到端HTTP方式網(wǎng)絡示例
以上兩個實驗分別用不同的連接方式演示了:如何通過一種安全方式進行服務器和移動終端的數(shù)據(jù)傳輸;在客戶端如何解析接收到的數(shù)據(jù)。
實驗3:藍牙單點對多點通訊示例
本實驗主要是展示藍牙的相關(guān)技術(shù),搜尋服務和設(shè)備,并同多個設(shè)備建立連接。 |
第四階段 |
第8部分 活動對象詳解 |
5.1 活動對象的工作原理
5.1.1 實時操作系統(tǒng)的基本概念
5.1.2 Symbian OS程序架構(gòu)
5.1.3 活動對象的響應
5.2 活動對象工作方式
5.2.1 取消請求的更多知識
5.2.2 錯誤處理
5.2.3 非搶占和優(yōu)先級
5.2.4 啟動和終止規(guī)劃器
5.2.5 在活動規(guī)劃器中添加功能
5.2.6 框架小結(jié)
5.3 活動對象模式
5.3.1 維護未完成的請求
5.3.2 狀態(tài)機
5.3.3 處理完成的接口
5.3.4 長期運行的任務和增量接口 |
第9部分 客戶端-服務器框架詳解 |
6.1 引言
6.1.1 處理常規(guī)請求
6.1.2 建立會話
6.1.3 啟動服務器
6.1.4 處理異步請求
6.1.5 結(jié)束會話并在客戶端消亡后清理
6.1.6 在服務器消亡后清理
6.1.7 處理一個會話中的多個對象
6.2 性能
6.2.1 客戶端緩沖
6.2.2 高級事務
6.2.3 數(shù)據(jù)緩存
6.2.4 相同進程中的相關(guān)服務器
6.2.5 共享內(nèi)存
6.3 服務器和線程
6.3.1 在線程間共享客戶端對象
6.3.2 服務器中的多線程
6.3.3 時間起關(guān)鍵作用的服務器性能
6.3.4 線程優(yōu)先級
6.4 客戶端-服務器API
6.4.1 線程基礎(chǔ)
6.4.2 線程間數(shù)據(jù)傳輸和數(shù)據(jù)包類
6.4.3 客戶端對象
6.4.4 服務器端的對象
|
第10部分 ECOM詳解 |
7.1 ECOM 框架
7.2 ECOM接口的特性
7.3 工廠方法
7.4 實現(xiàn)一個ECOM接口
7.5 資源文件
7.6 示例客戶代碼
|
【實驗】 |
實驗1:活動對象示例
本實驗將展示如何在一個新線程里創(chuàng)建活動規(guī)劃器和活動對象的相關(guān)使用,通過本實驗可以掌握使用活動對象實現(xiàn)事件驅(qū)動的多任務處理的能力。
實驗2:游戲會話數(shù)據(jù)報協(xié)議服務器
本實驗實現(xiàn)該服務器,在一個Symbian OS手機上的多個客戶端游戲之間共享GDP數(shù)據(jù)報,通過本實驗將學習到編寫Symbian
OS服務器所需要的所有重要的實踐技術(shù)。
實驗3:ECOM插件示例
本實驗展示如何在客戶端應用程序中創(chuàng)建實現(xiàn)ECOM插件,該試驗包含了一個用戶ECom接口,一個實現(xiàn)了該接口得DLL插件組件,一個解析器以及一個簡單的用到該接口的GUI客戶端。 |
第五階段 |
第11部分 消息傳送及通話詳解 |
8.1 消息
8.1.1 消息傳送的重要概念
8.1.2 關(guān)鍵消息類及數(shù)據(jù)類型
8.1.3 消息傳送API
8.1.4 使用Client MTM AP
8.1.5 使用Send-As API
8.1.6 使用CSendAppUi
8.1.7 監(jiān)視到達的信息
8.2 通話
8.2.1 使用ETelAPI
8.2.2 起始工作
8.2.3 建立通話
8.2.4 接聽電話
8.2.5 獲取上次撥打的號碼 |
第12部分 應用程序簽名 |
9.1 Symbian 安全模型
9.1.1 對Symbian平臺安全模型的論證
9.2 Symbian 平臺安全模型實踐
9.2.1 基于可信計算
9.2.2 功能
9.2.3 應用程序認證
9.2.4 分配功能
9.2.5 平臺需求或制造商架構(gòu)
9.3.入侵檢測系統(tǒng)
9.3.1 唯一標示符
9.3.2 產(chǎn)品序列號
9.3.3 制造商序列號
9.3.4 制造商序列號和產(chǎn)品序列號使用
9.4. 嵌入SIS文件
9.5.應用開發(fā)時的Symbian安全模型
9.5.1 定義應用程序
9.5.2 應用程序測試
9.5.2.1 Symbian 開發(fā)商證書
9.5.3 Symbian注冊
9.5.4 授予TCB/DRM
9.5.5 Symbian 自主驗證
|
第13部分 藍牙應用詳解 |
10.1 讀取公開的api獲取不到的一些信息
10.2 個人照片屏幕保護程序
10.3 開機或插卡自動運行
|
【實驗】 |
實驗1:短消息處理示例
本實驗展示了直接從程序中發(fā)送和接收短消息,以及可以對收件箱中的短消息進行管理(刪除,復制,移動等)。
實驗2:開發(fā)一個帶能力的示例程序,用自簽名和開發(fā)者證書分別安裝到手機上運行。
實驗3:獲取當前的主題模式中的屏幕保護程序,每隔一定時間,從指定目錄里隨機選擇一張圖片全屏顯示在手機屏幕上。
實驗4:開機運行一個Thread,寫入特定信息到debug日志文件。
|
第141部分 Symbian操作系統(tǒng)中插件的使用 |
11.1 消息MTM
11.2 通信擴展模塊
11.3 ETel擴展模塊
11.4 ESOCK協(xié)議模塊 |
【實驗】 |
實驗:通信模塊擴展 |
第12部分 軟件開發(fā)的通用能力 |
講解項目開發(fā)過程中涉及的各種知識,包括軟件開發(fā)過程、軟件開發(fā)模型、軟件測試理論、流程圖工具、測試管理工具、項目管理工具、版本管理工具、設(shè)計模式、UML等。 |