XX for Android Design 設計文檔
[ Android平台XX視訊交談/XX for Android]
日期: 2010.07.20.
編寫: 徐建祥
網址:http://www.anymobile.org
修改記錄:
2010-07-20 徐建祥
2010-08-06 徐建祥
目 錄
1. 項目概述
1.1. 功能介紹
1.2. 開發環境
1.3. 運行環境
1.4. 名詞解釋
2. 系統架構
3. 模組設計
3.1. Android訊息通訊
3.1.1. Intent意圖
3.1.2. Broadcast Receiver廣播接受者
3.1.3. Thread Message線程訊息
3.1.4. callback機制
3.1.5. Observer觀察者模式
3.1.6. Listener監聽器
3.2. AV引擎庫
3.3. 協議庫
4. 體繫結構
5. 流程設計
5.1. 註冊
5.2. 登入
5.3. 登出
5.4. 點對點聊天
5.4.1. 發送文字交談資料
5.4.2. 接受文字交談資料
5.4.3. 發送音視訊交談資料
5.4.4. 接受音視頻多媒體資料
5.4.5. 主動關閉聊天
5.4.6. 對方關閉聊天
5.5. 簡訊邀請視訊交談
5.6. 聊天室聊天
5.7. 聊天室轉點對點聊天
5.7.1. 主動邀請聊友聊天
5.7.2. 接受聊友交談邀請
5.8. WAP使用者以及TCPProxy 伺服器
6. 介面設計
6.1. JNI
6.2. PTS
6.3. AV Engine
7. 資料存放區
7.1. Shared Preferences
7.2. SQLite Database
8. 移植相關
8.1. io輸入輸出相關
8.2. os作業系統相關
8.3. timer定時器
8.4. socket網路
8.5. log日誌
參考文檔
1. 項目概述
1.1.功能介紹
XX視訊交談手機,在2.5G網路上實現手機視頻互動,讓廣大手機使用者享受到3G功能。實現全球互連,無需漫遊費,使得通訊費用大為降低;此外,也支援手機對PC的雙向視訊交談,從而使人們可以隨時、隨地“見面”,讓世界變的更小。
XX for Android是視訊交談軟體XX的Android版本,實現了手機使用者與艾米聊友或通訊錄好友點對點視頻、語音、文字交談,另外使用者可以使用視頻、語音、文字交談室功能。
1.2.開發環境
Windows XP + Cygwin / Ubuntu 10.3
JAVA:
IDE: JDK 1.5 + Eclipse3.5 + ADT0.9.6 + CDT 1.0.0
SDK: Android SDK
NDK: Android-NDK-r3
C/C++:
C庫: BSD C庫精簡版 bionic
1.3.運行環境
Android平台1.5及以上韌體版本
1.4.名詞解釋
【Android】OHA組織開發的,包括作業系統、中介軟體和核心應用的行動裝置軟體集合。
2.系統架構
主要包括4個模組層次:UI互動層;JNI介面層;核心應用程式層,以及系統適配層。
(圖略)
UI互動層:
主要實現了人機互動介面,以及一些架構類等,通過不同的情境完成產品功能,每個情境可以包含多個介面,每個情境可以處理特定的通知訊息。
JNI介面層:
銜接Java與C/C++代碼層,是UI互動層與PTS協議模組和AV引擎互動的樞紐,提供自上而下的正向調用,以及自下而上的callback調用機制。
系統適配層:
提供系統平台相關的wrapper實現,如io、os、timer、socket等。
核心應用程式層:
移植的核心庫,包括協議庫和AV引擎庫。