摘要:VoIP即Voice Over IP技术是一种在网络上面传输语音的技术,把语音变化成数据的形式,然后跟数据一起共享到同一个IP的网络(Internet互联网)。常见的有两个协议组:ITU制定的H.323系列协议和IETF制定的SIP(Session Initiation Protocol)协议,本文研究的是SIP协议。Android是一种开发平台基于Linux的开源的手机操作系统的名称,在当前手机开发行业中有非常大的市场,未来的前景跟发展空间都非常地大。
本文研究了VoIP系统在Android平台应用的相关技术,结合SIP开源协议栈开发了基于SIP协议的Android终端VoIP系统的应用程序。主要工作如下:
(1)对软件开发过程中所涉及的理论技术知识进行分析与研究,包括 VoIP 系统实现原理、VoIP实现的关键技术和SIP协议的详细分析。SIP协议栈的具体实现方法、JNI的实现过程以及Android客户端的设计与开发(包括UI、详细功能)。
(2)分析并研究Android平台的特性(优点)、系统架构,研究Activity与其生命周期。结合Android NDK开发框架。利用导入SIP开源的协议栈来完成工程项目大体框架的搭建。
(3)对软件进行整体架构的分析,此设计方案按照Android的NDK框架开发规范来开发,将框架分成4层,最上面是应用层,它是在Android SDK的框架里面,运用Java语言来完成代码功能;第二层是JNI实现层,首先,采用C语言的实现在效率、速度、系统占用方面存在着比其他库(如Java协议栈)较大的优势,因此,该方案将在第三层单纯地采用C语言来实现的SIP协议栈。在两层中间搭建一个连接的纽带,就是JNI层。最后一层是系统驱动层,这 都是由手机厂商实现的,这里不做介绍。
关键词 Android;SIP协议;通信;NDK
目录
摘要
Abstract
1 绪论-1
1.1课题研究的背景和意义-1
1.2 研究现状分析-1
1.2.1 VoIP应用研究现状-1
1.2.2 智能终端平台研究现状-2
1.3 课题任务-3
2 协议技术分析-4
2.1 VoIP技术原理-4
2.2 SIP协议详细分析-4
2.2.1 SIP协议功能概述-4
2.2.2 SIP协议的系统结构-4
2.3系统通信机制分析-5
2.4本章小结-5
3 Android平台系统概述-6
3.1 Android系统概述-6
3.1.1 Android 平台特性-6
3.1.2 Android 系统架构-6
3.2 本章小结-7
4 Android平台的VoIP系统实现-8
4.1 VoIP的具体实现-8
4.1.1 SipDroid模块-8
4.2.2 系统需求分析-9
4.2 JNI技术实现-10
4.3 Android NDK 框架-12
4.4 系统整体功能模块划分-14
4.5 本章小结-15
5系统详细设计-16
5.1 项目整体框架设计-16
5.2 UI界面设计-16
5.3 电话拨打及监听的设计-19
5.4 获取联系人的设计-22
6 系统的测试-23
6.1 测试环境-23
6.2 测试流程-23
6.2.1 开通电话商服务账号-23
6.2.2 设置账户、端口等-23
6.2.3 配置通话选项-24
6.2.4 拨打电话-25
结论-26
致谢-28
参考文献-29