freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

android平臺中文輸入法的設計和實現(xiàn)碩士學位論文(編輯修改稿)

2025-07-16 13:56 本頁面
 

【文章內(nèi)容簡介】 inux 內(nèi)核層位于硬件和其它軟件層之間,采用YAFFS2 文件系統(tǒng)[28],是基于Linux Version ,包含了虛擬CPU 和Android 運行所需要的特定的驅(qū)動代碼,主要作用為提供系統(tǒng)的如安全管理、內(nèi)存機制、進程管理等底層服務,為系統(tǒng)運行提供基礎性的支持[30]。2. Android 運行時庫和其他庫層,包含一組核心庫和Dalvik 虛擬機,核心庫存為Android 提供了大部分Java語言核心庫。Android具有豐富的庫類支持且大部分為開源代碼,如SQLite 、WebKit 、OpenGL等,例如SQLite數(shù)據(jù)庫,體積小只有250KB但支持數(shù)據(jù)庫大小至2TB,提供了對事務功能和并發(fā)處理的支持,而且比目前流行的大多數(shù)數(shù)據(jù)庫運行速度快[29]。該層可以通過Java本地調(diào)用JNI(Java Native Interface)的接口函數(shù)來實現(xiàn)與上層之間的通信[31]。3. 應用框架層包含了所有開發(fā)所用的SDK類庫和某些未公開接口的類庫。該層為Android 開發(fā)人員提供了訪問框架應用程序接口的全部權限,使開發(fā)人員能方便并安全地訪問系統(tǒng)功能和其他應用程序所發(fā)布的功能供其他程序使用,并發(fā)布自己應用程序的功能。通過采用結(jié)構化設計,大大簡化了組件之間的重用,提高了開發(fā)者的開發(fā)效率。應用框架層為開發(fā)者提供了大量的組件和服務,如:豐富和可擴展的視圖、內(nèi)容提供器、資源管理器、通知管理器、活動管理器和位置管理器等。4. 應用層包含了Android本身的一些核心應用程序,例如郵件客戶端,短信程序,日歷程序,地圖,瀏覽器,通訊錄等等,還有一些基于Google Android 的SDK 開發(fā)的第三方應用程序。目前所有的應用程序都是由Java語言開發(fā)的[12]。Android 。 Android平臺框架 Android 平臺開發(fā)環(huán)境搭建Android應用程序主要的開發(fā)語言為Java 語言,主要的集成開發(fā)環(huán)境為Eclipse軟件,并且Google 提供了在Eclipse下快速開發(fā)Android 應用程序的插件ADT 。ADT 是Android Development Tools 的縮寫,它是集成到Eclipse 上的一個插件,能夠提供一個強大的集成開發(fā)環(huán)境來開發(fā)Android 應用。搭建Android開發(fā)平臺的流程如下:1. 軟件準備a、 進入Java官網(wǎng)()+;b、 進入Eclipse官網(wǎng)()下載Eclipse (Europa); c、 進入Google Android 官網(wǎng)()下載Android SDK;2. 安裝集成平臺和配置Java環(huán)境變量a、 安裝JDK 并配置好Java 環(huán)境變量b、 安裝Eclipse將下載的Eclipse壓縮包解壓到相應的安裝目錄即可。3. 配置Android 平臺開發(fā)環(huán)境a、 安裝Android Development Tools (ADT )插件啟動Eclipse , 選擇Help Install New Software... ,點擊Add , Software Updates... ,點擊Add Site 準備安裝插件。在Location 中輸入Android ADT插件在線下載地址:,點擊OK按鈕就可以下載安裝了。b、 應用Android SDK到Eclipse在Eclipse 工具欄中,選擇:Window Preferences...左邊菜單中選中android,在右邊瀏覽框中選擇sdk的解壓目錄作為 sdk location,點擊Apply ,然后點擊OK按鈕即可。為了便于模擬和測試應用程序,Android SDK自帶一個移動模擬設備——可以在電腦上運行的虛擬設備。模擬器允許開發(fā)者開發(fā)的應用程序通過Android 平臺服務,調(diào)用其他程序、訪問網(wǎng)絡、播放音頻和視頻、保存和接收數(shù)據(jù)、通知用戶、渲染圖像過渡和場景等功能。通過Eclipse的“窗體”(Windows)菜單“Android虛擬設備管理器”(Android AVD manager)進入Android虛擬設備管理界面,然后點擊“New”按鈕彈出創(chuàng)建AVD對話框,在該窗口中添加Name(AVD名稱)、Target(Android版本指定)、SDK大小和外觀特征,即可完成對Android模擬器的創(chuàng)建工作。通過Eclipse的“窗體”(Windows)菜單“Android虛擬設備管理器”(Android AVD manager)進入Android虛擬設備管理界面,選擇要啟動的Emulator,然后點擊“start”按鈕,進入Emulator啟動界面,點擊“l(fā)aunch”按鈕,完成所選模擬器的啟動后,即可進行相關模擬測試程序。 縱橫輸入法 縱橫輸入法簡介縱橫輸入法是由香港蘇浙同鄉(xiāng)會主席周忠繼先生所發(fā)明,由蘇州大學縱橫漢字信息技術研究所研制。經(jīng)過多年不斷地完善,在北京、上海、江蘇、浙江、廣東、海南、香港、澳門等地大受歡迎。 在縱橫碼中根據(jù)漢字的字形,采用0到9十個數(shù)字對漢字進行編碼??v橫碼中規(guī)定了十種基本筆形,分別用0到9十個數(shù)字對其進行編碼。 一個漢字的基本編碼方法為:將漢字看成一個方塊字,取漢字四個角的筆形代碼作為一個漢字的編碼,輸入法規(guī)定單字的輸入碼最多為四個數(shù)字,最少為一個數(shù)字。 詞組的輸入碼根據(jù)組成詞組的單字的輸入碼來取,詞組的輸入碼最多為六個數(shù)字,最少為一個數(shù)字。 縱橫輸入法優(yōu)點現(xiàn)在手機上較有影響力的輸入法有筆畫類輸入法和拼音類輸入法。 拼音輸入法雖然易學卻很難普及,不適合普通話不標準不熟悉漢語拼音者學習,在方言地區(qū)推廣就更困難。 一般的筆畫類輸入法又存在重碼率高,詞庫較小、標點符號輸入不方便、輔助用戶使用功能較弱等缺點,影響用戶輸入效率。 縱橫輸入法克服了以上幾種輸入法的缺點,詞庫很大、標點符號輸入方便。采用GBK大字符集,既支持簡體字輸入又支持繁體字輸入,具有簡單易學、簡繁通用、詞組豐富、功能強大,標點符號輸入方便,還可以對重碼字詞進行調(diào)頻,具有輔助用戶使用等優(yōu)點[32]。 輸入法框架介紹 輸入法框架簡介,Google開放了Android平臺輸入法框架(Input Method Framework,IMF),IMF是Android平臺的特色設計。它的出現(xiàn)大大推動了不帶實體鍵盤的設備的誕生。同時,Android平臺輸入法框架也給出了輸入法的開發(fā)所需要的接口,為Android平臺的輸入法提供了可擴展性。 輸入法框架組成一個輸入法框架結(jié)構中包含三個主要的部分:輸入法服務,負責管理各部分的交互,管理輸入法應用,其中包括輸入法的安裝、注冊、激活等。主要工作由InputMethdoManagerService(IMMS)完成。它是一個客戶端API,存在于各個應用程序的上下文(context)中,用來溝通管理所有進程間交互的全局系統(tǒng)服務。輸入法應用 ,具體處理用戶輸入行為的應用程序,實現(xiàn)一個允許用戶生成文本的獨立交互模塊。系統(tǒng)綁定一個當前的輸入法。使其創(chuàng)建和生成,決定輸入法何時隱藏或者顯示它的UI。同一時間只能有一個輸入法應用運行。為了能夠在Android的輸入法框架中良好的運行,所有的輸入法應用都需要繼承特定的服務??蛻舳?,是指具有文字編輯功能的系統(tǒng)控件(如EditText),是平臺內(nèi)部輸入法應用人機交互的起點,是用戶與輸入法應用進行交互的渠道。客戶端控件與輸入法服務和輸入法應用都有交互操作。當客戶端控件接受到焦點時,控件啟動輸入法應用并顯示鍵盤;而失去焦點時,則隱藏鍵盤。同時能夠傳遞控件狀態(tài),接受并顯示輸入法應用反饋的輸入文字??蛻舳送ㄟ^輸入法管理器控制輸入焦點和IME的狀態(tài)。一次只能有一個客戶端使用輸入法。 輸入法的總體框架 輸入法應用組成Android 平臺的輸入法框架(Input Method Framework,IMF)中,最主要的是輸入法應用(InputMethodService),他繼承于Abstract Input MethodService 。InputMethodService主要由以下幾個組件構成,其中包括完成輸入法的相關UI,和文字的輸出:1. 軟鍵盤視圖(Soft Input View)這是軟鍵盤的輸入?yún)^(qū)域,主要完成在觸摸屏下和用戶的交互輸入。onCreateInputView()被調(diào)用來進行軟鍵盤視圖的實例化;onEvaluateInputViewShown() 決定是否顯示軟鍵盤視圖;當狀態(tài)改變的時候,調(diào)用updateInputViewShown()來重新決策是否顯示軟鍵盤視圖。2. 候選字視圖(Candidates View)Candidates View也是輸入法中一個相當重要的組件。當用戶輸入字符的時候,顯示相關的列表。停止輸入的時候,有會自動消失。onCreateCandidatesView()來實例化自己的輸入法。和軟鍵盤視圖不同的是,候選字視圖對整個UI布局不會產(chǎn)生影響。setCandidatesViewShown(boolean) 用來設置是否顯示候選字視圖。3. 輸出字符字符的輸出是InputMethodService最核心的功能,輸入法通過 InputConnection 從IMF來獲得字符輸出。并且通過不同的編輯器(editor)類型來獲取相應的支持。通過 onFinishInput()和onStartInput(EditorInfo, boolean )方法來進行輸入目標的切換。另外,onInitializeInterface()用于InputMethodService在執(zhí)行的過程中配置的改變; onBindInput()切換一個新的輸入通道; onStartInput(EditorInfo, boolean)處理一個新的輸入。 輸入法消息流轉(zhuǎn)機制輸入法框架包括客戶端、輸入法服務和輸入法應用三部分組成。輸入法框架中消息的流轉(zhuǎn)機制為:當客戶端獲得焦點,啟動輸入法,創(chuàng)建一個連接類型對象,以實現(xiàn)輸入法框架各個層次間信息的傳輸。該連接類型實現(xiàn)了InputConnection接口。 輸入法消息流轉(zhuǎn)InputConnection接口是輸入法框架(IMF)里面一個重要的接口,它實現(xiàn)了BaseInputConnection和InputConnectionWrapper上層的接口,主要用于應用程序和InputMethod之間通信的通道,可以實現(xiàn)包括讀取光標周圍的輸入,向文本框中輸入文本以及給應用程序發(fā)送各種按鍵事件。其中接口InputMethod是AbstractInputMethodService和InputMethodService的上層接口,可以產(chǎn)生各種按鍵事件和各種字符文本??蛻舳送ㄟ^InputConnection將輸入碼傳給輸入法應用后,輸入法應用對輸入碼進行相關的處理。當輸入法應用對輸入碼處理完畢后,需要將處理后得到的文字等數(shù)據(jù)內(nèi)容,反饋給客戶端控件??蛻舳瞬豢芍苯釉L問輸入法程序,只可以通過某些輸入控件訪問InputMethodSession接口。每個客戶端創(chuàng)建一個接口實例,只有與激活客戶相關聯(lián)的會話的調(diào)用才會被輸入法(IME)處理。這是通過輸入法(IME)的 AbstractInputMethodService來執(zhí)行,由輸入法(IME)顯式的處理,而輸入法(IME)正是InputMethodSession的自定義實現(xiàn)。InputMethodSession是輸入法應用提供給每個客戶端的,可安全地暴露在應用程序中的接口。應用程序通常不自己使用本接口,而是依靠TextView和EditText等提供的標準進行交互。InputMethodSession接口需要由InputMethodService和 InputMethodSessionImpl 實現(xiàn)。 輸入法生命周期輸入法是用戶、應用程序之間的交互的渠道,所有的輸入法應用都需要繼承特定的Android平臺提供的服務。Android平臺的輸入法框架為輸入法應用定義了一個基類InputMethodService, InputMethodService提供了一個輸入法的標準實現(xiàn)流程,定義了輸入法生命周期內(nèi)的重要函數(shù),以方便開發(fā)人員對Android輸入法進行擴展。 Android 輸入法生命周期具體為:178。 當用戶點擊客戶端輸入控件(如editor)時,客戶端控件獲得焦點,InputMethodService啟動,調(diào)用其onCreate() 函數(shù)。該函數(shù)在輸入法第一次啟動的時候被調(diào)用,用來做初始化的設置;178。 調(diào)用onCreateInputView() 函數(shù),在該函數(shù)中創(chuàng)建鍵盤視圖(KeyboardView)并返回;178。 調(diào)用onCreateCandidatesView()函數(shù),在該函數(shù)中創(chuàng)建候選字視圖(Candidates View)實現(xiàn)并返回;178。 調(diào)用onStartInput ()函數(shù),開始接收并處理輸入內(nèi)容;178。 輸入結(jié)束后調(diào)用onFinishInput()函數(shù)來結(jié)束當前的輸入;178。 如果移動到下一個輸入框則重復調(diào)用onStartInputView和onFinishInput函數(shù);178。 在輸入法關閉的時候調(diào)用onDestroy() 函數(shù)。 輸入法主要的類和函數(shù)在Android輸入法開發(fā)過程中,下面三個類的實現(xiàn)比較重要:InputMethodService類:提供了很多的輸入法的基礎實現(xiàn),管理狀態(tài)的條款、輸入法的可見度、與當前可見的Activity溝通;CandidateView類:提供候選字選擇視圖,直接繼承于View。負責顯示軟鍵盤上面的那個候選區(qū)域。LatinKeyboard類:軟鍵盤類,直接繼承與Keyboard類。負責解析并保存鍵盤布局,并提供選詞算法,供程序運行當中使用。其中鍵盤布局是以XML文件存放在資源當中的。Android的輸入法服務,通過一些接口函數(shù)與系統(tǒng)進行交互,在這些接口中,主要接口是InputMethodService 。它提供了一個輸入法的標準實現(xiàn),開發(fā)輸入法時可以參照和自定義該實現(xiàn)。 InputMethodService接口提供的函數(shù)主要接口函數(shù)說明onInitializeInterface進行UI的初始化,創(chuàng)建和修改時調(diào)用此接口onBinndInput在另外的客
點擊復制文檔內(nèi)容
高考資料相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1