版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
基于Android的移動終端應用程序開發(fā)與研究打開文本圖片集摘要:近幾年,移動互聯(lián)在通信產(chǎn)業(yè)中異軍突起,使得搭載了移動操作系統(tǒng)的智能手機迅速占領(lǐng)了市場。移動設(shè)備的功能已不僅僅局限于通話,更成為了移動終端接入了互聯(lián)網(wǎng)。Android平臺由于其開放性,迅速成為了主流的移動智能系統(tǒng)。智能手機的快速普及,對優(yōu)質(zhì)移動應用程序的需求也越來越強烈。通過實際開發(fā)一款移動應用程序為例,研究Android平臺的核心架構(gòu)和關(guān)鍵技術(shù),解決常見問題、提高用戶體驗,最后對移動互聯(lián)應用產(chǎn)業(yè)的未來前景做了總結(jié)和展望。關(guān)鍵詞:Android;移動終端;系統(tǒng)開發(fā)口1概述智能移動設(shè)備是互聯(lián)網(wǎng)與移動通信相結(jié)合的產(chǎn)物,不僅可以進行常規(guī)的通訊服務(wù),還可以接入互聯(lián)網(wǎng)即時查詢信息。在移動智能操作系統(tǒng)領(lǐng)域中Android平臺占有極大的市場份額,通過搭載大量的移動應用程序,智能手機具備了極其強大的功能。由于Android平臺的開放性,在智能手機和平板電腦的市場中占有相當大的份額。智能移動終端的方便、快捷性,使得人們在衣食住行上越來越依賴智能手機。2Android平臺的系統(tǒng)構(gòu)架口Android是一個開放的包含了眾多源代碼的軟件系統(tǒng)。它的系統(tǒng)構(gòu)架一共分為四個層次:第一層,主要包括Linux操作系統(tǒng)及應用;第二層,主要包括本地代碼框架;第三層,包括JAVA框架,第四層,包括JAVA應用程序。如圖1所示。Linux使用第一層和第二層的分界線劃分系統(tǒng)內(nèi)外核空間。除第一層屬于內(nèi)核空間外,其它三層都為外核空間。在第二層和第三層之間的交界處放置本地框架和JAVA框架代碼的接口。由于第三層以下的系統(tǒng)框架內(nèi)容不可見,系統(tǒng)開發(fā)的過程主要針對第四層的系統(tǒng)API,第三層和第四層的交界處是API的接口。口3Android應用程序開發(fā)的關(guān)鍵技術(shù)口3.1界面布局開發(fā)人員需要通過設(shè)計和制作靜態(tài)界面將信息展示給用戶。視圖組件(view)、視圖容器(viewGroup)和布局管理(Lay-out)被稱為靜態(tài)界面三要素。1)視圖組件(view)和視圖容器(viewGroup)口在移動終端中所看到的應用程序用戶界面是由View類和ViewGroup類組成的,View類構(gòu)成了5組件的基礎(chǔ),可以對布局實現(xiàn)多種功能,如繪圖、焦點變換、用戶交互等。ViewGroup類View類的子類,可包含若干個UI組件???)布局管理(Layout)口在開發(fā)過程中,各個組件排列方式的組織和管理是通過布局管理(Layout)實現(xiàn)的,常見的布局有四種:線性布局、相對布局、表格布局和絕對布局。3)事件處理機制Android手機基本都配有觸摸屏,當點擊屏幕上應用程序的某一控件時,控件會產(chǎn)生響應,事件處理檄制在這里就發(fā)揮了作用。Android的事件處理機制沿用JAVA,包括三個事件模型:事件(Event)、事件源(EventSource)和事件監(jiān)聽器(EventListener)??贏syncTask(異步執(zhí)行任務(wù))口AsyncTask(異步執(zhí)行任務(wù))可以簡化應用程序執(zhí)行多任務(wù)時的過程,通過簡單的異步操作,不僅可以降低編程的難度,還可以帶來更好的用戶體驗。它包含三種泛型類型參數(shù):Params(啟動任務(wù)執(zhí)行的輸入?yún)?shù)),Progress(后臺任務(wù)執(zhí)行的進度),Result(后臺計算結(jié)果的類型)。口數(shù)據(jù)解析Android客戶端需要先與數(shù)據(jù)庫進行交互獲得數(shù)據(jù)后,才會在屏幕上動態(tài)顯示用戶能看到的信息,目前常用的數(shù)據(jù)交互格式有兩種:XML(ExtensibleMarkupLanguage)和JSON(JavaS-criptObjectNotation)。開發(fā)者可根據(jù)他們各自的優(yōu)缺點加以取舍:(1)JSON較XML量級更輕,數(shù)據(jù)體積更小;(2)JSON更易于與Script進行交互;(3)XML對數(shù)據(jù)的描述更清晰且速度快于JSON???Android移動終端應用程序開發(fā)實例口下面以一款內(nèi)蒙古旅游手機應用程序為例,實證Android平臺應用程序開發(fā)過程。Android應用程序的開發(fā)流程為:旅游部門進行市場調(diào)研,確定市場需求,向軟件公司提出開發(fā)需求。軟件公司根據(jù)客戶需求初步開發(fā)出客戶端原型,與界面相關(guān)效果圖制成靜態(tài)客戶端交付旅游部門審核。審核通過后開始動態(tài)部署應用程序。接下來開發(fā)人員獲取服務(wù)器端的接口,確認返回數(shù)據(jù),再將返回的數(shù)據(jù)與客戶端界面鏈接,使得應用程序頁面可以動態(tài)顯示信息。開發(fā)完畢的應用程序?qū)⑦M入閉環(huán)測試流程,即測試人員對開發(fā)完成的應用進行測試,并將測試結(jié)果告知開發(fā)人員,開發(fā)人員要根據(jù)測試報告中指出的問題進行進一步修改,如此往復直到解決全部問題。軟件公司需要經(jīng)常與旅游部門進行溝通,這種溝通將伴隨整個開發(fā)過程。當旅游部門對軟件功能提出修改方案時,應及時反饋開發(fā)人員,實時調(diào)整客戶端。如果說軟件的界面相當于應用的外觀(如圖2),那么軟件的架構(gòu)相當于應用的靈魂,如圖3所示。為了使移動應用程序能夠便于擴展、易于操作、結(jié)構(gòu)簡明、邏輯清晰、定位明確、符合需求,搭建架構(gòu)是非常有必要的。旅游軟件設(shè)計內(nèi)容較多,所以頁面有較多層次,單頁內(nèi)容瑣碎,有大量數(shù)據(jù)需要從服務(wù)器端獲取。為了便于代碼的管理和重用,便于前期修改、優(yōu)化及后期維護,為應用程序設(shè)計項目架構(gòu)如圖所示。該項目架構(gòu)共分三層:顯示層、業(yè)務(wù)邏輯層和數(shù)據(jù)訪問層。顯示層作用于系統(tǒng)和顯示框架,提供交互式頁面;業(yè)務(wù)邏輯層主要為各種接口,用來傳遞和處理數(shù)據(jù);數(shù)據(jù)訪問層與數(shù)據(jù)庫服務(wù)器相連。實體集封裝自定義對象,用來做交互過程中的數(shù)據(jù)載體。此類三層架構(gòu)優(yōu)點顯著:1)具有很強的擴展性,可根據(jù)客戶的調(diào)整需求,對應修改相應的方法;2)具有較高的安全性,數(shù)據(jù)調(diào)用只存在于相鄰層之間,不支持跨層調(diào)用;3)易于使用,操作簡單。數(shù)據(jù)訪問層,應用程序需要即時從服務(wù)器端獲取最新的信息,故網(wǎng)絡(luò)通信必不可少。這里采用的方式是將通過ApacheHTTP的客戶端組件HttpClient進行封裝和抽象,以便于基于Android平臺的應用開發(fā)。HttpClient在執(zhí)行HTTP時,會被HTFP請求交互,請求的方式有g(shù)et方式和post方式。本旅游應用向服務(wù)器請求響應交互所使用的類為封裝了HttpClient的caller類,在編程過程中兩種方式都可以實現(xiàn),開發(fā)人員可以根據(jù)具體情況加以選擇。業(yè)務(wù)邏輯層,全網(wǎng)絡(luò)使用ToursimGetApi類聲明應用程序?qū)⒁玫降乃薪涌诜绞?。網(wǎng)絡(luò)接口類TourismGetApilmpl調(diào)用了網(wǎng)絡(luò)請求類Caller,并對TourismGetApi類聲明中的接口方式加以實現(xiàn)??陲@示層,在應用程序的Activity中調(diào)用前文敘述的接口實現(xiàn)類中定義的方法,在客戶端上顯示從服務(wù)器上獲取的數(shù)據(jù),以達到動態(tài)部署客戶端的目的。5開發(fā)中的常見問題及解決辦法用戶體驗良好的用戶體驗是一款優(yōu)秀的應用程序必備的素質(zhì),由于Android設(shè)備種類繁多,Android系統(tǒng)版本也多種多樣,開發(fā)人員可以通過以下手段盡可能地提升用戶體驗滿意度:1)點擊區(qū)域的設(shè)置。通常應用程序中有很多按鈕圖標,他們的大小和美觀程度直接影響用戶體驗,圖標太大影響界面整體和諧性,太小又不方便用戶點擊,因此按鈕的設(shè)計非??简為_發(fā)者的設(shè)^功底。當圖標較小無法更改時,可考慮適當擴大點擊區(qū)域,將實際的點擊響應區(qū)域擴大到按鈕的外部。2)優(yōu)化速度。用戶體驗的另一個重要指標就是應用程序運行的流暢性。若不得不在程序運行之初加載大量數(shù)據(jù),且需要一定時間,可在等待頁面中設(shè)計一個進度條,并提示“拼命加載中,請稍候……”。在進行大頁面跳轉(zhuǎn)或者網(wǎng)絡(luò)數(shù)據(jù)獲取的時候,都應該加入這些設(shè)置。3)用戶習慣。在應用程序開發(fā)過程中還需要對用戶的習慣加以考慮,如導航條的位置通常置頂,個人信息和退出系統(tǒng)通常在系統(tǒng)菜單或設(shè)置頁面等等,力求讓用戶可以按照自己習慣的方式在最短的時間找到自己需要的功能。圖片緩存問題多數(shù)應用程序都是基于服務(wù)器的移動客戶端,經(jīng)常需要遠程獲取圖片。這類應用只有通過展示大量圖片才能凸顯其特色。一般都是使用ListView組件,這個組件會通過用戶向下滑動列表即時加載圖片,這就對圖片加載速度和網(wǎng)絡(luò)流量消耗提出了新的要求??梢允褂妙A先緩存圖片的方法提高加載速度。6結(jié)束語本文對Android系統(tǒng)的系統(tǒng)架構(gòu)和關(guān)鍵技術(shù)進行了介紹,通過以
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 高三年級在國旗下講話稿5篇
- 融資借款擔保合同范本
- 短片制片人招聘合作協(xié)議
- 銷售員工年終總結(jié)體會10篇
- 企業(yè)倉儲甲控材料管理辦法
- 企業(yè)安全生產(chǎn)顧問聘用合同
- 2018-2024年中國降血脂藥市場研究與發(fā)展前景報告(目錄)
- 廣告公司創(chuàng)意人員聘用合同書
- 商業(yè)綜合體苗木供應承諾
- 保安公司臨時用工合同
- 醫(yī)院護理品管圈成果匯報縮短腦卒中靜脈溶栓患者DNT完整版本PPT易修改
- 幼兒園教學課件中班美術(shù)《百變的花瓶》課件
- 液化石油氣充裝操作規(guī)程(YSP118液化石油氣鋼瓶)
- 工程樣板過程驗收單
- 顱內(nèi)動脈動脈瘤介入治療臨床路徑
- 糧食倉儲場建設(shè)項目可行性研究報告
- 珠寶銷貨登記表Excel模板
- 深基坑開挖施工風險源辨識與評價及應對措施
- 唯美手繪風花藝插花基礎(chǔ)培訓PPT模板課件
- 《現(xiàn)代漢語語法》PPT課件(完整版)
- 5G智慧農(nóng)業(yè)建設(shè)方案
評論
0/150
提交評論