

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 編號(hào): </p><p> 本科畢業(yè)設(shè)計(jì)(論文)</p><p> 基于Android平臺(tái)的語(yǔ)音朗讀器</p><p> Speech Reader based Android platform</p><p> 下屬學(xué)院 科技學(xué)院 </p>&
2、lt;p> 專 業(yè) 軟件工程 </p><p> 班 級(jí) 07軟件工程 </p><p> 學(xué) 號(hào) </p><p> 姓 名 XXX </p>&
3、lt;p> 指導(dǎo)教師 XXX 職稱 講師 </p><p> 完成日期 201 1 年 5 月 10 日</p><p><b> 摘 要</b></p><p> 【摘要】本系統(tǒng)以移動(dòng)手機(jī)語(yǔ)音應(yīng)用的高速發(fā)展為背景提出,采用Android平臺(tái)架構(gòu)完成。本文對(duì)語(yǔ)音朗讀器中所涉及相關(guān)技術(shù)進(jìn)行了介紹
4、,并在此基礎(chǔ)上提出了語(yǔ)音朗讀器中相應(yīng)的解決策略。同時(shí)通過(guò)對(duì)語(yǔ)音朗讀器的需求分析,對(duì)系統(tǒng)各個(gè)功能模塊進(jìn)行了設(shè)計(jì),并實(shí)現(xiàn)了相關(guān)技術(shù)和算法在系統(tǒng)中的應(yīng)用。由于條件的限制,本文主要闡述了系統(tǒng)的語(yǔ)音朗讀、語(yǔ)音短信、語(yǔ)音識(shí)別的功能。最后,本文指出了該系統(tǒng)已改進(jìn)的一些問(wèn)題與解決方法及步驟,以及已發(fā)現(xiàn)但未解決的問(wèn)題及描述。系統(tǒng)采用Android平臺(tái)開(kāi)發(fā)技術(shù),采用Eclipse作為系統(tǒng)開(kāi)發(fā)工具。</p><p> 【關(guān)鍵詞】An
5、droid; Eclipse;語(yǔ)音朗讀。</p><p><b> Abstract</b></p><p> 【ABSTRACT】The voice application system to the rapid development of mobile phones made ??for the
6、160;background, complete with Android platform architecture. This article introduces the technologies which are referred to the voice application, and bring forward corresponding measures in the voice applicati
7、on system. Through the requirement analysis of the programming forum system, it designs each functional modules of the system and achieves the technology and algorithms of the system. As the limitat</p><p>
8、 【KEYWORDS】Android ; Eclipse;Speech.</p><p><b> 目 錄</b></p><p><b> 1緒論1</b></p><p><b> 1.1引言1</b></p><p> 1.1.1嵌入式系統(tǒng)特點(diǎn)1&
9、lt;/p><p> 1.1.2手機(jī)應(yīng)用軟件特點(diǎn)1</p><p><b> 1.2課題意義1</b></p><p><b> 1.3開(kāi)發(fā)背景2</b></p><p> 1.4研究方向和實(shí)現(xiàn)2</p><p> 2系統(tǒng)開(kāi)發(fā)相關(guān)技術(shù)4</p>
10、<p> 2.1 Android平臺(tái)架構(gòu)4</p><p> 2.2 Eclipse及ADT介紹6</p><p> 2.3第三方語(yǔ)音庫(kù)TTS選擇6</p><p> 2.4 STT語(yǔ)音識(shí)別的引擎選擇7</p><p> 2.5 Android 樣式主題7</p><p><b>
11、; 3系統(tǒng)需求分析8</b></p><p> 3.1需求分析解決的主要問(wèn)題8</p><p> 3.2系統(tǒng)功能需求8</p><p> 3.2.1語(yǔ)音朗讀8</p><p> 3.2.2語(yǔ)音短信8</p><p> 3.2.3語(yǔ)音識(shí)別8</p><p>
12、3.3用戶界面需求9</p><p> 3.4系統(tǒng)運(yùn)行環(huán)境9</p><p> 4系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)10</p><p> 4.1基本簡(jiǎn)介10</p><p> 4.2系統(tǒng)結(jié)構(gòu)圖10</p><p> 4.3概要設(shè)計(jì)10</p><p> 4.3.1各功能模塊設(shè)計(jì)10&l
13、t;/p><p> 4.4系統(tǒng)具體實(shí)現(xiàn)11</p><p> 4.5碰到的難點(diǎn)15</p><p><b> 5系統(tǒng)測(cè)試16</b></p><p> 5.1系統(tǒng)錯(cuò)誤16</p><p> 5.1.1加載布局XML無(wú)效16</p><p> 5.1.2短信
14、截?cái)酂o(wú)效16</p><p> 5.1.3語(yǔ)音識(shí)別中文無(wú)效16</p><p> 5.1.4系統(tǒng)資源找不到17</p><p> 5.1.5短信服務(wù)截取消息傳送問(wèn)題17</p><p> 5.2系統(tǒng)優(yōu)化17</p><p> 5.2.1 XML布局優(yōu)化17</p><p>
15、 5.2.2代碼提示String修改優(yōu)化18</p><p><b> 6總結(jié)與展望19</b></p><p> 6.1論文總結(jié)19</p><p> 6.2研究展望19</p><p><b> 參考文獻(xiàn)21</b></p><p><b>
16、 致謝22</b></p><p><b> 附錄23</b></p><p><b> 1緒論</b></p><p><b> 1.1引言</b></p><p> 1.1.1嵌入式系統(tǒng)特點(diǎn)</p><p> 嵌入式系統(tǒng)是
17、計(jì)算機(jī)的一種應(yīng)用形式,通常指埋藏在宿主設(shè)備中的微處理機(jī)系統(tǒng)。嵌入式最大的優(yōu)點(diǎn)就是簡(jiǎn)潔,程序不會(huì)太過(guò)臃腫,開(kāi)發(fā)較快,功能強(qiáng)大又互不相同,都具有實(shí)時(shí)性強(qiáng)、結(jié)構(gòu)緊湊、可靠性高和面向?qū)ο蟮裙餐攸c(diǎn)。</p><p> 嵌入式系統(tǒng)通常由硬件和軟件兩部分組成。嵌入系統(tǒng)與通用計(jì)算機(jī)系統(tǒng)相比有五個(gè)明顯的特征專用性、可封裝性、外來(lái)性、實(shí)時(shí)性、可靠性。</p><p> 1.1.2手機(jī)應(yīng)用軟件特點(diǎn)<
18、/p><p> 針對(duì)手機(jī)應(yīng)用的開(kāi)發(fā)者來(lái)說(shuō),開(kāi)發(fā)一個(gè)手機(jī)應(yīng)用與開(kāi)發(fā)桌面計(jì)算機(jī)應(yīng)用在語(yǔ)法上沒(méi)有太大的差別,它們具有相同的表達(dá)式、運(yùn)算符、操作符和相同程序流程控制方法。只是手機(jī)的應(yīng)用程序開(kāi)發(fā)平臺(tái)針對(duì)手機(jī)的特性定義了一系列的應(yīng)用開(kāi)發(fā)框架以適應(yīng)對(duì)應(yīng)的硬件開(kāi)發(fā)平臺(tái),而由于硬件性能環(huán)境的關(guān)系,這些框架大多都是桌面應(yīng)用開(kāi)發(fā)框架的一個(gè)子集。</p><p> 作為手持設(shè)備的一種,手機(jī)之所以能夠時(shí)時(shí)刻刻伴隨著
19、人們的生活,其最重要的特征就是便攜性。也正是因?yàn)槭謾C(jī)體積小,重量輕,還支持網(wǎng)絡(luò)應(yīng)用,能方便人們不受地域和空間的限制進(jìn)行溝通交流,所以它擁有大量的客戶群體,手機(jī)應(yīng)用的潛在用戶群體比桌面平臺(tái)更為巨大。</p><p><b> 1.2課題意義</b></p><p> 近年來(lái),我國(guó)嵌入式系統(tǒng)市場(chǎng)快速增長(zhǎng)。到目前為止,嵌入式產(chǎn)品主要分布在消費(fèi)類電子、通信、醫(yī)療、安全等行
20、業(yè)。其中在消費(fèi)類電子領(lǐng)域占最大的市場(chǎng)份額。移動(dòng)多媒體、數(shù)字娛樂(lè)、手機(jī)終端、汽車(chē)電子成為嵌入式系統(tǒng)應(yīng)用市場(chǎng)的發(fā)展重點(diǎn),尤其針對(duì)手機(jī)、便攜式多媒體設(shè)備、家庭娛樂(lè)應(yīng)用的音視頻產(chǎn)品和解決方案增長(zhǎng)潛力最大。目前應(yīng)用在手機(jī)上的操作系統(tǒng)主要有PalmOS、Symbian、Windows Mobile、Android、iPhoneOS、黑莓七種。而對(duì)于本課題而言解決了一部分用戶在現(xiàn)實(shí)存在的語(yǔ)音朗讀需求。</p><p> 嵌入
21、式產(chǎn)品的應(yīng)用無(wú)處不在,語(yǔ)音技術(shù)的加入讓嵌入式產(chǎn)品能“聽(tīng)”會(huì)“說(shuō)”,變得更加智能和方便。特別是嵌入式產(chǎn)品體積受限,“看”屏幕信息不方便,利用語(yǔ)音技術(shù)“聽(tīng)”信息和語(yǔ)音命令操作機(jī)器,將嵌入式產(chǎn)品的便攜性和實(shí)用性完美的結(jié)合起來(lái)。典型的應(yīng)用環(huán)境包括以手機(jī)為代表的移動(dòng)通信環(huán)境、以GPS導(dǎo)航為代表的汽車(chē)環(huán)境和以MP3/MP4、學(xué)習(xí)機(jī)為代表的隨身電子數(shù)碼娛樂(lè)環(huán)境。而隨著中國(guó)手機(jī)、汽車(chē)和數(shù)碼電子等市場(chǎng)的快速發(fā)展,嵌入式語(yǔ)音產(chǎn)品市場(chǎng)必將在最近幾年呈現(xiàn)出爆發(fā)
22、式增長(zhǎng)。</p><p><b> 1.3開(kāi)發(fā)背景</b></p><p> 計(jì)算技術(shù)、無(wú)線接入技術(shù)的發(fā)展,使嵌入式系統(tǒng)逐漸有能力對(duì)桌面系統(tǒng)常規(guī)業(yè)務(wù)進(jìn)行支持。谷歌長(zhǎng)期以來(lái)奉行的移動(dòng)發(fā)展戰(zhàn)略:通過(guò)與全球各地的手機(jī)制造商和移動(dòng)運(yùn)營(yíng)商結(jié)成合作伙伴,開(kāi)發(fā)既有用又有吸引力的移動(dòng)服務(wù),并推廣這些產(chǎn)品。Android 進(jìn)一步推進(jìn)了"隨時(shí)隨地為每個(gè)人提供信息"
23、這一企業(yè)目標(biāo)的實(shí)現(xiàn)。Open Handset Alliance 匯集了多家業(yè)界巨頭。運(yùn)營(yíng)商如:China Mobile、NTT DoCoMo、Vodafone、T-Mobile等;設(shè)備制造商如ASUS、HTC、Huawei、LG、Motorola、Samsung、Sony Ericsson、Toshiba 等;芯片廠商如ARM、Broadcom、Intel、Marvell、NVIDIA、Qualcomm 等。軟件廠商如Ascender、
24、eBay、Esmertec、LivingImage等。Android 更像一款桌面環(huán)境為Java 的Linux 操作系統(tǒng)。有助于Google 實(shí)現(xiàn)其"隨時(shí)隨地為每個(gè)人提供信息"的企業(yè)戰(zhàn)略。</p><p> 隨著移動(dòng)嵌入式的飛速發(fā)展,智能手機(jī)的更新?lián)Q代,Android以其特有的技術(shù)優(yōu)勢(shì),占據(jù)了在智能手機(jī)操作系統(tǒng)的一定市場(chǎng)份額,并且逐漸被人們所認(rèn)識(shí)和接受。但熟悉Android應(yīng)用程序的軟件開(kāi)發(fā)
25、者為數(shù)不多,因此Android應(yīng)用程序的開(kāi)發(fā)擁有廣闊的前景。基于Android系統(tǒng)的語(yǔ)言朗讀設(shè)計(jì)與實(shí)現(xiàn),能夠幫助我們理解Android應(yīng)用程序的開(kāi)發(fā)過(guò)程。包括Android系統(tǒng)架構(gòu)、開(kāi)發(fā)環(huán)境搭建、JNI編程、熟悉SDK文檔以及開(kāi)源語(yǔ)音庫(kù)的了解。</p><p> 1.4研究方向和實(shí)現(xiàn)</p><p> 本課題基于Android平臺(tái)開(kāi)發(fā)出一個(gè)手機(jī)語(yǔ)音朗讀軟件,能夠流利的朗讀英文,服務(wù)于手
26、機(jī)語(yǔ)音電子書(shū)市場(chǎng)?;蛟S很用戶在車(chē)載的時(shí)候也能使用語(yǔ)音的短信和語(yǔ)音電話之類的服務(wù)。</p><p> 本次設(shè)計(jì)的系統(tǒng)是針對(duì)個(gè)人畢業(yè)設(shè)計(jì)課程,其系統(tǒng)設(shè)計(jì)參考當(dāng)前主流的Android的軟件開(kāi)發(fā)流程。系統(tǒng)界面設(shè)計(jì)使用XML頁(yè)面布局工具,以Style樣式文件加圖片動(dòng)畫(huà)配合,界面開(kāi)發(fā)及程序編寫(xiě)在Eclipse集成開(kāi)發(fā)平臺(tái)結(jié)合使用集成組件ADT完成,整個(gè)系統(tǒng)分為3個(gè)大功能:</p><p><b
27、> 語(yǔ)音朗讀:</b></p><p> ?。?)用戶可以輸入文字,通過(guò)系統(tǒng)進(jìn)行朗讀;</p><p> ?。?)還可以讀取系統(tǒng)存取的TXT文本,進(jìn)行朗讀;</p><p><b> 語(yǔ)音短信:</b></p><p> ?。?)用戶打開(kāi)語(yǔ)音短信開(kāi)關(guān),接受到短信就會(huì)自動(dòng)讀取出來(lái);</p>
28、;<p> ?。?)對(duì)朗讀的短信可以進(jìn)行回復(fù);</p><p><b> 語(yǔ)音識(shí)別:</b></p><p> ?。?)可以語(yǔ)音打開(kāi)指定的APP應(yīng)用軟件;</p><p> ?。?)可以語(yǔ)音打開(kāi)指定的網(wǎng)頁(yè)服務(wù);</p><p> ?。?)可以語(yǔ)音呼出電話;</p><p>
29、 基于上述背景,在接下來(lái)的章節(jié)將對(duì)語(yǔ)音朗讀器發(fā)所涉及的相關(guān)技術(shù)進(jìn)行分析。</p><p><b> 2系統(tǒng)開(kāi)發(fā)相關(guān)技術(shù)</b></p><p> 本章將主要介紹了本次設(shè)計(jì)系統(tǒng)的相關(guān)技術(shù),包括系統(tǒng)采用的結(jié)構(gòu)、編程工具以及相關(guān)技術(shù)。</p><p> 2.1 Android平臺(tái)架構(gòu)</p><p> Android
30、平臺(tái)整體自底向上由以下四個(gè)層次組成:Linux內(nèi)核層、Android運(yùn)行時(shí)庫(kù)和其他庫(kù)層、應(yīng)用框架層、應(yīng)用程序?qū)?。如圖2.1所示</p><p> 1)Linux內(nèi)核層:Android基于Linux 2.6提供核心系統(tǒng)服務(wù),例如:安全、內(nèi)存管理、進(jìn)程管理、網(wǎng)絡(luò)堆棧、驅(qū)動(dòng)模型。Linux Kernel也作為硬件和軟件之間的抽象層,它隱藏具體硬件細(xì)節(jié)而為上層提供統(tǒng)一的服務(wù)。</p><p>
31、 2)Android運(yùn)行時(shí)庫(kù):Android包含一個(gè)核心庫(kù)的集合,提供大部分在Java編程語(yǔ)言核心類庫(kù)中可用的功能。每一個(gè)Android應(yīng)用程序是Dalvik虛擬機(jī)中的實(shí)例,運(yùn)行在他們自己的進(jìn)程中。在一個(gè)設(shè)備可以高效地運(yùn)行多個(gè)虛擬機(jī)。Dalvik虛擬機(jī)可執(zhí)行文件格式是.dex,dex格式是專為Dalvik設(shè)計(jì)的一種壓縮格式,適合內(nèi)存和處理器速度有限的系統(tǒng)。</p><p> 3)其他庫(kù)層:Android包含一個(gè)
32、C/C++庫(kù)的集合,供Android系統(tǒng)的各個(gè)組件使用。例如,標(biāo)準(zhǔn)C庫(kù),基于PacketVideo的OpenCORE媒體庫(kù),基于OpenGL的3D庫(kù),關(guān)系數(shù)據(jù)庫(kù)SQLite。</p><p> 4)應(yīng)用框架層:開(kāi)發(fā)者可以完全使用核心應(yīng)用程序所使用的框架API。應(yīng)用程序的體系結(jié)構(gòu)旨在簡(jiǎn)化組件的重用,任何應(yīng)用程序都能發(fā)布他的功能且任何其他應(yīng)用程序可以使用這些功能(需要服從框架執(zhí)行的安全限制)。包括View、Cont
33、ent Provide、Notification Manager、Resource Manager、Activity Manager。</p><p> 5)應(yīng)用程序?qū)樱篈ndroid裝配一個(gè)核心應(yīng)用程序集合,包括電子郵件客戶端、SMS程序、日歷、地圖、瀏覽器、聯(lián)系人和其他設(shè)置。所有應(yīng)用程序都是用Java編程語(yǔ)言寫(xiě)的。更加豐富的應(yīng)用程序有待我們?nèi)ラ_(kāi)發(fā)。</p><p> 3.Andro
34、id應(yīng)用程序解析</p><p> 1)Active:活動(dòng)是最基本的Android 應(yīng)用程序組件,應(yīng)用程序中,一個(gè)活動(dòng)通常</p><p> 就是一個(gè)單獨(dú)的屏幕。每一個(gè)活動(dòng)都被實(shí)現(xiàn)為一個(gè)獨(dú)立的類,并且從活動(dòng)基類中繼承而來(lái),活動(dòng)類將會(huì)顯示由視圖控件組成的用戶接口,并對(duì)事件做出響應(yīng)。大多數(shù)的應(yīng)用是由多個(gè)屏幕顯示組成。例如:一個(gè)文本信息的應(yīng)用也許有一個(gè)顯示發(fā)送消息的聯(lián)系人列表屏幕,第二個(gè)屏幕
35、用來(lái)寫(xiě)文本消息和選擇收件人,再來(lái)一個(gè)屏幕查看消息歷史或者消息設(shè)置操作等。這里每一個(gè)這樣的屏幕就是一個(gè)活動(dòng),很容易實(shí)現(xiàn)從一個(gè)屏幕到一個(gè)新的屏幕并且完成新的活動(dòng)。</p><p> 2)Intent:調(diào)用Android 專有類Intent 進(jìn)行架構(gòu)屏幕之間的切換。Intent 是描述應(yīng)用想要做什么。Intent 數(shù)據(jù)結(jié)構(gòu)兩個(gè)最重要的部分是動(dòng)作和動(dòng)作對(duì)應(yīng)的數(shù)據(jù)。典型的動(dòng)作類型有:MAIN(活動(dòng)的門(mén)戶)、VIEW、PI
36、CK、EDIT等。而動(dòng)作對(duì)應(yīng)的數(shù)據(jù)則以URI 的形式進(jìn)行表示。例如:要查看某個(gè)人的聯(lián)系方式,你需要?jiǎng)?chuàng)建一個(gè)動(dòng)作類型為VIEW 的Intent,以及一個(gè)表示這個(gè)人的URI。</p><p> 3)IntentReceiver:IntentReceiver在感興趣的事件發(fā)生時(shí),會(huì)使用NotificationManagemer通知用戶,但它并不能生成一個(gè)UI。IntentReceiver 在AndroidManife
37、st.xml 中注冊(cè),但也可以在代碼中使用Context.registerReceiver()進(jìn)行注冊(cè)。當(dāng)一個(gè)intentreceiver 被觸發(fā)時(shí),你的應(yīng)用不必對(duì)請(qǐng)求調(diào)用intentreceiver,系統(tǒng)會(huì)在需要的時(shí)候啟動(dòng)你的應(yīng)用。</p><p> 4)Service:一個(gè)Service 是一段長(zhǎng)生命周期的,沒(méi)有用戶界面的程序。比較好的一個(gè)例子就是一個(gè)正在從播放列表中播放歌曲的媒體播放器。在一個(gè)媒體播放器的
38、應(yīng)用中,應(yīng)該會(huì)有多個(gè)activity,讓使用者可以選擇歌曲并播放歌曲。然而,音樂(lè)重放這個(gè)功能并沒(méi)有對(duì)應(yīng)的activity,因?yàn)槭褂谜弋?dāng)然會(huì)認(rèn)為在導(dǎo)航到其它屏幕時(shí)音樂(lè)應(yīng)該還在播放的。</p><p> 5)Content Provider:Android 應(yīng)用程序能夠?qū)⑺鼈兊臄?shù)據(jù)保存到文件、SQLite 數(shù)據(jù)庫(kù)中,甚至是任何有效的設(shè)備中。當(dāng)你想將你的應(yīng)用數(shù)據(jù)與其它的應(yīng)用共享時(shí),內(nèi)容提供器就可以發(fā)揮作用了。因?yàn)閮?nèi)容
39、提供器類實(shí)現(xiàn)了一組標(biāo)準(zhǔn)的方法,從而能夠讓其它的應(yīng)用保存或讀取此內(nèi)容提供器處理的各種數(shù)據(jù)類型。</p><p> 2.2 Eclipse及ADT介紹</p><p> Eclipse 是一個(gè)開(kāi)放源代碼的、基于 Java 的可擴(kuò)展開(kāi)發(fā)平臺(tái)。就其本身而言,它只是一個(gè)框架和一組服務(wù),用于通過(guò)插件組件構(gòu)建開(kāi)發(fā)環(huán)境。Eclipse 附帶了一個(gè)標(biāo)準(zhǔn)的插件集,包括 Java 開(kāi)發(fā)工具(Java Dev
40、elopment Tools,JDT)。 Eclipse 還包括插件開(kāi)發(fā)環(huán)境(Plug-in Development Environment,PDE)。既然是標(biāo)準(zhǔn)插件集,那就表示默認(rèn)就按裝了JDT和PDE,也就可以進(jìn)行Java開(kāi)發(fā)和Eclipse插件開(kāi)發(fā)。</p><p> 盡管 Eclipse 是使用Java 語(yǔ)言開(kāi)發(fā)的,但它的用途并不限于 Java 語(yǔ)言,Eclipse 框架還可用來(lái)作為與軟件開(kāi)發(fā)無(wú)關(guān)的其他
41、應(yīng)用程序類型的基礎(chǔ),比如內(nèi)容管理系統(tǒng)。Eclipse除了開(kāi)發(fā)Java程序,在安裝必要的插件后可以做為其他開(kāi)發(fā)工具,如按裝了C++插件后就可以開(kāi)發(fā)C++應(yīng)用程序。</p><p> ADT是Eclipse的插件,是針對(duì)Android系統(tǒng)開(kāi)發(fā)的插件,在開(kāi)發(fā)過(guò)程當(dāng)中需要做一些配置,也是一款功能強(qiáng)大的J2EE集成開(kāi)發(fā)環(huán)境,支持代碼編寫(xiě)、配置、測(cè)試以及除錯(cuò)。</p><p> Eclipse 是
42、一個(gè)IDE(Integrated Developing Environment),而這個(gè)IDE是允許安裝第三方開(kāi)發(fā)的插件來(lái)使自身的功能得到擴(kuò)展和增強(qiáng)的,而MyEclipse就是其中的一種有名的插件集之一,MyEclipse將開(kāi)發(fā)者常用到的一些有用的插件都集合起來(lái)。</p><p> 2.3第三方語(yǔ)音庫(kù)TTS選擇</p><p> 智能語(yǔ)音技術(shù)是機(jī)器與人進(jìn)行交流互動(dòng)的技術(shù),分為語(yǔ)音合成技
43、術(shù)和語(yǔ)音識(shí)別技術(shù),前者可用于人機(jī)交互的輸出,使設(shè)備可以將文本信息轉(zhuǎn)化成語(yǔ)音信息,后者主要用于人機(jī)交互的輸入,使設(shè)備能夠接收人發(fā)出的語(yǔ)音信息并加以識(shí)別。實(shí)現(xiàn)兩種技術(shù)的結(jié)合,即可實(shí)現(xiàn)“語(yǔ)音-文本”、“文本-語(yǔ)音”的轉(zhuǎn)換,實(shí)現(xiàn)人機(jī)接口的語(yǔ)音交互。有關(guān)智能語(yǔ)音技術(shù),國(guó)外MicroSoft公司早在90年代就開(kāi)始了研究,且推出了語(yǔ)音技術(shù)Speech SDK系統(tǒng)產(chǎn)品;IBM公司在1998年就推出了ViaVoice語(yǔ)音識(shí)別系統(tǒng),用于PC、手提設(shè)備、汽車(chē)
44、系統(tǒng)和自動(dòng)客戶服務(wù)系統(tǒng)。</p><p> 在Android系統(tǒng)可以使用的語(yǔ)音庫(kù)大致有3種,默認(rèn)系統(tǒng)自帶的是Pico TTS、Svox、Eye三種首先系統(tǒng)自帶的不支持系統(tǒng)朗讀中文,所以這個(gè)給系統(tǒng)的開(kāi)發(fā)帶來(lái)不便,Eye和Svox都是支持中文的,Eye開(kāi)源但是朗讀的效果不是很好,對(duì)于有些斷句和聲調(diào)的處理比較弱,所以最終選擇相對(duì)穩(wěn)定的Svox作為本人的Text To Speech的識(shí)別引擎。</p>&
45、lt;p> 2.4 STT語(yǔ)音識(shí)別的引擎選擇</p><p> 在開(kāi)源領(lǐng)域有幾款的語(yǔ)音識(shí)別的引擎在英文領(lǐng)域識(shí)別的效果都是非常好的,例如Linux開(kāi)源語(yǔ)音識(shí)別引擎simon、nuance之類,在英文識(shí)別中的效率是較好,國(guó)內(nèi)訊飛自己研究的引擎也是不錯(cuò)的,但是大部分的識(shí)別引擎都對(duì)中文的識(shí)別存在問(wèn)題,訊飛的是不開(kāi)放的,所以課題本身就選擇了google自帶的識(shí)別引擎,對(duì)于中文的支持效果可以,唯一的缺點(diǎn)就是要聯(lián)網(wǎng),
46、自學(xué)習(xí)的過(guò)程是在服務(wù)端完成,對(duì)網(wǎng)絡(luò)有一定的要求。</p><p> 2.5 Android 樣式主題</p><p> Android 的樣式主題和CSS是極為相似的。都是用于為界面元素定義顯示風(fēng)格,它是一個(gè)包含一個(gè)或者多個(gè) view 控件屬性的集合。樣式定義了HTML元素怎樣去顯示,一般存儲(chǔ)在樣式表中。利用外部樣式表可以提高工作效率,而外部樣式表存儲(chǔ)在Style文件中。Style用以
47、作為網(wǎng)頁(yè)的排版與風(fēng)格設(shè)計(jì),在所謂的新式系統(tǒng)布局里 ,Style不容置疑是相當(dāng)重要的一環(huán)。Style是以既有的基礎(chǔ),用以彌補(bǔ)現(xiàn)有Android設(shè)計(jì)軟件界面時(shí)的語(yǔ)法中的不足,也讓軟件開(kāi)發(fā)更加靈活</p><p><b> 3系統(tǒng)需求分析</b></p><p> 要做一個(gè)符合用戶需求的軟件,對(duì)用戶進(jìn)行需求分析必不可少。需求分析需要弄清楚用戶最終需要解決哪些問(wèn)題,開(kāi)發(fā)出
48、的系統(tǒng)要為用戶提供什么樣的功能,什么樣的操作界面和運(yùn)行環(huán)境。</p><p> 3.1需求分析解決的主要問(wèn)題</p><p> 在傳統(tǒng)的手機(jī)應(yīng)用軟件中,對(duì)于語(yǔ)音朗讀的處理都是相對(duì)比較薄弱,在Android平臺(tái)上的有聲朗讀的軟件也是寥寥無(wú)幾。解決的主要問(wèn)題是本課題要完成哪些現(xiàn)實(shí)有效的功能。</p><p> 要實(shí)現(xiàn)一個(gè)軟件,首先應(yīng)該進(jìn)行需求分析,這樣才能令設(shè)計(jì)出
49、的軟件滿足用戶的各項(xiàng)功能。下面就對(duì)本課題的設(shè)計(jì)進(jìn)行需求分析。</p><p><b> 3.2系統(tǒng)功能需求</b></p><p> 功能大致分為3個(gè)大功能分別是:語(yǔ)音的朗讀、語(yǔ)音短信、語(yǔ)音識(shí)別。</p><p><b> 3.2.1語(yǔ)音朗讀</b></p><p> ?。?)提供用戶輸入的區(qū)
50、域,是的用戶能輸入文字;</p><p> ?。?)提供ReadFile功能,能讀取系統(tǒng)內(nèi)部開(kāi)放權(quán)限的的TXT的文本內(nèi)容;</p><p> ?。?)提供對(duì)用戶輸入的文字,或者是系統(tǒng)讀出的TXT的文本進(jìn)行朗讀;</p><p><b> 3.2.2語(yǔ)音短信</b></p><p> (1)提供給用戶開(kāi)啟和關(guān)閉語(yǔ)音短信
51、的按鈕開(kāi)關(guān);</p><p> ?。?)提供給短信發(fā)來(lái)后自動(dòng)的朗讀短信的內(nèi)容;</p><p> ?。?)提供給發(fā)來(lái)的短信即時(shí)回復(fù)的功能;</p><p><b> 3.2.3語(yǔ)音識(shí)別</b></p><p> (1)提供用戶輸入的接口,用戶可以輸入語(yǔ)音;</p><p> ?。?)提供給語(yǔ)音
52、合成返回的處理功能;</p><p> ?。?)可以打開(kāi)app、瀏覽器、以后語(yǔ)音電話的功能;</p><p><b> 3.3用戶界面需求</b></p><p> 1.要求有簡(jiǎn)潔大方的界面風(fēng)格,清晰淡然;</p><p> 2.界面友好,有適當(dāng)?shù)牟僮魈崾拘畔ⅲ?lt;/p><p> 3.用戶
53、體驗(yàn)好,用戶用起來(lái)順手; </p><p><b> 3.4系統(tǒng)運(yùn)行環(huán)境</b></p><p> 為了保證系統(tǒng)運(yùn)行的效率和可靠性,,客戶端的要求不是很高。此應(yīng)用程序可運(yùn)行于Android系統(tǒng)的手機(jī)平臺(tái)2.2平臺(tái)以上。</p><p><b> 4系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)</b></p><p>
54、弄清楚需求后,就要對(duì)軟件進(jìn)行概要設(shè)計(jì)和詳細(xì)設(shè)計(jì)了。由于本設(shè)計(jì)不復(fù)雜,就不對(duì)這兩個(gè)設(shè)計(jì)分別述說(shuō)了。設(shè)計(jì)中要確定程序的結(jié)構(gòu)、流程、各個(gè)模塊內(nèi)具體實(shí)現(xiàn)什么功能和模塊間的關(guān)系。</p><p><b> 4.1基本簡(jiǎn)介</b></p><p> 該系統(tǒng)主要為用戶提供語(yǔ)音的朗讀和識(shí)別的支持,所以大致的邏輯結(jié)構(gòu)是比較簡(jiǎn)單。在3大模塊的設(shè)計(jì)下細(xì)化每個(gè)小模塊的實(shí)現(xiàn)。</p&
55、gt;<p><b> 4.2系統(tǒng)結(jié)構(gòu)圖</b></p><p> 圖4.1 系統(tǒng)結(jié)構(gòu)圖</p><p><b> 4.3概要設(shè)計(jì)</b></p><p> 這一部分?jǐn)⑹龀绦蚋鱾€(gè)功能模塊的主要設(shè)計(jì)和頁(yè)面設(shè)計(jì)。</p><p> 4.3.1各功能模塊設(shè)計(jì)</p>
56、<p> 軟件首頁(yè):首頁(yè)是用戶首先觀察一個(gè)軟件的最主要的接口,應(yīng)該美觀大方,并且能清楚明白地鏈接到相應(yīng)功能模塊。因此,首頁(yè)的排版簡(jiǎn)單明了,主體能顯示具體詳細(xì)的功能模塊分類,這個(gè)樣給用戶的體驗(yàn)會(huì)提升。</p><p><b> 語(yǔ)音朗讀:</b></p><p> 用戶輸入文本框:提供用戶輸入朗讀的內(nèi)容,點(diǎn)擊文本框,會(huì)自動(dòng)彈出系統(tǒng)設(shè)定好的虛擬鍵盤(pán),給用戶
57、的輸入方便。</p><p> 讀取系統(tǒng)文件按鈕:提供用戶讀取系統(tǒng)的文本內(nèi)容,遍歷讀取系統(tǒng)的文件夾名稱,然后進(jìn)行讀取相關(guān)權(quán)限的文件TXT,然后輸出到TXT里面,這樣才能給后續(xù)的朗讀帶來(lái)可續(xù)性。</p><p> 語(yǔ)音朗讀按鈕:提供用戶朗讀識(shí)別用戶輸入和系統(tǒng)文件讀出的TXT文本;</p><p> 后退按鈕:在用戶操作過(guò)本功能后一定要給用戶一個(gè)返回的余地,所以要
58、設(shè)計(jì)一個(gè)返回的按鈕,這樣用戶,能返回主界面,然后做些其他的功能選擇。</p><p><b> 語(yǔ)音短信:</b></p><p> 語(yǔ)音短信朗讀開(kāi)關(guān):要給用戶選擇的權(quán)利,然后用戶可以選擇語(yǔ)音朗讀短信,當(dāng)然在用戶不需要的時(shí)候可以選擇關(guān)閉。</p><p> 接受短信的號(hào)碼和接受到短信的內(nèi)容:這些都需要要寫(xiě)個(gè)后臺(tái)的服務(wù),在系統(tǒng)的自帶在哪里運(yùn)
59、行,對(duì)于觸發(fā)了我們?cè)O(shè)置好的短信的權(quán)限的關(guān)鍵字,然后才會(huì)攔截短信的內(nèi)容,然后進(jìn)行轉(zhuǎn)換輸出到界面上。</p><p> 回復(fù)短信功能:在語(yǔ)音朗讀了短信內(nèi)容之后,用戶可以直接回復(fù)短信,不用在切換界面去回復(fù),給用戶帶來(lái)方便。</p><p><b> 語(yǔ)音識(shí)別:</b></p><p> 首先確定用戶常見(jiàn)的應(yīng)用,作為語(yǔ)音識(shí)別的接口,例如用戶喜歡聽(tīng)
60、歌,直接呼出“音樂(lè)”就打開(kāi)了相應(yīng)的音樂(lè)軟件,然后就可以享受美妙的音樂(lè)。這個(gè)主要是識(shí)別的接口第一要確保數(shù)據(jù)于互聯(lián)網(wǎng)的聯(lián)通,第二服務(wù)端處理完的數(shù)據(jù)然后進(jìn)行整理反饋到業(yè)務(wù)處理的類,然后進(jìn)行打開(kāi)相應(yīng)的應(yīng)用。</p><p><b> 4.4系統(tǒng)具體實(shí)現(xiàn)</b></p><p> 本系統(tǒng)基于Android平臺(tái),使用Java語(yǔ)言編寫(xiě)。本系統(tǒng)利用XML頁(yè)面布局工具,Eclips
61、e集成開(kāi)發(fā)平臺(tái),遵循Android架構(gòu)完成整個(gè)系統(tǒng)的開(kāi)發(fā)。同時(shí)用Style樣式文件控制頁(yè)面格式。</p><p> 注:篇幅限制,以及部分功能類似,以下列舉主要功能,圖片為局部核心部分。本章代碼為最終版本。</p><p> 軟件首頁(yè)如圖4.2所示。</p><p><b> 圖4.2 軟件首頁(yè)</b></p><p&
62、gt; 軟件首頁(yè)的界面的布局是:</p><p> Android平臺(tái)提供了大量的UI的構(gòu)建,可以將這些小的視覺(jué)塊搭建在一起,呈現(xiàn)給用戶復(fù)雜且有用的界面,然后我們?cè)诓季之?dāng)中會(huì)遇到一些問(wèn)題,和難點(diǎn)在布局首頁(yè)的時(shí)候,Android的布局有3種方式,布局就像容器,里面可以裝下很多控件。布局里面還可以套用其他的布局。這樣就可以實(shí)現(xiàn)界面的多樣化以及設(shè)計(jì)的靈活性。本人基本選定是是線性布局和相對(duì)布局來(lái)控制軟件。</p
63、><p> RelativeLayout就是以相對(duì)的方式定位布局,允許子元素指定他們相對(duì)于其它元素或父元素的位置(通過(guò)ID指定)。因此如果第一個(gè)元素在屏幕的中央,那么相對(duì)于這個(gè)元素的其它元素將以屏幕中央的相對(duì)位置來(lái)排列。如果使用XML 來(lái)指定這個(gè)layout,在你定義它之前,被關(guān)聯(lián)的元素必須定義。相對(duì)布局的屬性比較多,但用起來(lái)比較靈活。</p><p> 語(yǔ)音朗讀界面如圖4.3所示。<
64、;/p><p> 圖4.3 語(yǔ)音朗讀界面</p><p><b> 語(yǔ)音朗讀核心原理:</b></p><p> 在Android 中使用語(yǔ)音朗讀功能 只需要使用此類 TextToSpeech ,該類實(shí)現(xiàn)了很多關(guān)于語(yǔ)音的功能,使用該類必須為其設(shè)置語(yǔ)言,支持語(yǔ)言列表位于java.util類里的Local 類,具體如下:</p>&
65、lt;p><b> 圖4.4朗讀核心類</b></p><p> ReadFile的核心原理:</p><p> 提速文件讀寫(xiě)其原理就是讀的時(shí)候,先把文件的一些數(shù)據(jù)讀到緩沖中。這樣的好處是如果讀的內(nèi)容已經(jīng)在緩沖中,就讀緩沖的數(shù)據(jù)。如果沒(méi)有,就讓緩沖先從文件讀取數(shù)據(jù),然后再?gòu)木彌_讀數(shù)據(jù)。寫(xiě)操作同理.這樣的好處是減少對(duì)文件的操作次數(shù),從而達(dá)到提高性能的目的。&
66、lt;/p><p> 語(yǔ)音短信如圖4.5所示。</p><p> 圖4.5語(yǔ)音短信界面</p><p> 語(yǔ)音短信監(jiān)聽(tīng)核心原理:</p><p> Android中可以通過(guò)設(shè)置寫(xiě)一個(gè)繼承自BroadcastReceiver的Receiver來(lái)重寫(xiě),接收到短信之后的邏輯處理短信的內(nèi)容然后做文字拆分,發(fā)送給相應(yīng)的結(jié)構(gòu)體,供語(yǔ)音朗讀使用。<
67、;/p><p> 語(yǔ)音識(shí)別啟動(dòng)核心原理:</p><p> Android中主要通過(guò)RecognizerIntent來(lái)實(shí)現(xiàn)語(yǔ)音識(shí)別,它主要包括一些常量來(lái)表示語(yǔ)音的模式等,這里我們只需要通過(guò)Intent來(lái)傳遞一個(gè)動(dòng)作以及一些屬性,然后通startActivityForResult來(lái)開(kāi)始語(yǔ)音識(shí)別。</p><p><b> 4.5碰到的難點(diǎn)</b>
68、;</p><p> 由于剛開(kāi)始是初步接觸Android開(kāi)發(fā),對(duì)相關(guān)平臺(tái)不是很熟悉,所以在一開(kāi)始就慢慢買(mǎi)書(shū)和觀看相應(yīng)的視頻教程進(jìn)行學(xué)習(xí)。進(jìn)行Demo實(shí)例的研究和開(kāi)發(fā)。后來(lái)在經(jīng)過(guò)網(wǎng)上的查閱和API函數(shù)的幫助才開(kāi)始有點(diǎn)上手。在開(kāi)發(fā)過(guò)程中,聯(lián)系人查詢和布局的開(kāi)發(fā)是比較繁瑣的一個(gè)功能。雖然本人思路清晰,但是對(duì)于控件的不熟悉使這個(gè)功能在實(shí)現(xiàn)時(shí)困難重重。經(jīng)過(guò)分析,這個(gè)主要是由于時(shí)間和經(jīng)驗(yàn)不足,對(duì)庫(kù)函數(shù)不熟悉造成的。對(duì)于這種
69、模式的開(kāi)發(fā)缺乏認(rèn)識(shí),當(dāng)學(xué)習(xí)寫(xiě)了一段時(shí)間的時(shí)候,還是很容易上手了,寫(xiě)起來(lái)就很快了。</p><p><b> 5系統(tǒng)測(cè)試</b></p><p><b> 5.1系統(tǒng)錯(cuò)誤</b></p><p> 對(duì)于一個(gè)程序,開(kāi)發(fā)雖然重要,但是測(cè)試對(duì)于一個(gè)軟件來(lái)說(shuō)也是非常重要的。作為基礎(chǔ)的模塊,測(cè)試更是異常重要。只有通過(guò)測(cè)試,才能知
70、道自己的不足,才可以知道系統(tǒng)的漏洞,才能知道程序的漏洞。</p><p> 此程序由本人一人設(shè)計(jì)與開(kāi)發(fā),在測(cè)試時(shí)會(huì)按照自己設(shè)計(jì)路線來(lái)進(jìn)行測(cè)試,因此難免會(huì)有部分沒(méi)有察覺(jué)的問(wèn)題。以下列出了幾個(gè)編碼過(guò)程中已解決的錯(cuò)誤,原因以及解決辦法。</p><p> 5.1.1加載布局XML無(wú)效</p><p> 問(wèn)題描述:在后臺(tái)代碼中加載活動(dòng)的布局,此時(shí)會(huì)出現(xiàn)FC現(xiàn)象 <
71、;/p><p> 原因:因?yàn)锳ndroid的每個(gè)Activity都是要加載XML文件的,但是XML不可調(diào)式,很難發(fā)現(xiàn)這么隱藏的錯(cuò)誤。</p><p> 解決方法:盡量在寫(xiě)XML文件的時(shí)候,注意必要屬性的寫(xiě)法,例如:android:layout_width="fill_parent"</p><p> android:layout_hei
72、ght="78.0dip"</p><p> 這兩條屬性在寫(xiě)的時(shí)候要注意下,一般都是要寫(xiě)的,定義高度和寬度,不寫(xiě)也察覺(jué)不出來(lái),但是就會(huì)出錯(cuò),還有就是布局的邏輯結(jié)構(gòu)要合理。這個(gè)是解決大部分XML錯(cuò)誤。</p><p> 5.1.2短信截?cái)酂o(wú)效</p><p> 問(wèn)題描述:邏輯代碼都沒(méi)有問(wèn)題,測(cè)試發(fā)送了短信就是截取不到短信的內(nèi)容。</p&
73、gt;<p> 原因:是沒(méi)有在AndroidManifest.xml沒(méi)有注冊(cè)代碼</p><p> 解決方法: 在XML文件中加上這個(gè)權(quán)限的申明</p><p> <uses-permission Android:name="Android.permission.RECEIVE_SMS"/></p><p> 很
74、多的Android的Acvitity的活動(dòng)都是需要申明權(quán)限的,例如電話,發(fā)送短信這些都是需要的。</p><p> 5.1.3語(yǔ)音識(shí)別中文無(wú)效</p><p> 問(wèn)題描述:語(yǔ)音識(shí)別出來(lái)的中文漢字是無(wú)效的,對(duì)于后續(xù)的應(yīng)用開(kāi)發(fā)就不能打開(kāi)指定的Acvitity了。</p><p> 原因:在Android系統(tǒng)中的文字編碼有存在問(wèn)題做下轉(zhuǎn)碼就好了。</p>
75、<p><b> 解決方法:轉(zhuǎn)碼函數(shù)</b></p><p> public String change(String str){</p><p> String tempStr=null;</p><p><b> try {</b></p><p> tempStr =
76、 new String (str.getBytes(),"gb2312");</p><p> } catch (Exception e) {</p><p> e.printStackTrace();</p><p><b> }</b></p><p> return tempStr;&l
77、t;/p><p><b> }</b></p><p> 5.1.4系統(tǒng)資源找不到</p><p> 問(wèn)題描述:在寫(xiě)代碼的時(shí)候想要調(diào)用系統(tǒng)的配置好的string活著是資源文件的時(shí)候,現(xiàn)實(shí)系統(tǒng)錯(cuò)誤,資源包引入不進(jìn)來(lái).</p><p> 原因:這個(gè)可能是ADT的一個(gè)BUG,要寫(xiě)完代碼最好反復(fù)編譯過(guò),或者是clean一下,
78、這個(gè)系統(tǒng)會(huì)默認(rèn)的重新尋找一遍資源文件。</p><p> 解決方法:Eclipse->Project->clean,或者直接Build項(xiàng)目,就能解決這個(gè)問(wèn)題。</p><p> 5.1.5短信服務(wù)截取消息傳送問(wèn)題</p><p> 問(wèn)題描述:短信服務(wù)的數(shù)據(jù)截取到后,內(nèi)容取到,但是沒(méi)有傳送過(guò)來(lái)。</p><p> 原因:在A
79、ndroid的傳遞數(shù)據(jù)的過(guò)程當(dāng)中對(duì)他的Acvitity的本質(zhì)沒(méi)有了解清楚</p><p> 解決方法:i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);在代碼重要加入這句話,給Acvitity開(kāi)一個(gè)新的棧區(qū)</p><p><b> 5.2系統(tǒng)優(yōu)化</b></p><p> 5.2.1 XML布局優(yōu)化&l
80、t;/p><p> 問(wèn)題描述:軟件的前期界面的布局存在問(wèn)題,排版非常不好看,存在加載效率問(wèn)題</p><p> 原因:采用線性布局的布局,在后期的調(diào)整是非常麻煩,所以選定了RelativityLayout布局的方式 </p><p> 解決方法:在布局的時(shí)候都是用相對(duì)布局的方式進(jìn)行, 圖片和Style都是寫(xiě)在相關(guān)的配置XML里面,這樣方便修改!</p>
81、<p><b> 舉例代碼:見(jiàn)附件</b></p><p> 5.2.2代碼提示String修改優(yōu)化</p><p> 問(wèn)題描述:當(dāng)代碼寫(xiě)死的一個(gè)Sring代碼,想去修改的時(shí)候,找到這個(gè)代碼很麻煩,對(duì)于今后的維護(hù)造成一定的困擾。</p><p> 原因:因?yàn)榇a寫(xiě)死在冗長(zhǎng)的邏輯代碼中,給后續(xù)的維護(hù)造成困難。 </p&
82、gt;<p> 解決方法:配置成XML文件,然后在定義的XML文件中加載相應(yīng)的string的字符串,這個(gè)也是Android開(kāi)發(fā)的一個(gè)非常好的有點(diǎn),這個(gè)對(duì)全球化的軟件是非常重要的。</p><p><b> 6總結(jié)與展望</b></p><p> 隨著移動(dòng)互聯(lián)網(wǎng)的快速發(fā)展和手機(jī)上網(wǎng)用戶的快速增長(zhǎng),高端智能手機(jī)也逐漸受人們青睞,未來(lái)的手機(jī)應(yīng)用會(huì)出現(xiàn)越來(lái)
83、越多的“說(shuō)”的手機(jī)應(yīng)用,本課題只是做的初步的探索。</p><p><b> 6.1論文總結(jié)</b></p><p> 設(shè)計(jì)和開(kāi)發(fā)一個(gè)最基本的基于Android的軟件并且是關(guān)于語(yǔ)音方向的,這個(gè)在現(xiàn)代的無(wú)線領(lǐng)域的發(fā)展是非常快速的。通過(guò)這次畢業(yè)設(shè)計(jì),本人從中學(xué)到了許多新的知識(shí),而且通過(guò)這次畢業(yè)設(shè)計(jì),培養(yǎng)了本人綜合多門(mén)學(xué)科中的知識(shí)、迅速規(guī)劃并開(kāi)發(fā)出目標(biāo)系統(tǒng)的能力,同時(shí)讓
84、本人的編程能力也有了很大的提高。另外也有許多心得體會(huì),所謂系統(tǒng)開(kāi)發(fā)如人生百味,酸甜苦辣皆有之。</p><p> 回顧設(shè)計(jì)開(kāi)發(fā)過(guò)程,總結(jié)起來(lái)就是軟件的開(kāi)發(fā)是相當(dāng)辛苦的,但成功以后的喜悅也是非常美妙的,而且本人發(fā)現(xiàn),其中投入的心血越多,成功以后你所獲得的快樂(lè)與充實(shí)感也更多更強(qiáng)。</p><p><b> 6.2研究展望</b></p><p>
85、; 對(duì)消費(fèi)者而言,增加了高檔智能手機(jī)選擇面,不一定要從iphone和symbian中選擇。在Android設(shè)計(jì)初期考慮了與現(xiàn)有業(yè)務(wù)的融合,例如google地圖及其衍生應(yīng)用、Gmail、GTalk等都是以手機(jī)使用為向?qū)?,為消費(fèi)者生活帶來(lái)了極大的方便。GPS衛(wèi)星導(dǎo)航功能,手機(jī)照相,MP3,藍(lán)牙等均被列為Android所提供支持的基本選項(xiàng)。</p><p> 對(duì)手機(jī)制造商而言,Android是款開(kāi)源的移動(dòng)計(jì)算機(jī)軟件
86、平臺(tái),組建了google主導(dǎo)的擁有眾多產(chǎn)業(yè)界巨頭的產(chǎn)業(yè)聯(lián)盟,有利于高效開(kāi)發(fā)、降低成本。由于是開(kāi)源產(chǎn)品,對(duì)非主導(dǎo)廠商而言,可以避開(kāi)與主導(dǎo)廠商在核心技術(shù)上面的差距,開(kāi)發(fā)出更具競(jìng)爭(zhēng)力和差異化的產(chǎn)品。</p><p> 語(yǔ)音朗讀器核心語(yǔ)音合成技術(shù)在未來(lái)可以實(shí)現(xiàn)來(lái)電播報(bào)、短信播報(bào)、電子書(shū)朗讀以及語(yǔ)音提醒、語(yǔ)音報(bào)時(shí)等功能,通過(guò)語(yǔ)音識(shí)別實(shí)現(xiàn)語(yǔ)音撥號(hào)、語(yǔ)音檢索、語(yǔ)音命令操作手機(jī)等功能,朗讀效果清晰、自然,語(yǔ)音識(shí)別效率高、反應(yīng)快
87、、實(shí)用性強(qiáng)。這些才是未來(lái)社會(huì)的發(fā)展核心。</p><p> 隨著移動(dòng)互聯(lián)網(wǎng)的快速發(fā)展和手機(jī)上網(wǎng)用戶的快速增長(zhǎng),高端智能手機(jī)也逐漸受人們青睞。而高端手機(jī)市場(chǎng)的競(jìng)爭(zhēng)除了品牌效應(yīng)和售后服務(wù)外,更重要的是操作系統(tǒng)的性能和穩(wěn)定性。Android操作系統(tǒng)以其特有的開(kāi)源優(yōu)勢(shì)和系統(tǒng)架構(gòu)為廣大消費(fèi)者、供應(yīng)商、運(yùn)營(yíng)商、手機(jī)開(kāi)發(fā)者帶來(lái)了極大的方便。</p><p> 隨著科技的快速發(fā)展和3G時(shí)代的到來(lái),智能
88、化、人性化已成為了手機(jī)發(fā)展的主要方向?!澳苈?tīng)會(huì)說(shuō)”功能為手機(jī)行業(yè)帶來(lái)了革命性變化,徹底改變了人與手機(jī)之間的交互方式,使人與手機(jī)之間的“溝通”變得更加自然與順暢。</p><p><b> 參考文獻(xiàn)</b></p><p> [1]蓋索林,Google Android 開(kāi)發(fā)入門(mén)指南(第2版)[M],人民郵電出版社,2010 :22~35.</p>&l
89、t;p> [2] 余志龍等著.Google Android SDK開(kāi)發(fā)案例大全[M].人民郵電出版社,2009 :65~34.</p><p> [3] 姚昱旻,劉衛(wèi)國(guó).Android的架構(gòu)與應(yīng)用開(kāi)發(fā)研究[J].計(jì)算機(jī)系統(tǒng)應(yīng)用,2008,(11) :76~115.</p><p> [4] 陳璟,陳平華,李文亮.Android內(nèi)核分析[J].現(xiàn)代計(jì)算機(jī),2009,(11):11
90、2~115.</p><p> [5] 公磊,周聰.基于Android 的移動(dòng)終端應(yīng)用程序開(kāi)發(fā)與研究[J].計(jì)算機(jī)與現(xiàn)代化,2008,(8):86~89.</p><p> [6] 吳亞峰,索依娜.Android核心技術(shù)與實(shí)例詳解[M].電子工業(yè)出社,2010:112~115.</p><p> [7] 楊豐盛.Android應(yīng)用開(kāi)發(fā)揭秘[M].機(jī)械工業(yè)出版社
91、,2010:87~115.</p><p> [8] 田俊靜,張波,黃湘情.Android基礎(chǔ)教程(第三版)[M].人民郵電出版社,2010:244~255.</p><p> [9] 韓超,梁泉.Android系統(tǒng)原理及開(kāi)發(fā)要點(diǎn)詳解[M].電子工業(yè)出版社,2010:222~243.</p><p> [10] 張仕成.基于Google Android平臺(tái)的應(yīng)
92、用程序開(kāi)發(fā)與研究[J].電腦知識(shí)與技術(shù),2009 :152~175.</p><p> [11] 吳軍,周轉(zhuǎn)運(yùn).嵌入式系統(tǒng)應(yīng)用基礎(chǔ)與開(kāi)發(fā)案例[M].人民郵電出版社,2007:112~115.</p><p> [12] 田森,李大和.用Android開(kāi)發(fā)手機(jī)應(yīng)用[J].程序員,2008,(1):25~27.</p><p> [13] Tor-Morten G
93、rønli,Jarle Hansen,Gheorghita Ghinea,Android vs Windows Mobile vs Java ME[J],2010 ACM,1-8</p><p> [14] Bruce Eckel, thinking in java 3rd edit[M], Prentice Hall PTR, 2002:155~176.</p><p>&l
94、t;b> 致謝</b></p><p> 經(jīng)歷幾個(gè)月的學(xué)習(xí)和研究,終于初步完成了Android平臺(tái)語(yǔ)音系統(tǒng)的編寫(xiě)工作,對(duì)幫助過(guò)本人的老師、同學(xué)表示由衷的感謝。</p><p> 首先,要感謝導(dǎo)師XXX老師,在整個(gè)畢業(yè)設(shè)計(jì)的過(guò)程中,給予本人悉心的指導(dǎo),幫助本人完成畢業(yè)設(shè)計(jì)。胡老師一絲不茍的工作精神、嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度以及耐心的輔導(dǎo)都給人留下了深刻的印象。在此,衷心感謝胡老
95、師幾個(gè)月來(lái)的教導(dǎo)和關(guān)懷。</p><p> 其次,要感謝本人的班主任高巍老師,他對(duì)每一位學(xué)生的關(guān)心都顯得那么平凡,也感謝他指導(dǎo)本人對(duì)人對(duì)事的方法。</p><p> 再次,要感謝在畢業(yè)設(shè)計(jì)過(guò)程中給予幫助的同學(xué),他們的鼓勵(lì)與幫助,讓本人能夠堅(jiān)持不懈地努力。</p><p> 最后,向評(píng)審本論文及參加論文答辯的各位老師表示衷心的感謝和誠(chéng)摯的敬意。</p>
96、;<p><b> 附錄</b></p><p> //頁(yè)面布局優(yōu)化舉例</p><p> <?xml version="1.0" encoding="UTF-8"?></p><p> <LinearLayout Android:orientation="
97、;vertical" Android:id="@+id/Run" </p><p> Android:paddingTop="5.0dip" </p><p> Android:layout_width="wrap_content" </p><p> Android:layout_heig
98、ht="wrap_content"</p><p> Android:background="@drawable/background_generic"</p><p> xmlns:Android="http://schemas.Android.com/apk/res/Android"></p><
99、p> <RelativeLayout Android:id="@+id/read" </p><p> Android:paddingLeft="5.0dip" </p><p> Android:paddingRight="5.0dip" </p><p> Android:layou
100、t_width="fill_parent"</p><p> Android:layout_height="78.0dip"</p><p> Android:clickable="true"</p><p> Android:focusable="true"</p>
101、<p> style="@style/Card.Full"></p><p> <TextView Android:id="@+id/FreeTitle" </p><p> Android:layout_width="wrap_content" </p><p> Andr
102、oid:layout_height="wrap_content"</p><p> Android:text="@string/read_text_title"</p><p> style="@style/RunTitle"/></p><p> <TextView Android:te
103、xt="語(yǔ)音朗讀,我是小助手" </p><p> Android:layout_width="wrap_content" </p><p> Android:layout_height="wrap_content"</p><p> Android:layout_below="@+id/F
104、reeTitle" </p><p> Android:layout_alignLeft="@+id/FreeTitle" </p><p> style="@style/RunSubtitle" /></p><p> <ImageView style="@style/ArrowNext
105、" /></p><p> </RelativeLayout></p><p> <RelativeLayout Android:id="@+id/message" </p><p> Android:paddingLeft="5.0dip" </p><p>
106、 Android:paddingRight="5.0dip" </p><p> Android:layout_width="fill_parent"</p><p> Android:layout_height="78.0dip"</p><p> Android:clickable="t
107、rue"</p><p> Android:focusable="true"</p><p> style="@style/Card.Full"></p><p> <TextView Android:id="@+id/FreeTitle2" </p><p&
108、gt; Android:layout_width="wrap_content" </p><p> Android:layout_height="wrap_content"</p><p> Android:text="@string/message_text_title"</p><p> sty
109、le="@style/RunTitle"/></p><p> <TextView Android:text="語(yǔ)音朗讀,我是小助手" </p><p> Android:layout_width="wrap_content" </p><p> Android:layout_height
110、="wrap_content"</p><p> Android:layout_below="@+id/FreeTitle2" </p><p> Android:layout_alignLeft="@+id/FreeTitle2" </p><p> style="@style/RunSu
111、btitle" /></p><p> <ImageView style="@style/ArrowNext" /></p><p> </RelativeLayout></p><p> <RelativeLayout Android:id="@+id/car" </
112、p><p> Android:paddingLeft="5.0dip" </p><p> Android:paddingRight="5.0dip" </p><p> Android:layout_width="fill_parent"</p><p> Android:la
113、yout_height="78.0dip"</p><p> Android:clickable="true"</p><p> Android:focusable="true"</p><p> style="@style/Card.Full"></p>&l
114、t;p> <TextView Android:id="@+id/FreeTitle3" </p><p> Android:layout_width="wrap_content" </p><p> Android:layout_height="wrap_content"</p><p>
115、 Android:text="語(yǔ)音識(shí)別" </p><p> style="@style/RunTitle"/></p><p> <TextView Android:text="語(yǔ)音朗讀,我是小助手" </p><p> Android:layout_width="wrap_
116、content" </p><p> Android:layout_height="wrap_content"</p><p> Android:layout_below="@+id/FreeTitle3" </p><p> Android:layout_alignLeft="@+id/FreeTi
117、tle3" </p><p> style="@style/RunSubtitle" /></p><p> <ImageView style="@style/ArrowNext" /></p><p> </RelativeLayout></p><p>
118、 <RelativeLayout Android:id="@+id/Info" </p><p> Android:layout_width="fill_parent" </p><p> Android:layout_height="wrap_content"></p><p> &l
119、t;TextView Android:textColor="@color/blue_pressed_white" </p><p> Android:gravity="center" </p><p> Android:id="@+id/InfoAbout" </p><p> Android:pad
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 計(jì)算機(jī)軟件技術(shù)專業(yè)畢業(yè)論文
- 淺議計(jì)算機(jī)軟件工程管理
- 關(guān)于計(jì)算機(jī)軟件工程的分析思考
- 芻議計(jì)算機(jī)軟件工程管理的特點(diǎn)
- 計(jì)算機(jī)軟件工程管理與應(yīng)用解析
- 計(jì)算機(jī)軟件工程進(jìn)度控制研究
- 如何優(yōu)化計(jì)算機(jī)軟件工程管理的分析
- 關(guān)于計(jì)算機(jī)軟件工程的研究與應(yīng)用
- 關(guān)于優(yōu)化計(jì)算機(jī)軟件工程管理的思考
- [教育]語(yǔ)音處理與語(yǔ)音識(shí)別簡(jiǎn)介_(kāi)計(jì)算機(jī)軟件及應(yīng)用_it計(jì)算機(jī)_專業(yè)資料
- 畢業(yè)論文----淺析計(jì)算機(jī)軟件法律保護(hù)
- 基于android平臺(tái)的phonegap研究-軟件工程動(dòng)漫方向畢業(yè)論文
- 基于android平臺(tái)的phonegap研究-軟件工程動(dòng)漫方向畢業(yè)論文
- 如何創(chuàng)新和完善計(jì)算機(jī)軟件工程管理
- 基于android平臺(tái)的phonegap研究-軟件工程動(dòng)漫方向畢業(yè)論文
- 計(jì)算機(jī)軟件工程的維護(hù)措施和方法研究
- 基于android平臺(tái)的計(jì)步器的設(shè)計(jì)與實(shí)現(xiàn)-軟件工程畢業(yè)論文
- 計(jì)算機(jī)軟件與理論專業(yè)
- 計(jì)算機(jī)軟件開(kāi)發(fā)畢業(yè)論文---基于web的綜合測(cè)評(píng)系統(tǒng)
- 淮陰師范學(xué)院計(jì)算機(jī)科學(xué)與技術(shù)(軟件工程)專業(yè)畢業(yè)論文(設(shè)計(jì))
評(píng)論
0/150
提交評(píng)論