基于android的短信播报系统【毕业论文】.doc

上传人:文初 文档编号:295118 上传时间:2018-09-10 格式:DOC 页数:41 大小:2MB
下载 相关 举报
基于android的短信播报系统【毕业论文】.doc_第1页
第1页 / 共41页
基于android的短信播报系统【毕业论文】.doc_第2页
第2页 / 共41页
基于android的短信播报系统【毕业论文】.doc_第3页
第3页 / 共41页
基于android的短信播报系统【毕业论文】.doc_第4页
第4页 / 共41页
基于android的短信播报系统【毕业论文】.doc_第5页
第5页 / 共41页
点击查看更多>>
资源描述

1、毕业论文  文客久久网  本科 毕业论文 (设计 ) 题     目:  基于 android 的短信播报系统  学     院:   学生姓名:   专     业:  计算机科学与技术  班     级:   指导教师:   起 止 日期:   毕业论文  文客久久网  基于 android 的短信播报系统  摘   要  语音识别是一门交叉学科。 近二

2、十年来,语音识别技术取得显著进步,开始从实验室走向市场。人们预计,未来 10年内,语音识别技术将 进入工业、家电、通信、汽车电子、医疗、家庭服务、 消费电子产品 等各个领域。语音识别听写机在一些领域的应用被 美国 新闻界评为 1997年计算机发展十件大事之一。很多专家都认为语音识别技术是 2000年至 2010年间 信息技术 领域十大重要的科技发展技术之一。  语音识别技术所涉及的领域包括:信号处理、 模式识别 、概率论和信息论、发声机理和听觉机理、 人工智能 等等。  本文是软件工程设计语音播报短信的开发说明,重点运用软件工程知识对系统进行分析、设计实现和测试的思想的具体

3、描述,其中包括软件生命周期的三个主要方面:软件定义(问题定义、可行性研究、需求分析)、软件开发(总体设计、详细设计、编码、测试)和运行维护。通过实际的运用软件工程知识处理问题,加 强程序的规范性、清晰性、可靠性,并且使得程序易于维护。 本程序在 android平台上 使用 JAVA 进行编写 ,具有良好的兼容性且易于实现。  【 关键词 】语音播报,软件工程, 人工智能 ,android 毕业论文  文客久久网  Android based short message broadcast system Abstract Speech recognition is

4、a cross discipline. Come nearly twenty years, the speech recognition technology has made significant progress, starting from the laboratory to the market. It is expected, the next 10 years, voice recognition technology will enter the industry, home appliances, communications, automotive electronics,

5、 medical, family services, consumer electronics and other fields. Speech recognition dictation machine the application in some fields are the United States press in 1997 as one of the ten events of computer development. Many experts believe that the speech recognition technology from 2000 to 2010amo

6、ng the field of information technology in ten important technologies. Speech recognition technology areas include: signal processing, pattern recognition, information theory and probability theory, mechanism of phonation and auditory mechanism, artificial intelligence and so on. This article is a so

7、ftware engineering development Android based on the short message broadcast system instructions, focusing on the use of software engineering knowledge of the system analysis, design, implement and test the specific description of the idea, including the software life cycle, three main areas: softwar

8、e-defined (problem definition, Feasibility studies, needs analysis), software development (design, detailed design, coding, testing) and operation and maintenance. The use of software engineering through practical knowledge management problems, to strengthen the normative procedures, clarity, reliab

9、ility, and makes the program easy to maintain. This system is  written using JAVA to have good compatibility and easy to implement. 【 Key words】 short message broadcast, software engineering, artificial intelligence, android毕业论文  文客久久网  目    录  摘   要  . I Abst

10、ract. II 1 概述 . 1 1.1 软件工程的概述 . 1 1.2 语音识别国内外发展现状 . 1 1.3 语音识别的发展史  . 2 1.4 Android 的发展趋势  . 3 2 语音识别系统的分析  . 4 2.1 问题定义  . 4 2.2 可行性研究 . 4 2.2.1 Java 开发相关技术  . 4 2.2.2 经济可行性  . 6 2.2.3 操作可行性  . 6 2.3 需求分析  . 7 3 系统开发环境及相关技术  . 8 3.1 Android 开发环境介绍  

11、. 8 3.2 Android 开发平台搭建  . 8 4 Android 的架构分析 . 9 4.1 Android 特征  . 9 4.2 Android 架构  . 9 4.2.1 关键应用程序 . 10 4.2.2 应用程序框架 . 10 4.2.3 系统运行库  . 10 4.2.4 Linux 内核  . 11 4.3 Android 应用的构成和工作机制  . 11 4.4 Android 与其他手机操作系统的比较 . 12 5 系统设计  . 13 5.1 主界面设计 . 13 5.2 语音播报短信系统设计

12、 . 13 5.3 语音拨号系统设计  . 14 5.4 语音发送短信系统设计  . 15 6 程序开发  . 17 6.1 文件结构与用途 . 17 6.2 数据提供者 . 18 6.2.1 AboutActivity.java 的代码 . 18 6.2.2 HelpActivity.java 的代码  . 19 6.2.3 MessageActivity.java 的代码  . 19 6.2.4 SendMesActivity.java 的代码  . 22 6.2.5 TelphoneActivity.java 的代码

13、 . 25 7 系统测试  . 28 7.1 启动 Android 虚拟机  . 28 7.2 界面介绍  . 30 7.3 相应功能介绍  . 31 7.4 删除方法  . 33 毕业论文  文客久久网  8 系统维护  . 34 9 总结  . 35 参考文献  . 36 毕业论文  文客久久网  1 概述  1.1 软件工程的概述  软件工程是一种研究方法采用工程类方法构建,维护有效,实用,高品质的软件学科。软件工程和编程语言有关,各种数据

14、库,软件开发环境,操作系统,设计模式等其他方面 2。在现代社会中,使用的软件在许多方面。典型的软件,如 Email,办公软件,操作系统,编译器,人机界面,数据库,电子游戏,单片机和嵌入式。与此同时,几乎所有的计算机软件应用,如工业,农业,商业,交通运输,政府部门,各个行业。这些应用促进经济和社会发展,使人们的工作更有效率,同时提高生活质量。  软件工程的目标是:在给定 成本 、进度的前提下,开发出具有可修改性、有效性、可靠性、可理解性、可维护性、可重用性、可适应性、可移植性、可追踪性和 可互操作性并且满足用户需求的软件产品。追求这些目标有助于提高软件产品的质量和开发效率,减少维护的困

15、难。  生产以满足需求和软件产品的最终目标,工程所需的步骤。软件工程过程,包括开发过程中,操作过程,维护过程。它们涵盖的需求,设计,实施,验证和维护活动。要求包括问题分析和需求分析。问题分析需求定义,也被称为软件需求规格。需求生成的章程。设计活动一般包括概要设计和详细设计。概要设计到建造的软件体系结构,包括子系统,模块和描述,每个模块的接口定义相关的水平。程序员可以生产出模块说明详细设计,包括每个模块,数 据结构和处理描述描述。活动旨在实现到可执行代码的结果。整个开发过程中验证,实现完整的确认,以确保最终产品满足用户要求。维护包括扩张,修改和完善过程中使用的活动。  1.2

16、 语音识别国内外发展现状  我国的语音识别研究起始于 1958 年,由中国科学院声学所利用电子管电路识别 10 个元音。直至 1973 年才由中国科学院声学所开始计算机语音识别。由于当时条件的限制,我国的语音识别研究工作一直处于缓慢发展的阶段。进入 80 年代以后,随着计算机应用技术在我国逐渐普及和应用以及数字信号技术的进一步发展,国内许多单位具备了研究 语音技术的基本条件。与此同时,国际上语音识别技术在经过了多年的沉寂之后重又成为研究的热点,发展迅速。就在这种形式下,国内许多单位纷纷投入到这项研究工作中去。 1986 年 3 月我国高科技发展计划 (863 计划 )启动,语音识别作

17、为智能计算机系统研究的一个重要组成部分而被专门列为研究课题。在 863 计划的支持下,我国开始了有组织的语音识别技术的研究,并决定了每隔两年召开一次语音识别的专题会议。从此我国的语音识别技术进入了一个前所未有的发展阶段。  这一时期的语音识别方法基本上是采用传统的模式识别策略。其中以苏联的 Velichko 和Zagoruyko、日本的迫江和千叶,以及当时在美国的板仓等人的研究工作最具有代表性。苏联的研究为模式识别应用于语音识别这一领域奠定了基础;日本的研究则展示了如何利用动态规划技术在待识语音模式与标准语音模式之间进行非线性时间匹配的方法;板仓的研究提出了如何将线性预测分析技术 (

18、LPC)加以扩展,使之用于语音信号的特征抽取的方法。  语音识别系统选择识别基元的要求是,有准确的定义,能得到足够数据进行训练,具有一般性。英语通常采用上下文相关的音素建模, 汉语 的协同发音不如英语严重,可以采用音节建模。系统所需的训练数据大小与模型复杂度有关。模型设计得过于复杂以至于超出了所毕业论文  文客久久网  提供的训练数据的能力,会使得性能急剧下降。听写机:大词汇量、非特定人、连续语音识别系统通常称为听写机。其架构就是建立在前述声学模型和语言模型基础上的 HMM 拓扑结构。训练时对每个基元用前向后向算法获得模型参数,识别时,将基元串接成词,词间加上静音

19、模型并引入语言模型作为词间转移概率,形成循环结构,用 Viterbi 算法进行解码。针对汉语 易于分割的特点,先进行分割再对每一段进行解码,是用以提高效率的一个简化方法。对话系统:用于实现人机口语对话的系统称为对话系统。受目前技术所限,对话系统往往是面向一个狭窄领域、词汇量有限的系统,其题材有旅游查询、订票、数据库检索等等。其前端是一个语音识别器,识别产生的 N-best 候选或词候选网格,由语法分析器进行分析获取语义信息,再由对话管理器确定应答信息,由 语音合成 器输出。由于目前的系统往往词汇量有限, 也可以用提取关键词的方法来获取语义信息。  1.3 语音识别的发展史  

20、;1952 年贝尔研究所 Davis 等人研究成功了世界上第一个能识别 10 个英文数字发音的实验系统。   1960 年英国的 Denes 等人研究成功了第一个计算机语音识别系统。  大规模的语音识别研究是在进入了 70 年代以后,在小词汇量、孤立词的识别方面取得了实质性的进展。   进入 80 年代以后,研究的重点逐渐转向大词汇量、非特定人连续语音识别。在研究思路上也发生了重大变化,即由传统的基于标准模板匹配的技术思路开始转向基于统计模型  (HMM)的技术思路。此外,再次提出了将神经网络技术引入语音识别问题的技术思路。   进入 90 年

21、代以后,在语音识别的系统框架方面并没有什么重大突破。但是,在语音识别技术的应用及产品化方面出现了很大的进展。   DARPA(Defense Advanced Research Projects Agency)是在 70年代由美国国防部远景研究计划局资助的一项 10 年计划,其旨在支持语言理解系统的研究开发工作。  到了 80 年代,美国国防部远景研究计划局又资助了一项为期 10 年的 DARPA 战略计划,其中包括噪声下的 语音识别和会话(口语)识别系统,识别任务设定为“( 1000 单词)连续语音数据库管理”。  到了90 年代,这一 DARPA 计划仍在持续

22、进行中。其研究重点已转向识别装置中的自然语言处理部分,识别任务设定为“航空旅行信息检索”。   日本也在 1981 年的第五代计算机计划中提出了有关语音识别输入 -输出自然语言的宏伟目标,虽然没能实现预期目标,但是有关语音识别技术的研究有了大幅度的加强和进展。  1987 年起,日本又拟出新的国家项目 -高级人机口语接口和自动电话翻译系统。   我国的语音识别研究起始于 1958 年,由中 国科学院声学所利用电子管电路识别 10 个元音。直至 1973 年才由中国科学院声学所开始计算机语音识别。由于当时条件的限制,我国的语音识别研究工作一直处于缓慢发展的阶段。 &

23、nbsp;进入 80 年代以后,随着计算机应用技术在我国逐渐普及和应用以及数字信号技术的进一步发展,国内许多单位具备了研究语音技术的基本条件。与此同时,国际上语音识别技术在经过了多年的沉寂之后重又成为研究的热点,发展迅速。就在这种形式下,国内许多单位纷纷投入到这项研究工作中去。   1986 年 3 月我国高科技发展计划 (863 计划 )启动,语音识别作 为智能计算机系统研究的一个重要组成部分而被专门列为研究课题。在 863 计划的支持下,我国开始了有组织的语音识别技术的研究,并决定了每隔两年召开一次语音识别的专题会议。从此我国的语音识别技术进入了一个前所未有的发展阶段。 &nbs

24、p;毕业论文  文客久久网  1.4 Android 的发展趋势  据 Gartner 最新数据显示, 2010 年第二、三季度全球智能手机销售继续大幅增长,其中第三季度安卓占全球智能手机市场的 25.5%,仅次于塞班,成为第二大智能手机系统。 2010 第二、三季度与去年同期相比,增度分别是 15.4%及 22%,增势迅猛。而塞班系统 较 09 年的市场份额,尽管终端销量有大幅度提升,但增势下滑 10%,形势非常严峻。其他操作系统的表现则要平稳很多。  1-1Gartner 数据图  安卓是首款开源代码的操作系统,采用 Linux 内核,开放

25、手机联盟( OHA)成员可以任意使用和修改安卓的 SDK 软件包。系统的开源性使其具有良好的拓展性,一方面,为众多移动应用开发者提供了良好的系统性平台,有利于移动应用的集合;另一方面,终端厂商可以针对自身的特殊需要“定制化开发”。与此相比,尽管 2010 年 2 月,塞班基本完成开源工作,但由于代码臃肿,用户界面设计缺 失,塞班的开源并无实际意义,错失发展良机。  据 Informa 预测, 2012 年,安卓手机销量将超过诺基亚塞班手机,届时安卓将成为全球最大的智能手机平台。谷歌表示目前安卓手机每日平均激活量为 20 万部,销售速度加速上涨。  我们认为,安卓在全球市场的

26、成长壮大,塞班市场份额不断下跌已成不争事实。安卓操作系统发展迅猛主要得益于免费、开源和良好产业运作策略,这三点为安卓在智能手机市场赢得更多的发展机遇。系统的免费让更多的厂商加入,推动了份额的上升;代码的开源让更多的开发者进入应用开发;应用的丰富吸引了更多 用户选择,这也是谷歌值得众多厂商学习的地方。此外,谷歌通过 OHA 联合众多厂商进行系统研发,不断更新版本,将系统应用推广到更多的终端产品中,确保用户体验持续改善。  毕业论文  文客久久网  2 语音识别系统的分析  2.1 问题定义  问题定义阶段必须确定系统应该做什么,一般应通过对 an

27、droid 系统手机用户的访问调查,让系统分析员扼要地写出关于问题性质、工作目标和工程规模的书面报告,经过讨论和必要的修改之后这份报告应该得到客户的确认。由于此次程序实现的功能较少且简单,只是实现了对 google 语音库的调用功能。  2.2 可行性研究  2.2.1 Java 开发相关技术  Java 是一种编程语言最初是由 Sun 公司的 James Gosling 的发展(这是现在是甲骨文公司的子公司),并在 1995 年发布作为 Sun Microsystems 的 Java 平台的核心组件。其派生的语言从 C 和 C+语法而来,但 Java 却有一个简

28、单的对象模型和较少低级别的设施。 Java 应用程序通常被编译成字节码(类文件),可以运行在任何 Java 虚拟机( JVM)的计算机体系结构无关。  Java 是一种通用的,并发的,基于类的面向对象的语言,是专门设计为尽可能少的执行依赖关 系。它的目的是让应用程序开发“编写一次,到处运行”。 Java 是目前使用的最流行的编程语言之一,并得到广泛的应用软件用于 Web 应用程序。  Sun 公司于 1995 年发布的 Java 1.0,作为第一个公开的执行情况。它承诺“编写一次,到处运行”,提供无成本运行时间上流行的平台。相当安全,并设有可配置的安全性,它允许网络和文件访

29、问限制。尽快纳入主流 Web 浏览器能够运行 Java 小程序在网页和 Java 迅速走红。随着 Java 2 问世(最初为 J2SE 1.2 发布于十二月 1998-1999),新版本有不同类型的平台上建立多个配置。例如, J2EE 的企业应用和有针对性的(移动 Java)的移动应用程序大大简化版本的 J2ME。 J2SE 中指定的标准版。 2006 年,出于营销目的, Sun 公司更名为 Java EE 中, Java ME 的,和 Java SE,分别为 J2 的新版本。  Java 的一个特点是便携性,这意味着在 Java 语言编写的计算机程序必须运行在任何支持的硬件 /操作

30、系统平台类似。这是通过 Java 语言编译成中间代码表示称为 Java 字节码,而不是直接向特定于平台的机器代码。 Java 字节码指令的机器码类似,但虚拟机的主机硬件特别( VM)的解释。最终用户通常使用在一个 Java 小程序的 Web 浏览器的 Java 运行时环境( JRE)对自己的计算机上安装了独立的 Java 应用程序。标准化的库提供了一个通用的方法来访问主机的特定功能,如图形,线程和网络。  一个使用字节码的主要好处是移植。然而,解释程序几乎总是比编译运行本地可执行程序会更慢。  Java 使用了自动垃圾回收器管理内存中的对象生命周期。程序员创建对象时确定和

31、Java运行时内存一旦收回对象不再使用的。一旦无用的引用一个对象仍然存在,无法访问的内存被释放资格成为被垃圾回收器自动。类似内存 泄漏仍然可能发生,如果一个程序员的代码拥有一个不再需要的是对象的引用,通常当不再需要的对象是在容器仍在使用中。如果一个不存在的对象的方法被称为一个“空指针异常”抛出。 Java 的自动内存管理模式的想法之一是,程序员可以避免,以致要执行手动内存管理的负担。在某些语言中,为创建对象的内存是分配在栈隐含或明确从堆中分配和释放。在后一种情况下,内存管理责任在于程序员。如果该程序不释放一个对象,发生内存泄漏。如果程序试图访问或释放内存已经被释放,其结果是毕业论文  

32、;文客久久网  不确定的和难以预料的,程序很可能会变得不稳定和 /或崩溃。这可以部分 地弥补了智能指针的使用,但这些增加开销和复杂性。但是,垃圾收集并不妨碍“逻辑”内存泄漏,即那些记忆仍然引用但从未使用过。  自动垃圾回收( Garbage Collection) C+语言被用户诟病的原因之一是大多数 C+编译器不支持垃圾收集机制。垃圾收集可能发生在任何时间。理想情况下,会发生当一个程序处于闲置状态。这是保证被触发,如果没有足够的可用内存在堆上分配一个新的对象,这可能导致程序拖延片刻。显式内存管理是不可能在 Java。 Java 不支持 C / C + +风格指针的算术运算

33、,如地址和对象(通常是 长整数)无符号整数可以互换使用 8。这使得垃圾回收搬迁引用对象,并确保类型安全和安全。在 C + +和其他一些面向对象的语言, Java 的原始数据类型的变量不是对象。原始类型的值可以是直接存储在字段(对象)或堆栈(用于方法),而不是在堆上,如常用的对象。这是因为性能原因, Java 的设计者有意识的决定。正因为如此, Java 是不被视为一个纯粹的面向对象编程语言。但是,作为 Java 5.0,自动装箱使程序员的程序进行,如果原始类型都是它们的包装类的实例。  Java 库是源代码编制的 JRE 实现程序开发,支持 Java 应用程序开发字节码。这些库的例子

34、有:核心库,其中包括:集合库实现如列表,字典,树,套,队列和双端队列,数据结构或栈  ; XML 处理(解析,转换,验证)库;安全;国际化和本地化库。该集成库,这允许应用程序员与外部系统进行通信。这些库包括: Java 数据库连接( JDBC) API 进行数据库访问;Java 命名和目录接口( JNDI)的查找和发现; RMI 和 CORBA 的分布式应用开发; JMX 的管理和监控应用。用户接口库,其中包括:在(重量级)抽象窗口工具包( AWT),它提供的GUI 组件,这些组件的布局手段和处理手段从这些 组件的事件;该(轻量级) Swing 库,这是建立在 AWT 的,但提供实现

35、了 AWT 的 widgetry; API 的音频采集,处理和回放。  一个依赖于平台的实现 Java 虚拟机( JVM),是其中的 Java 库和第三方应用程序的字节码执行手段。  Swing 是 Java 的图形用户界面的主要部件工具箱。它是 Sun 微系统公司的 Java 基础类( JFC)的一部分,一个 API 提供了一个图形用户界面, Java 程序( GUI)的。 Swing 的开发提供了更为复杂的 GUI 组件比早先的抽象窗口工具包一套。  Swing 提供了一个原生的外观和感觉来模拟的 外观和感觉的多种平台,同时还支持可插拔的外观和感觉,让应用程序

36、拥有的外观和感觉无关的基础平台。它比 AWT 的更加强大和灵活的组件。除了如按钮,复选框和标签熟悉的部件, Swing 如标签式面板提供一些先进的部件,滚动窗格,树,表格和清单。不像 AWT 组件, Swing 组件不落实的平台特定的代码。相反,他们是完全用 Java 编写的,因此是平台无关的。所谓“轻”是用来形容这种元素。  轻量级 UI, Swing 的可配置性是一个选择,不使用自己的母语来显示主机操作系统的 GUI控制的结果。 Swing“描绘”它的控制编程方式通 过了 Java 的 2D API 的使用,而不是为一个本地电话用户界面工具包。因此,一个 Swing 组件不具有相应的本地 OS GUI 组件,并可以自由地呈现在任何可能的方式是使用 API 的底层图形本身。  然而,在其核心的 Swing 组件依赖于每一个 AWT 容器,因为( Swing 的) JComponent 的延伸( AWT 的)容器。这使得摆动到宿主插件操作系统的

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文资料库 > 毕业论文

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。