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用户以及TCP代理服务器
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引擎库。