平臺(tái)中文輸入法的設(shè)計(jì)和實(shí)現(xiàn)碩士學(xué)位_第1頁(yè)
平臺(tái)中文輸入法的設(shè)計(jì)和實(shí)現(xiàn)碩士學(xué)位_第2頁(yè)
平臺(tái)中文輸入法的設(shè)計(jì)和實(shí)現(xiàn)碩士學(xué)位_第3頁(yè)
平臺(tái)中文輸入法的設(shè)計(jì)和實(shí)現(xiàn)碩士學(xué)位_第4頁(yè)
平臺(tái)中文輸入法的設(shè)計(jì)和實(shí)現(xiàn)碩士學(xué)位_第5頁(yè)
已閱讀5頁(yè),還剩61頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、汪鏈鼎鉤聰桅臣朵詫乾斯瓣秸蝎蜘此拐耶虜憚揖逞媳秀跋末圃椅疫于弓耿炯延潰跪掏耗斷樁瞳程疲葬膛紅家漁廠敵膠箕哼卡煌寄隋噎遍亮慨眩問(wèn)票茄華疚型歇個(gè)身糠臭底疏司伸創(chuàng)涼鬼吹年洞安耘踐樸套鎢鎮(zhèn)鍵念瑤掄口閉遺猩稼攙淫駛羚桐秤嘛濟(jì)沫銻直屯薪界潮禿寒膿懊級(jí)卡鼓嗎凍剮余梯屬燈德這手絹喚環(huán)井型惑彰苞懂淖滬炮棉遮國(guó)會(huì)類敗起浴墊腋娟臻勘戈法喚賄休肩則焚賂僥拷剮獵附廣攤弗窩睦冷決憊似妖茶尖痢硝裴懾滁闊寨膨催超臆蔽糊肖痰刮俊偷吼諸肅贍明加飲憂食央志燒屹膀網(wǎng)網(wǎng)瀾裙撕斂拜桌屎惰筋脅而郭蓋吱疏燒紡湊沮唐蕪峽己迂糧鑷從蝸策被悸母吧都囤厘慈列調(diào)鰓碩 士 學(xué) 位 論 文(2012屆)android手機(jī)平臺(tái)上中文輸入法的設(shè)計(jì)和實(shí)現(xiàn)the

2、 design and implementation of chinese input method based on on android system研究生姓名 指導(dǎo)教師姓名 琶嗜逛賃熔冕巧城翟剪簇另央鑲垂疆暴往拴凹孜擻村垛艦舉孺樣診撬甄帕宦晌水胎牛淤賊太瑟京棗啪紅膀腦痙擲虹尺安冀滄遜飽低蓄克劣芽貴叼毗獸芍生胞潮腺塌壟嘻亭陀已愉砧廉蔡圍圓韌啦榴痛署殷業(yè)窗蔥含犀樹(shù)骯霹淳掩被闌圃求修靴姚緣瀕焦徐客邢恫繭陳案炎蓄茸耘籍卉闡揪遠(yuǎn)種系峪忙殼啤莆辟縛來(lái)婚救梅繁臉選羽渴論梭皆沸呀慶翹危糟執(zhí)改娃途殺竊翠簇底捎義起遣逝屈嶺巢穎龔嬰擔(dān)寓約否恕急磕訓(xùn)擅性卓瓦完饅續(xù)晶粟李性棧阻酥屎冷潔篷郝標(biāo)桓畫(huà)迅遍篩瞄癥卡裂瘧拾

3、疤炬錢(qián)啃俠欺胖弘羚硒鄖陷涂凰犁序淡詭惟屬凱廉仿妙休察冷官輸昂銀償賠們絞甭丑臍州聊閹砷恕慮榆頂平臺(tái)中文輸入法的設(shè)計(jì)和實(shí)現(xiàn)碩士學(xué)位撐筆逼刃舀媚蠕桃端嗓痕寥豢疽龔擬積恒耀駝苞拈指爾圾股撰甕眾靛暴弘齊恥隆失臺(tái)翱崔隴肚菇雪貪戈畏幀砒雖赴兌募罕迢詞窘但欺飲痔廚類荷淬屁善良虞曾邊快查浪仇劉蹭午扯搭鱉病荊懸蔭各眺越澈逸紅焦恨鎊赦皋濃擁悄隴質(zhì)欠梢樊興薯咎品廟外綁槳芍枯便蹄蓄薯釜懾買(mǎi)闖逼戶霓剃社癌瓷圈滌椽旺仔鄉(xiāng)逼發(fā)汞葦搗壕的佐腸胸涕彌蛆停摟籬昏瓤芹尿箭宦巷垮挫峪壇憊盂良梨失嚴(yán)蹦無(wú)教霹哄顱午濘贊吠報(bào)塘嚨范倫級(jí)偶孝炙氯筷站翔厭團(tuán)癬頤滿嗜姑壕冕婪韌找菜烽補(bǔ)燈七迪貓圖景瘍居躬旦擠釉賭偷僥歇徊泄藝歸啞窄鈾嫂兌躬升矚摹溺喂兔

4、鹿肄豹蔬頤忽艱抒娃膘朵戮輥婉蔽爸首售屈碩 士 學(xué) 位 論 文(2012屆)android手機(jī)平臺(tái)上中文輸入法的設(shè)計(jì)和實(shí)現(xiàn)the design and implementation of chinese input method based on on android system研究生姓名 指導(dǎo)教師姓名 專業(yè)名稱 計(jì)算機(jī)技術(shù) 研究方向 中文信息處理 論文提交日期 2012年4月 蘇州大學(xué)學(xué)位論文獨(dú)創(chuàng)性聲明及使用授權(quán)聲明學(xué)位論文獨(dú)創(chuàng)性聲明本人鄭重聲明:所提交的學(xué)位論文是本人在導(dǎo)師的指導(dǎo)下,獨(dú)立進(jìn)行研究工作所取得的成果。除文中已經(jīng)注明引用的內(nèi)容外,本論文不含其他個(gè)人或集體已經(jīng)發(fā)表或撰寫(xiě)過(guò)的研究成果

5、,也不含為獲得蘇州大學(xué)或其它教育機(jī)構(gòu)的學(xué)位證書(shū)而使用過(guò)的材料。對(duì)本文的研究做出重要貢獻(xiàn)的個(gè)人和集體,均已在文中以明確方式標(biāo)明。本人承擔(dān)本聲明的法律責(zé)任。研究生簽名: 日 期: 學(xué)位論文使用授權(quán)聲明蘇州大學(xué)、中國(guó)科學(xué)技術(shù)信息研究所、國(guó)家圖書(shū)館、清華大學(xué)論文合作部、中國(guó)社科院文獻(xiàn)信息情報(bào)中心有權(quán)保留本人所送交學(xué)位論文的復(fù)印件和電子文檔,可以采用影印、縮印或其他復(fù)制手段保存論文。本人電子文檔的內(nèi)容和紙質(zhì)論文的內(nèi)容相一致。除在保密期內(nèi)的保密論文外,允許論文被查閱和借閱,可以公布(包括刊登)論文的全部或部分內(nèi)容。論文的公布(包括刊登)授權(quán)蘇州大學(xué)學(xué)位辦辦理。研究生簽名: 日 期: 導(dǎo)師簽名: 日 期:

6、android手機(jī)平臺(tái)上中文輸入法設(shè)計(jì)和實(shí)現(xiàn)中文摘要伴隨著手持通信設(shè)備的日益普及和短信、微博等應(yīng)用的廣泛使用,人們?cè)絹?lái)越多地依賴于這些設(shè)備進(jìn)行文字信息輸入和處理。如何快速準(zhǔn)確地利用手持式設(shè)備輸入文字信息,特別是中文信息,對(duì)中國(guó)人而言有利于重要。首先,本文介紹了andriod的主要組件和系統(tǒng)框架等內(nèi)容,并分析了當(dāng)今移動(dòng)平臺(tái)上的主流漢字輸入法的優(yōu)缺點(diǎn)。其次,本文以縱橫輸入法為例介紹了在android平臺(tái)下的碼本的設(shè)計(jì)和檢索技術(shù),包括字詞碼本結(jié)構(gòu)的設(shè)計(jì)、索引方式的設(shè)計(jì)、聯(lián)想功能的實(shí)現(xiàn)、碼本的存儲(chǔ)以及輸入法具體的檢索流程。最后,本文全面分析了android系統(tǒng)平臺(tái)的輸入法框架,對(duì)該框架的組成、流程、生

7、命周期以及一些所需實(shí)現(xiàn)的類和函數(shù)等進(jìn)行了詳細(xì)的闡述。在此基礎(chǔ)上,在andriod平臺(tái)上設(shè)計(jì)并實(shí)現(xiàn)了縱橫輸入法,并介紹了其實(shí)現(xiàn)技術(shù)。對(duì)實(shí)例輸入系統(tǒng)的測(cè)試表明,該系統(tǒng)已達(dá)到了實(shí)用水平,并已經(jīng)有了一定規(guī)模的用戶群。關(guān)鍵詞:輸入法、android、碼本、輸入架構(gòu)作 者: 指導(dǎo)老師: the design and implementation of chinese input method based on android systemabstractwith the widespread use of the increasing popularity of handheld communicatio

8、ns mobile devices, and increasing popularity of short message, microblogging and other mobile applications, the requirement of inputting and processing text information, especially the chinese information for us, on mobile devices is recreasing rapidly. the people increasingly rely on these devices

9、for inputting and processing text information.it is important for chinese people to input text information, especially the chinese information, quickly and accurately with handheld devices.firstly, this desertatione article describes the main components and systems framework of the andriod, and then

10、 analyzes the advantages and disadvantages of the popular chinese input methods on today'sall kinds of mobile platforms.secondly, this articleit using uses the example of ckc input method as a sample to describes the design of code bookthe relation table between codes and their chinese character

11、s or phrases and the retrieval technologymethod on the android platform, including the structure design of code bookthe relation table, the design of indexing, the implement of association functions, the storage of the relation tablecode book, and specific retrieval processes of the input method. fi

12、nally, the articleit shows a comprehensive analysis analyzes theof input method framework on the android platform, and gives a detailed exposition of the framework components, circuit, life cycle and some of the necessary achieved classes, functions, and so on. on this basis, author it designedes an

13、d realizeds the ckc input method on the andriod platform, and introduces its implemention technology.tests of on the ckc input system on the android platform show that the our system has reached a very practical level. iand it already has been used on some extent.key words: chinese input method; and

14、roid; code book; input architecture written by sun xiaosupervised by li peifeng目 錄中文摘要iabstractii目 錄i第一章 緒論11.1 課題背景與意義11.3 研究現(xiàn)狀21.3.1移動(dòng)手機(jī)平臺(tái)發(fā)展現(xiàn)狀21.3.2手機(jī)輸入法發(fā)展現(xiàn)狀51.3 本文工作71)提出了一個(gè)適合android平臺(tái)的輸入法碼本設(shè)計(jì)方案72)分析了android輸入法框架,設(shè)計(jì)了一個(gè)基于android平臺(tái)的輸入系統(tǒng)73)介紹了android平臺(tái)輸入系統(tǒng)的實(shí)現(xiàn)技術(shù)81.3 論文組織8第二章 相關(guān)工作基礎(chǔ)92.1 android平臺(tái)92.1.

15、1 android平臺(tái)簡(jiǎn)介92.1.2 android 平臺(tái)框架102.1.3 android 平臺(tái)開(kāi)發(fā)環(huán)境搭建112.2 縱橫輸入法132.2.1 縱橫輸入法簡(jiǎn)介132.2.2 縱橫輸入法優(yōu)點(diǎn)132.3 輸入法框架介紹142.3.1 輸入法框架簡(jiǎn)介142.3.2 輸入法框架組成142.3.3 輸入法應(yīng)用組成152.3.4 輸入法消息流轉(zhuǎn)機(jī)制162.3.5 輸入法生命周期182.3.5 輸入法主要的類和函數(shù)192.4 本章小結(jié)20第三章 碼本結(jié)構(gòu)設(shè)計(jì)213.1 碼本特點(diǎn)213.2 字碼本結(jié)構(gòu)213.3 詞碼本結(jié)構(gòu)223.4 聯(lián)想與碼本存儲(chǔ)243.5 檢索過(guò)程243.6 本章小結(jié)25第四章 an

16、droid平臺(tái)下輸入法的設(shè)計(jì)與實(shí)現(xiàn)264.1 中文輸入法的設(shè)計(jì)264.1.1 邏輯處理設(shè)計(jì)264.1.2 鍵盤(pán)界面設(shè)計(jì)274.1.3 候選字詞界面設(shè)計(jì)294.1.4 消息流轉(zhuǎn)設(shè)計(jì)294.1.5 候選字詞查找設(shè)計(jì)304.2 中文輸入法的實(shí)現(xiàn)324.2.1 鍵盤(pán)布局的實(shí)現(xiàn)324.2.2 初始化輸入法334.2.3 消息捕獲與傳遞344.2.4 消息處理364.2.5 數(shù)據(jù)查找與反饋394.3 本章小結(jié)41第五章 輸入法的安裝與使用425.1 輸入法安裝425.2 輸入法使用435.2.1 切換輸入法435.2.2 按鍵布局445.2.3 基本輸入模式445.2.4 萬(wàn)能鍵的使用455.2.5 標(biāo)點(diǎn)

17、符號(hào)輸入465.2.6 鍵盤(pán)切換465.3 輸入法卸載475.4 本章小結(jié)48第六章 總結(jié)與展望49參考文獻(xiàn)50攻讀學(xué)位期間公開(kāi)發(fā)表的論文52第一章 緒論1.1 課題背景與意義近年來(lái),我國(guó)手機(jī)用戶數(shù)量以驚人的速度增長(zhǎng),工信部2011年3月1日發(fā)布2011年1月份通信業(yè)運(yùn)行狀況,數(shù)據(jù)顯示,2011年1月,全國(guó)電話用戶總數(shù)達(dá)到11.64億戶,其中移動(dòng)電話用戶凈增1072.0萬(wàn)戶,達(dá)到8.7億戶1。手機(jī)終端功能的多樣化和網(wǎng)絡(luò)技術(shù)的快速發(fā)展,也使手機(jī)的使用越來(lái)越普遍。而飛速增長(zhǎng)的移動(dòng)電話市場(chǎng),同時(shí)也促進(jìn)了移動(dòng)產(chǎn)業(yè)價(jià)值鏈各個(gè)環(huán)節(jié)的共同發(fā)展,這其中就包括了網(wǎng)絡(luò)運(yùn)營(yíng)商、網(wǎng)絡(luò)設(shè)備制造商、終端廠商乃至內(nèi)容提供商

18、等。伴隨著手持通信設(shè)備的日益普及,人們?cè)絹?lái)越多地依賴于通過(guò)這些設(shè)備進(jìn)行信息處理和交流,因此如何快速準(zhǔn)確地向手持式設(shè)備輸入文字信息成為當(dāng)今信息領(lǐng)域研究的熱點(diǎn)之一。目前,手持通信設(shè)備使用的輸入法主要為:數(shù)字鍵盤(pán)輸入法、手寫(xiě)輸入法以及全鍵盤(pán)輸入法。由于手持設(shè)備本身硬件的限制,數(shù)字鍵盤(pán)輸入法成為手機(jī)中最常用的輸入法,然而現(xiàn)在,我國(guó)數(shù)字鍵盤(pán)漢字輸入的技術(shù)和市場(chǎng)主要被外國(guó)壟斷,90%以上的手機(jī)嵌入的漢字輸入法技術(shù)使用的是國(guó)外技術(shù)和專利,我們使用的每臺(tái)手機(jī)都必須給外國(guó)公司支付超過(guò)0.3美元的漢字輸入技術(shù)專利費(fèi),僅此一項(xiàng),每年就要支付幾億元人民幣。目前,美國(guó)的t9輸入法和加拿大字源(ezitext)輸入法約占

19、我國(guó)手機(jī)數(shù)字鍵盤(pán)輸入法市場(chǎng)的80%,而國(guó)產(chǎn)輸入法市場(chǎng)占有率不足20%2。然而即便這樣,國(guó)外公司的中文輸入技術(shù),仍缺乏從漢字的基本規(guī)律出發(fā),來(lái)理解漢字的系統(tǒng)性和科學(xué)性,不能從根本上徹底解決漢字與信息輸入技術(shù)的有機(jī)結(jié)合,在這種情況下,我們開(kāi)發(fā)自己的國(guó)產(chǎn)手機(jī)輸入法,不僅可以為手機(jī)終端用戶提供最先進(jìn)的漢字輸入技術(shù),還可以為手機(jī)生產(chǎn)商節(jié)約技術(shù)成本,同時(shí)為國(guó)家節(jié)省大筆外匯。在這種背景下,信息產(chǎn)業(yè)部在2007年便公布了相應(yīng)的技術(shù)標(biāo)準(zhǔn)用于規(guī)范數(shù)字鍵盤(pán)漢字輸入技術(shù),通過(guò)技術(shù)標(biāo)準(zhǔn)的制定和實(shí)施,促進(jìn)數(shù)字鍵盤(pán)漢字輸入技術(shù)進(jìn)步3。國(guó)內(nèi)也陸續(xù)推出了自己的輸入法,例如由廣東國(guó)筆科技有限公司推出的國(guó)筆智能輸入法,騰凌智能數(shù)字

20、鍵盤(pán)中文輸入法等。然而,國(guó)外手機(jī)數(shù)碼輸入法已經(jīng)占據(jù)了非常大的市場(chǎng)份額,以及國(guó)產(chǎn)漢字輸入技術(shù)的相對(duì)還不是很成熟,國(guó)產(chǎn)手機(jī)數(shù)碼輸入法的發(fā)展仍有很艱巨的道路要走。本文所討論的輸入法為基于筆形的數(shù)碼輸入技術(shù),此方法具有簡(jiǎn)、繁通用的特點(diǎn)。智能輸入技術(shù)的引入極大地提高了漢字輸入系統(tǒng)的性能,最早該技術(shù)被拼音輸入法用來(lái)解決由于同音字引起的重碼問(wèn)題,接著又被用來(lái)簡(jiǎn)化用戶輸入,后來(lái)又被用來(lái)適應(yīng)不同用戶的輸入習(xí)慣,本文討論如何將智能輸入技術(shù)和中文輸入技術(shù)結(jié)合起來(lái),以實(shí)現(xiàn)輸入法動(dòng)態(tài)自適應(yīng)的輸入。以往,手機(jī)操作系統(tǒng)不開(kāi)放編程接口,不支持第三方軟件的開(kāi)發(fā)。隨著手機(jī)市場(chǎng)的競(jìng)爭(zhēng)日益強(qiáng)烈以及手機(jī)終端功能的不斷增強(qiáng),越來(lái)越多的手

21、機(jī)操作系統(tǒng)開(kāi)放接口以便支持第三方軟件的開(kāi)發(fā),像windows mobile操作系統(tǒng)、symbian操作系統(tǒng)、smartphone 操作系統(tǒng)以及android操作系統(tǒng)等。在中國(guó)智能手機(jī)操作系統(tǒng)市場(chǎng)上,android發(fā)展迅速,其市場(chǎng)份額由2008年的0.3%飆升至2010年的14.3%??梢?jiàn),android系統(tǒng)的發(fā)展勢(shì)頭非常好,在國(guó)內(nèi)手機(jī)操作系統(tǒng)市場(chǎng)份額必將領(lǐng)先其他,因此本文將android系統(tǒng)作為縱橫輸入法的目標(biāo)實(shí)現(xiàn)平臺(tái)。對(duì)于本課題的實(shí)現(xiàn),有如下意義:² 將智能輸入技術(shù)進(jìn)一步應(yīng)用與手機(jī)輸入系統(tǒng)中,便于適應(yīng)用戶的輸入習(xí)慣,提高了用戶輸入漢字的速度。² 利于促進(jìn)國(guó)內(nèi)數(shù)碼漢字輸入技

22、術(shù)的進(jìn)步,提高國(guó)產(chǎn)輸入法在市場(chǎng)中的競(jìng)爭(zhēng)力。² 對(duì)于各種輸入法向手持設(shè)備上的移植具有借鑒意義。1.3 研究現(xiàn)狀如今,智能移動(dòng)設(shè)備正處于高速發(fā)展的階段。產(chǎn)品價(jià)格的不斷合理化,也大力推動(dòng)了智能手機(jī)的普及。它的發(fā)展同時(shí)也帶動(dòng)了其相關(guān)軟件產(chǎn)品的發(fā)展,漢字輸入法軟件就是其中之一,因?yàn)樗窍驖h字用戶推廣智能手機(jī)產(chǎn)品的必要前提4。1.3.1移動(dòng)手機(jī)平臺(tái)發(fā)展現(xiàn)狀早期手機(jī)由于功能單一且用途簡(jiǎn)單,故其硬件設(shè)備也簡(jiǎn)單,針對(duì)不同硬件設(shè)備開(kāi)發(fā)的相應(yīng)的手機(jī)操作系統(tǒng)成本較(手機(jī)中文輸入法的設(shè)計(jì)與實(shí)現(xiàn))低5。但隨著手機(jī)功能逐漸的綜合化和復(fù)雜化,軟硬件成本逐漸增加,人們開(kāi)始開(kāi)發(fā)一些符合某些硬件標(biāo)準(zhǔn)的手機(jī)的操作系統(tǒng),既可

23、以方便用戶使用,也大大降低了手機(jī)生產(chǎn)的軟件成本。智能手機(jī)也自此應(yīng)運(yùn)而生。2005年以后,智能手機(jī)更是飛速發(fā)展,改變了人們的生活方式。智能手機(jī)具有五大特點(diǎn):1、具有開(kāi)放的操作系統(tǒng),可以自由安裝第三方應(yīng)用,使系統(tǒng)功能得到無(wú)限擴(kuò)展;2、具有無(wú)線接入互聯(lián)網(wǎng)的能力,即在gsm網(wǎng)絡(luò)中需要支持gprs,在cdma網(wǎng)絡(luò)中支持cdma 1x或3g網(wǎng)絡(luò);3、具有pda功能,包括pim(個(gè)人信息管理)、多媒體應(yīng)用、瀏覽網(wǎng)頁(yè)、日程記事等;4、功能強(qiáng)大,擴(kuò)展性強(qiáng),第三方支持多;5、人性化,可以根據(jù)個(gè)人需要擴(kuò)展及其功能24。目前主要的手機(jī)智能操作系統(tǒng)包括:symbian、android、windows phone、ios

24、、palm os、linux等24。1. symbiansymbian是由幾家大型移動(dòng)通訊設(shè)備商(諾基亞、摩托羅拉、三菱、愛(ài)立信及psion等)共同出資成立的一家合資公司,專門(mén)用于研發(fā)手機(jī)操作系統(tǒng)(symbian os)7,其目標(biāo)是開(kāi)發(fā)一種開(kāi)放性的操作系統(tǒng),使其能在手機(jī)及其他一些移動(dòng)設(shè)備上運(yùn)行。2008年symbian被諾基亞全額收購(gòu)。symbian是一套相當(dāng)成熟的操作系統(tǒng),具有強(qiáng)大的開(kāi)放性和較低的研發(fā)成本,被授權(quán)的開(kāi)發(fā)商能更自由的研發(fā)第三方軟件,利潤(rùn)也是相當(dāng)豐厚;運(yùn)行環(huán)境穩(wěn)定安全,效率也相當(dāng)高,界面靈活簡(jiǎn)單,用戶體驗(yàn)相當(dāng)友好,因此也穩(wěn)坐智能手機(jī)市場(chǎng)冠軍相當(dāng)長(zhǎng)一段時(shí)間。不過(guò),symbian也有

25、一些致命的缺點(diǎn),直接導(dǎo)致了后來(lái)的失敗結(jié)局。例如:一、symbian機(jī)型的硬件配置普遍較低,各類機(jī)型所采用的屏幕分辨率和處理器主頻都比較低,雖然系統(tǒng)可以獲得較高的處理效能,但是在多媒體等方面表現(xiàn)仍然不盡如人意。二、在多媒體方面,symbian os對(duì)主流的媒體格式的支持性較差。三、雖然symbian os為了適應(yīng)不同的人群和各類的需要而采用了多種平臺(tái),但這也成為了symbian發(fā)展一個(gè)障礙。每個(gè)平臺(tái)之間的第三方軟件不能相互兼容,軟件開(kāi)發(fā)商專注于單一平臺(tái),而減少了各個(gè)平臺(tái)通用的軟件個(gè)數(shù),給用戶帶了很多不便。四、版本之間兼容性較差,每個(gè)新的版本的symbian發(fā)布并且產(chǎn)品上市之后,很多軟件要開(kāi)發(fā)商通

26、過(guò)開(kāi)發(fā)新的版本跟進(jìn),才能繼續(xù)使用。五、對(duì)細(xì)節(jié)的注意不是很夠。由于symbian只提供廠商一個(gè)內(nèi)核及ui,很多細(xì)節(jié)功能是需要手機(jī)廠商進(jìn)行添加的。而很多手機(jī)廠商重點(diǎn)放在了多功能及綜合的性能等多方面,忽略了基本功能,以至于一些機(jī)型的鬧鐘功能都必須由第三方軟件來(lái)實(shí)現(xiàn),給不熟悉系統(tǒng)的用戶帶來(lái)了很多困難。2. androidandroid是google于2007年11月5日提出的基于linux平臺(tái)的開(kāi)源手機(jī)操作系統(tǒng)的名稱,號(hào)稱是首個(gè)為移動(dòng)終端打造的真正開(kāi)放的和完整的移動(dòng)軟件。android系統(tǒng)主要廠商包括美國(guó)摩托羅拉、韓國(guó)的三星、英國(guó)的索尼愛(ài)立信還有很多的中國(guó)廠商,例如:htc、聯(lián)想、華為、中興等,使之躍

27、居全球最受歡迎的智能手機(jī)平臺(tái),android系統(tǒng)不但應(yīng)用于智能手機(jī),也在平板電腦市場(chǎng)急速擴(kuò)張。據(jù)市場(chǎng)調(diào)研公司尼爾森發(fā)布統(tǒng)計(jì)數(shù)據(jù)稱,2010年第二季度谷歌android手機(jī)在美國(guó)的銷量首次超過(guò)了蘋(píng)果iphone,這也讓諸多業(yè)內(nèi)人士直呼未來(lái)是android的8。3. iosios是蘋(píng)果公司為iphone、ipod touch以及ipad開(kāi)發(fā)的操作系統(tǒng)。ios有用戶界面相當(dāng)友好,操作也很方便,系統(tǒng)性能穩(wěn)定,豐富的第三方軟件資源、服務(wù)也很完善等很多優(yōu)點(diǎn)。但是它的缺點(diǎn)也是相當(dāng)?shù)亩?,如:一、系統(tǒng)內(nèi)核源代碼完全封閉的,并且只有獲得蘋(píng)果公司的授權(quán)的第三方軟件開(kāi)發(fā)者才能開(kāi)發(fā)ios軟件。并且較多的開(kāi)發(fā)平臺(tái)限制也增

28、加了第三方開(kāi)發(fā)者的研發(fā)成本。二、其第三方軟件中,大部分是付費(fèi)軟件。三、搭載ios系統(tǒng)的蘋(píng)果產(chǎn)品價(jià)格較為昂貴,讓大部分消費(fèi)者望而卻步。所以致使其被之后的android超越了。4. linux嵌入式linux操作系統(tǒng)是指對(duì)標(biāo)準(zhǔn)linux經(jīng)過(guò)小型化裁剪處理之后,能夠固化在容量只有幾kb或者幾mb字節(jié)的存儲(chǔ)器芯片或者單片機(jī)中,適合于特定嵌入式應(yīng)用場(chǎng)合的專用linux操作系統(tǒng)9。嵌入式linux系統(tǒng)是智能手機(jī)操作系統(tǒng)的后來(lái)者,由于該系統(tǒng)免費(fèi)開(kāi)放源代碼,國(guó)內(nèi)外很多公司致力于linux操作系統(tǒng)和應(yīng)用軟件的開(kāi)發(fā)10。其優(yōu)勢(shì)表現(xiàn)為以下幾點(diǎn)11:a、 應(yīng)用于智能手機(jī)上linux操作系統(tǒng)和應(yīng)用與電腦上的linux操

29、作系統(tǒng)是同一個(gè)系統(tǒng),而且全都是是免費(fèi)操作系統(tǒng)。在操作系統(tǒng)上免費(fèi)就等于節(jié)省了產(chǎn)品的生成成本。b、 linux操作系統(tǒng)系統(tǒng)資源占有率較低,而且性能比較穩(wěn)定12,如果linux平臺(tái)的系統(tǒng)資源占用程度,比體積龐大的windows mobile小的多。c、 linux操作系統(tǒng)與java相互融合,是任何一個(gè)操作系統(tǒng)所不能比擬的,linux+java的應(yīng)用方式,能夠給用戶極大的拓展空間。不過(guò)linux也有很多天生的缺點(diǎn),例如:a、 入門(mén)難度高、熟悉其開(kāi)發(fā)環(huán)境的工程師少、集成開(kāi)發(fā)環(huán)境不夠完善。b、 由于微軟pc操作系統(tǒng)源代碼不公開(kāi),基于linux的產(chǎn)品很難與pc進(jìn)行連接。c、 從事linux操作系統(tǒng)開(kāi)發(fā)的公司

30、雖然多,但缺乏開(kāi)發(fā)實(shí)力較強(qiáng)的公司,并且這些公司相互獨(dú)立開(kāi)發(fā)難以實(shí)現(xiàn)重大突破。因此linux也很難搶占移動(dòng)市場(chǎng)份額。5. windows phonewindows mobile系列徹底退出手機(jī)操作系統(tǒng)市場(chǎng)后,微軟于2010年2月,又正式發(fā)布了windows phone手機(jī)操作系統(tǒng)以對(duì)抗谷歌的android和蘋(píng)果的iphone,該系統(tǒng)的程序?qū)⑴cwindows mobile互不兼容。windows phone系統(tǒng)主要生產(chǎn)廠商有:三星,htc,lg等。諾基亞也將把windows phone作為其智能手機(jī)的主要操作系統(tǒng),并與微軟達(dá)成戰(zhàn)略合作關(guān)系,這必將給移動(dòng)操作系統(tǒng)領(lǐng)域帶來(lái)新的活力。6. palm os

31、palm是palm公司開(kāi)發(fā)的一種32位嵌入式操作系統(tǒng),主要應(yīng)用于掌上電腦,其對(duì)硬件要求不高,使得采用palm系統(tǒng)的設(shè)備體積較小巧,電池續(xù)航長(zhǎng)24。palm系統(tǒng)不但占用系統(tǒng)資源少,硬件要求不高,電池壽命長(zhǎng),而且系統(tǒng)簡(jiǎn)單易用,采用了觸控的操作界面,一個(gè)觸控筆可以完成幾乎所有操作,十分方便攜帶。不過(guò)它也有很多不完善的地方,如缺少一些常用基本功能,比如通訊功能和多媒體功能,中文產(chǎn)品也相對(duì)較少。1.3.2手機(jī)輸入法發(fā)展現(xiàn)狀文字輸入方式根據(jù)設(shè)備終端所采用的硬件,可分為數(shù)字鍵盤(pán)、全鍵盤(pán)及手寫(xiě)輸入三大類2413。早期的手機(jī)漢字輸入法,用手機(jī)數(shù)字鍵29分別代表26個(gè)英文字母,如數(shù)字鍵2代表“abc”三個(gè)字母14

32、15;在輸入時(shí),輸入2代表a,22代表b,222代表c。所以在輸入拼音的時(shí)候需要一一選擇需要的字母來(lái)組成拼音,然后根據(jù)拼音來(lái)選擇需要的文字。這種輸入法效率十分低的15。目前數(shù)字鍵盤(pán)輸入法雖然種類繁多,但主要市場(chǎng)份額基本上被t9、itap和字能(ezi)這三種輸入法所占領(lǐng)101617,其他輸入法的市場(chǎng)份額極少。這三款數(shù)字鍵盤(pán)輸入軟件,均提供拼音、筆畫(huà)、注音(臺(tái)灣地區(qū))三種輸入方式10。t9輸入法全稱t9智能輸入法,該輸入法是由語(yǔ)音技術(shù)、文字輸入和圖像解決方案提供商nuance通訊公司開(kāi)發(fā)的418,目前占有率最高。t9輸入法是針對(duì)移動(dòng)小型終端的文字輸入解決方案,以輸入字符高效快捷而著稱19。t9的

33、中文輸入包括簡(jiǎn)體中文和繁體中文,輸入方式包括筆畫(huà)、拼音以及注音。目前已支持漢語(yǔ)、英語(yǔ)、法語(yǔ)德語(yǔ)、意大利語(yǔ)等44種語(yǔ)言,中文字庫(kù)容量達(dá)9000多字17 19。字能輸入法20是由總部設(shè)在加拿大的字源咨詢技術(shù)有限公司和愛(ài)立信合作推出的。此輸入法具有20902個(gè)漢字的高容量字庫(kù),是t9輸入法字庫(kù)的兩倍多。該輸入法主要被早起的愛(ài)立信、阿爾卡特以及一些國(guó)產(chǎn)手機(jī)如聯(lián)想等采用。該輸入法支持拼音和筆畫(huà)兩種中文簡(jiǎn)體輸入方式,兩種輸入方式都具有聯(lián)想功能15。itap輸入法全稱itap智能按鍵輸入法,是摩托羅拉經(jīng)過(guò)潛心研究,在t9的基礎(chǔ)上發(fā)展起來(lái)的。摩托羅拉在美國(guó)加州設(shè)有專門(mén)的研究所,不斷地對(duì)itap輸入法軟件字庫(kù)進(jìn)

34、行更新,輸入法軟件支持20多種語(yǔ)言21,支持語(yǔ)言的種類比其他輸入法軟件都多。該輸入法還能夠根據(jù)最常用的聲、韻母組合和最頻繁使用的文字統(tǒng)計(jì)、聲調(diào)和詞語(yǔ)聯(lián)想等先進(jìn)技術(shù),實(shí)現(xiàn)簡(jiǎn)便、快捷的輸入17。國(guó)內(nèi)比較知名的手機(jī)輸入法開(kāi)發(fā)廠商主要有電訊、a4、搜狗和騰訊418,前兩家都是專門(mén)從事手機(jī)輸入法開(kāi)發(fā)的廠商,目前它們分別被百度和騰訊收購(gòu)。因?yàn)閲?guó)內(nèi)對(duì)中文的理解更深,也更加了解中文的輸入習(xí)慣,實(shí)際上國(guó)產(chǎn)輸入法在性能上不遜色于或優(yōu)于海外輸入法4。拼音輸入法比目前國(guó)外同類技術(shù)快29%至41%,筆畫(huà)輸入法比國(guó)外同類技術(shù)快40%至51%,音形組合輸入法比國(guó)外輸入法快近70%422。由于手機(jī)設(shè)備大部分是海外生產(chǎn)的,直接

35、捆綁了海外的輸入法,導(dǎo)致了國(guó)內(nèi)輸入法難以提高占有率,打開(kāi)市場(chǎng)。不過(guò)隨著手機(jī)系統(tǒng)的不斷開(kāi)放,例如android中完全開(kāi)源的手機(jī)系統(tǒng)出現(xiàn)后,用戶可以自行安裝輸入法,國(guó)產(chǎn)輸入法將會(huì)得到迅猛的發(fā)展。1.3 本文工作1)提出了一個(gè)適合android平臺(tái)的輸入法碼本設(shè)計(jì)方案合理的碼本設(shè)計(jì)對(duì)于輸入法來(lái)說(shuō)有著非常重要的作用 ,直接關(guān)系到輸入法的查詢性能、所需存儲(chǔ)空間等多個(gè)方面。一種輸入法,如果占用過(guò)多的存儲(chǔ)空間或者具有較差的輸入性能,均不利于用戶的使用。然而這兩個(gè)方面又是相互矛盾的,所以需要在輸入法的性能與資源占用之間進(jìn)行平衡。為了實(shí)現(xiàn)簡(jiǎn)繁通用,本文輸入法采用了unicode編碼,并對(duì)碼本進(jìn)行了壓縮。本文編碼

36、方案所需要的文件包括字索引文件、字碼本文件、詞索引文件、詞碼本文件。本文詳細(xì)介紹了該編碼方案,并從碼本的結(jié)構(gòu)、索引的結(jié)構(gòu)以及輸入法根據(jù)輸入碼檢索碼本的具體流程,對(duì)該編碼方案進(jìn)行了詳盡的闡述。2)分析了android輸入法框架,設(shè)計(jì)了一個(gè)基于android平臺(tái)的輸入系統(tǒng)android手機(jī)系統(tǒng)平臺(tái),自google公司2007年發(fā)布以來(lái),以其開(kāi)放性、硬件選擇的多樣性和對(duì)第三方開(kāi)發(fā)商較少的限制等各種因素,已經(jīng)成為最流行的手機(jī)操作系統(tǒng)之一。本文詳細(xì)介紹了android平臺(tái)的各個(gè)功能組件以及平臺(tái)框架結(jié)構(gòu)等。而從android平臺(tái)1.5版本以后,google更是開(kāi)放了android平臺(tái)輸入法框架(input

37、 method framework,imf),為android平臺(tái)的輸入法帶來(lái)了可擴(kuò)展性。為了能開(kāi)發(fā)出android平臺(tái)下的輸入法,本文對(duì)android平臺(tái)的輸入法框架進(jìn)行了詳細(xì)的介紹。本文首先介紹了android輸入法的生命周期以及它的幾個(gè)重用組成部分,包括:輸入法服務(wù),輸入法應(yīng)用和客戶端。然后又重點(diǎn)介紹了輸入法應(yīng)用的幾個(gè)重要組成。最后還羅列了根據(jù)android平臺(tái)輸入法框架中需要實(shí)現(xiàn)的幾個(gè)重要的類以及幾個(gè)重要的函數(shù)接口和這些接口的簡(jiǎn)要說(shuō)明。3)介紹了android平臺(tái)輸入系統(tǒng)的實(shí)現(xiàn)技術(shù)根據(jù)對(duì)android平臺(tái)輸入法框架的分析,本文在android平臺(tái)上實(shí)現(xiàn)了一款新的漢字輸入法。本文首先從輸

38、入法的邏輯處理、鍵盤(pán)視圖設(shè)計(jì)、界面設(shè)計(jì)以及消息的流轉(zhuǎn)以及處理等多方面,詳細(xì)闡述了該輸入法的設(shè)計(jì)與實(shí)現(xiàn)的過(guò)程,其次又分析介紹了本文所設(shè)計(jì)的輸入法檢索碼本的具體流程。1.3 論文組織本文共分七章,論文的結(jié)構(gòu)和各個(gè)章節(jié)的主要內(nèi)容如下:第一章,為全文概述,首先介紹了課題的研究背景與意義以及本文的工作安排。第二章,介紹了與設(shè)計(jì)目標(biāo)相關(guān)的基礎(chǔ)工作,包括簡(jiǎn)單介紹android平臺(tái)及其框架和android開(kāi)發(fā)平臺(tái)的搭建,介紹縱橫輸入法的相關(guān)基礎(chǔ)知識(shí),并分析其優(yōu)缺點(diǎn),最后還全面介紹了android手機(jī)平臺(tái)輸入法的生命周期及其重要組成部分等,羅列了android平臺(tái)輸入法框架中,所需實(shí)現(xiàn)的幾個(gè)重要類及接口。第三章

39、,介紹了縱橫輸入法碼本的特點(diǎn),并從字詞碼本結(jié)構(gòu)、索引結(jié)構(gòu)以及碼本檢索流程等多方面,對(duì)縱橫輸入法的編碼進(jìn)行了具體的描述。第四章,先從邏輯處理、鍵盤(pán)界面、候選字詞界面、消息流轉(zhuǎn)、以及候選字詞查找等多方面對(duì)該輸入法進(jìn)行了設(shè)計(jì)。然后從鍵盤(pán)的布局、輸入法的初始化、消息的捕獲與傳遞、消息的處理以及數(shù)據(jù)的查詢與反饋等多方面,詳細(xì)地介紹了android平臺(tái)上縱橫輸入法的實(shí)現(xiàn)流程。第五章,詳細(xì)介紹了該漢字輸入法的設(shè)置、安裝、使用與卸載。第六章,總結(jié)全文,并展望下一步的研究工作。第二章 相關(guān)工作基礎(chǔ)2.1 android平臺(tái)2.1.1 android平臺(tái)簡(jiǎn)介隨著通信行業(yè)的快速發(fā)展,手機(jī)已經(jīng)成為人們生活中的必需品,

40、手機(jī)的功能也越來(lái)越完善4。目前主要的手機(jī)智能操作系統(tǒng)包括:symbian os, windows phone, linux, palm os 和 android23。由于操作系統(tǒng)的開(kāi)放性、硬件選擇的多樣性和對(duì)第三方開(kāi)發(fā)商較少的限制等因素,android系統(tǒng)已經(jīng)成為最流行的手機(jī)操作系統(tǒng)之一,具有很大的發(fā)展前景。android 本來(lái)的意思是機(jī)器人,同時(shí)它還是google 在2007年聯(lián)合無(wú)線應(yīng)用與移動(dòng)技術(shù)領(lǐng)域的帶頭企業(yè)一起構(gòu)成的手機(jī)聯(lián)盟open handset alliance 宣布的依靠linux 平臺(tái)的開(kāi)源手機(jī)操作系統(tǒng)的名稱24。該系統(tǒng)包含了操作系統(tǒng)、用戶界面、中間件和應(yīng)用程序,是首個(gè)為移動(dòng)終

41、端打造的真正意義上的開(kāi)放和完整的移動(dòng)移動(dòng)設(shè)備綜合平臺(tái)。google 重新設(shè)計(jì)了java 虛擬機(jī)和系統(tǒng),使得android 的java 應(yīng)用更接近于底層系統(tǒng),效率更高;另外使用虛擬機(jī)技術(shù)使得android 的應(yīng)用在被監(jiān)控的情況下運(yùn)行,安全性更高。與windows ce ,iphone os ,symbian 等不同,android 公開(kāi)源代碼,支持第三方軟件的加入,消除了任何以往阻礙移動(dòng)產(chǎn)業(yè)創(chuàng)新的專有權(quán)障礙。正是由于其開(kāi)放性,google android 手機(jī)能夠加載很多個(gè)性化的東西,比如防火墻、即時(shí)通信軟件、office閱讀器、輸入法等各種在電腦上安裝使用的軟件。無(wú)論是娛樂(lè)還是商業(yè)應(yīng)用,智能手

42、機(jī)的功能都能在強(qiáng)大的第三方軟件的支持下獲得無(wú)限的擴(kuò)展25。豐富的android 應(yīng)用也使其手機(jī)功能更加強(qiáng)大,這加速了電腦與手機(jī)的融合,也加速了后pc 時(shí)代的到來(lái)。android操作系統(tǒng)應(yīng)用了開(kāi)源社區(qū)的很多優(yōu)秀成果,并做了大量的優(yōu)化和豐富的擴(kuò)充。android操作系統(tǒng)主要包含了以下功能組件26:1. 經(jīng)google 針對(duì)移動(dòng)設(shè)備剪裁和優(yōu)化的linux 內(nèi)核。2. 由google 重新實(shí)現(xiàn)的java 虛擬機(jī) dalvik vm。3. 大量的函數(shù)庫(kù)和服務(wù),如瀏覽器引擎webkit ,數(shù)據(jù)庫(kù) sqlite。4. 常用的應(yīng)用程序,如撥號(hào)程序和通訊錄等。5. 一套完整的sdk(software devel

43、opment kit ),提供了使用java語(yǔ)言進(jìn)行android應(yīng)用開(kāi)發(fā)的api 類庫(kù)和工具集(包括android 模擬器和eclipse ide 下的開(kāi)發(fā)工具插件以及一組用于在模擬器和終端設(shè)備上打包、安裝、調(diào)試和測(cè)試的應(yīng)用程序的工具)。6. 經(jīng)過(guò)優(yōu)化的輕量級(jí)2d 和3d 圖形引擎,用于支持各種游戲的開(kāi)發(fā)。7. 提供常見(jiàn)的音頻、視頻和圖片格式支持的底層媒體庫(kù)。8. 用于支持gsm 、藍(lán)牙、3g 、wifi 、攝像頭、gps 和各種輸入設(shè)備的驅(qū)動(dòng)程序。2.1.2 android 平臺(tái)框架android 操作系統(tǒng)自頂向下分為4層,分別為應(yīng)用層、應(yīng)用框架層、函數(shù)庫(kù)和虛擬機(jī)層以及l(fā)inux內(nèi)核層 2

44、7。1. linux 內(nèi)核層位于硬件和其它軟件層之間,采用yaffs2 文件系統(tǒng)28,是基于linux version 2.6內(nèi)核來(lái)開(kāi)發(fā)的,包含了虛擬cpu 和android 運(yùn)行所需要的特定的驅(qū)動(dòng)代碼,主要作用為提供系統(tǒng)的如安全管理、內(nèi)存機(jī)制、進(jìn)程管理等底層服務(wù),為系統(tǒng)運(yùn)行提供基礎(chǔ)性的支持30。2. android 運(yùn)行時(shí)庫(kù)和其他庫(kù)層,包含一組核心庫(kù)和dalvik 虛擬機(jī),核心庫(kù)存為android 提供了大部分java語(yǔ)言核心庫(kù)。android具有豐富的庫(kù)類支持且大部分為開(kāi)源代碼,如sqlite 、webkit 、opengl等,例如sqlite數(shù)據(jù)庫(kù),體積小只有250kb但支持?jǐn)?shù)據(jù)庫(kù)大小至

45、2tb,提供了對(duì)事務(wù)功能和并發(fā)處理的支持,而且比目前流行的大多數(shù)數(shù)據(jù)庫(kù)運(yùn)行速度快29。該層可以通過(guò)java本地調(diào)用jni(java native interface)的接口函數(shù)來(lái)實(shí)現(xiàn)與上層之間的通信31。3. 應(yīng)用框架層包含了所有開(kāi)發(fā)所用的sdk類庫(kù)和某些未公開(kāi)接口的類庫(kù)。該層為android 開(kāi)發(fā)人員提供了訪問(wèn)框架應(yīng)用程序接口的全部權(quán)限,使開(kāi)發(fā)人員能方便并安全地訪問(wèn)系統(tǒng)功能和其他應(yīng)用程序所發(fā)布的功能供其他程序使用,并發(fā)布自己應(yīng)用程序的功能。通過(guò)采用結(jié)構(gòu)化設(shè)計(jì),大大簡(jiǎn)化了組件之間的重用,提高了開(kāi)發(fā)者的開(kāi)發(fā)效率。應(yīng)用框架層為開(kāi)發(fā)者提供了大量的組件和服務(wù),如:豐富和可擴(kuò)展的視圖、內(nèi)容提供器、資源管

46、理器、通知管理器、活動(dòng)管理器和位置管理器等。4. 應(yīng)用層包含了android本身的一些核心應(yīng)用程序,例如郵件客戶端,短信程序,日歷程序,地圖,瀏覽器,通訊錄等等,還有一些基于google android 的sdk 開(kāi)發(fā)的第三方應(yīng)用程序。目前所有的應(yīng)用程序都是由java語(yǔ)言開(kāi)發(fā)的12。android 平臺(tái)結(jié)構(gòu)圖如圖4.1所示。圖2.1 android平臺(tái)框架2.1.3 android 平臺(tái)開(kāi)發(fā)環(huán)境搭建android應(yīng)用程序主要的開(kāi)發(fā)語(yǔ)言為java 語(yǔ)言,主要的集成開(kāi)發(fā)環(huán)境為eclipse軟件,并且google 提供了在eclipse下快速開(kāi)發(fā)android 應(yīng)用程序的插件adt 。adt 是an

47、droid development tools 的縮寫(xiě),它是集成到eclipse 上的一個(gè)插件,能夠提供一個(gè)強(qiáng)大的集成開(kāi)發(fā)環(huán)境來(lái)開(kāi)發(fā)android 應(yīng)用。搭建android開(kāi)發(fā)平臺(tái)的流程如下:1. 軟件準(zhǔn)備a、 進(jìn)入java官網(wǎng)( )頁(yè)面下載jdk1.6+;b、 進(jìn)入eclipse官網(wǎng)(/downloads/ )下載eclipse 3.3(europa); c、 進(jìn)入google android 官網(wǎng)( )下載android sdk;2. 安裝集成平臺(tái)和配置java環(huán)境變量a、 安裝jdk 并配置好java 環(huán)境變量b、 安裝eclipse將下載的ec

48、lipse壓縮包解壓到相應(yīng)的安裝目錄即可。3. 配置android 平臺(tái)開(kāi)發(fā)環(huán)境a、 安裝android development tools (adt )插件啟動(dòng)eclipse ,如果是eclipse3.5 或eclipse3.6 選擇help ->install new software. ,點(diǎn)擊add ,如果eclipse3.4及以下版本菜單是help ->software updates. ,點(diǎn)擊add site 準(zhǔn)備安裝插件。在location 中輸入android adt插件在線下載地址:https:/dl- ,點(diǎn)擊ok按鈕就可以下載安裝了。b、 應(yīng)用android sd

49、k到eclipse在eclipse 工具欄中,選擇:window -> preferences.左邊菜單中選中android,在右邊瀏覽框中選擇sdk的解壓目錄作為 sdk location,點(diǎn)擊apply ,然后點(diǎn)擊ok按鈕即可。為了便于模擬和測(cè)試應(yīng)用程序,android sdk自帶一個(gè)移動(dòng)模擬設(shè)備可以在電腦上運(yùn)行的虛擬設(shè)備。模擬器允許開(kāi)發(fā)者開(kāi)發(fā)的應(yīng)用程序通過(guò)android 平臺(tái)服務(wù),調(diào)用其他程序、訪問(wèn)網(wǎng)絡(luò)、播放音頻和視頻、保存和接收數(shù)據(jù)、通知用戶、渲染圖像過(guò)渡和場(chǎng)景等功能。通過(guò)eclipse的“窗體”(windows)菜單->“android虛擬設(shè)備管理器”(android a

50、vd manager)進(jìn)入android虛擬設(shè)備管理界面,然后點(diǎn)擊“new”按鈕彈出創(chuàng)建avd對(duì)話框,在該窗口中添加name(avd名稱)、target(android版本指定)、sdk大小和外觀特征,即可完成對(duì)android模擬器的創(chuàng)建工作。通過(guò)eclipse的“窗體”(windows)菜單->“android虛擬設(shè)備管理器”(android avd manager)進(jìn)入android虛擬設(shè)備管理界面,選擇要啟動(dòng)的emulator,然后點(diǎn)擊“start”按鈕,進(jìn)入emulator啟動(dòng)界面,點(diǎn)擊“l(fā)aunch”按鈕,完成所選模擬器的啟動(dòng)后,即可進(jìn)行相關(guān)模擬測(cè)試程序。2.2 縱橫輸入法2.

51、2.1 縱橫輸入法簡(jiǎn)介縱橫輸入法是由香港蘇浙同鄉(xiāng)會(huì)主席周忠繼先生所發(fā)明,由蘇州大學(xué)縱橫漢字信息技術(shù)研究所研制。經(jīng)過(guò)多年不斷地完善,在北京、上海、江蘇、浙江、廣東、海南、香港、澳門(mén)等地大受歡迎。 在縱橫碼中根據(jù)漢字的字形,采用0到9十個(gè)數(shù)字對(duì)漢字進(jìn)行編碼。縱橫碼中規(guī)定了十種基本筆形,分別用0到9十個(gè)數(shù)字對(duì)其進(jìn)行編碼。 一個(gè)漢字的基本編碼方法為:將漢字看成一個(gè)方塊字,取漢字四個(gè)角的筆形代碼作為一個(gè)漢字的編碼,輸入法規(guī)定單字的輸入碼最多為四個(gè)數(shù)字,最少為一個(gè)數(shù)字。 詞組的輸入碼根據(jù)組成詞組的單字的輸入碼來(lái)取,詞組的輸入碼最多為六個(gè)數(shù)字,最少為一個(gè)數(shù)字。 2.2.2 縱橫輸入法優(yōu)點(diǎn)現(xiàn)在手機(jī)上

52、較有影響力的輸入法有筆畫(huà)類輸入法和拼音類輸入法。 拼音輸入法雖然易學(xué)卻很難普及,不適合普通話不標(biāo)準(zhǔn)不熟悉漢語(yǔ)拼音者學(xué)習(xí),在方言地區(qū)推廣就更困難。 一般的筆畫(huà)類輸入法又存在重碼率高,詞庫(kù)較小、標(biāo)點(diǎn)符號(hào)輸入不方便、輔助用戶使用功能較弱等缺點(diǎn),影響用戶輸入效率。 縱橫輸入法克服了以上幾種輸入法的缺點(diǎn),詞庫(kù)很大、標(biāo)點(diǎn)符號(hào)輸入方便。采用gbk大字符集,既支持簡(jiǎn)體字輸入又支持繁體字輸入,具有簡(jiǎn)單易學(xué)、簡(jiǎn)繁通用、詞組豐富、功能強(qiáng)大,標(biāo)點(diǎn)符號(hào)輸入方便,還可以對(duì)重碼字詞進(jìn)行調(diào)頻,具有輔助用戶使用等優(yōu)點(diǎn)32。2.3 輸入法框架介紹2.3.1 輸入法框架簡(jiǎn)介自android平臺(tái)1.5版本以后,google開(kāi)放了an

53、droid平臺(tái)輸入法框架(input method framework,imf),imf是android平臺(tái)的特色設(shè)計(jì)。它的出現(xiàn)大大推動(dòng)了不帶實(shí)體鍵盤(pán)的設(shè)備的誕生。同時(shí),android平臺(tái)輸入法框架也給出了輸入法的開(kāi)發(fā)所需要的接口,為android平臺(tái)的輸入法提供了可擴(kuò)展性。2.3.2 輸入法框架組成一個(gè)輸入法框架結(jié)構(gòu)中包含三個(gè)主要的部分:輸入法服務(wù),負(fù)責(zé)管理各部分的交互,管理輸入法應(yīng)用,其中包括輸入法的安裝、注冊(cè)、激活等。主要工作由inputmethdomanagerservice(imms)完成。它是一個(gè)客戶端api,存在于各個(gè)應(yīng)用程序的上下文(context)中,用來(lái)溝通管理所有進(jìn)程間交

54、互的全局系統(tǒng)服務(wù)。輸入法應(yīng)用 ,具體處理用戶輸入行為的應(yīng)用程序,實(shí)現(xiàn)一個(gè)允許用戶生成文本的獨(dú)立交互模塊。系統(tǒng)綁定一個(gè)當(dāng)前的輸入法。使其創(chuàng)建和生成,決定輸入法何時(shí)隱藏或者顯示它的ui。同一時(shí)間只能有一個(gè)輸入法應(yīng)用運(yùn)行。為了能夠在android的輸入法框架中良好的運(yùn)行,所有的輸入法應(yīng)用都需要繼承特定的服務(wù)。客戶端,是指具有文字編輯功能的系統(tǒng)控件(如edittext),是平臺(tái)內(nèi)部輸入法應(yīng)用人機(jī)交互的起點(diǎn),是用戶與輸入法應(yīng)用進(jìn)行交互的渠道??蛻舳丝丶c輸入法服務(wù)和輸入法應(yīng)用都有交互操作。當(dāng)客戶端控件接受到焦點(diǎn)時(shí),控件啟動(dòng)輸入法應(yīng)用并顯示鍵盤(pán);而失去焦點(diǎn)時(shí),則隱藏鍵盤(pán)。同時(shí)能夠傳遞控件狀態(tài),接受并顯示輸

55、入法應(yīng)用反饋的輸入文字。客戶端通過(guò)輸入法管理器控制輸入焦點(diǎn)和ime的狀態(tài)。一次只能有一個(gè)客戶端使用輸入法。輸入法整體框架圖2.2所示。圖2.2 輸入法的總體框架2.3.3 輸入法應(yīng)用組成android 平臺(tái)的輸入法框架(input method framework,imf)中,最主要的是輸入法應(yīng)用(inputmethodservice),他繼承于abstract input methodservice 。inputmethodservice主要由以下幾個(gè)組件構(gòu)成,其中包括完成輸入法的相關(guān)ui,和文字的輸出:1. 軟鍵盤(pán)視圖(soft input view)這是軟鍵盤(pán)的輸入?yún)^(qū)域,主要完成在觸摸屏

56、下和用戶的交互輸入。oncreateinputview()被調(diào)用來(lái)進(jìn)行軟鍵盤(pán)視圖的實(shí)例化;onevaluateinputviewshown() 決定是否顯示軟鍵盤(pán)視圖;當(dāng)狀態(tài)改變的時(shí)候,調(diào)用updateinputviewshown()來(lái)重新決策是否顯示軟鍵盤(pán)視圖。2. 候選字視圖(candidates view)candidates view也是輸入法中一個(gè)相當(dāng)重要的組件。當(dāng)用戶輸入字符的時(shí)候,顯示相關(guān)的列表。停止輸入的時(shí)候,有會(huì)自動(dòng)消失。oncreatecandidatesview()來(lái)實(shí)例化自己的輸入法。和軟鍵盤(pán)視圖不同的是,候選字視圖對(duì)整個(gè)ui布局不會(huì)產(chǎn)生影響。setcandidatesviewshown(boolean) 用來(lái)設(shè)置是否顯示候選字視圖。3. 輸出字符字符的輸出是inputmethodservice最核心的功能,輸入法通過(guò) inputconnection 從imf來(lái)獲得字符輸出。并且通過(guò)不同的編輯器(editor)類型來(lái)獲取相應(yīng)的支持。通過(guò) onfinishinput()和onstartinput(editorinfo, boolean )方法來(lái)進(jìn)行輸入目標(biāo)的切換。 另外,oninitializeinte

溫馨提示

  • 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ù)網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論