公務員期刊網 論文中心 正文

移動互聯網運用框架功能要點及設計思路

前言:想要寫出一篇引人入勝的文章?我們特意為您整理了移動互聯網運用框架功能要點及設計思路范文,希望能給你帶來靈感和參考,敬請閱讀。

移動互聯網運用框架功能要點及設計思路

本文作者:黃佳星、王晶、沈奇威 單位:北京郵電大學網絡與交換技術國家重點實驗室、東信北郵信息技術有限公司

移動互聯網的快速發(fā)展是當今科技領域不可忽視的潮流,移動互聯網是移動和互聯網融合的產物,繼承了移動隨時、隨地、隨身和互聯網分享、開放、互動的優(yōu)勢,是整合二者優(yōu)勢的“升級版本”[1]。從個人的通信行為規(guī)律來講,移動通信和固定通信類似[2]。移動互聯網給用戶帶來的全新的體驗,代表了移動增值業(yè)務未來的發(fā)展方向[3]。智能終端應用作為廣大用戶使用移動互聯網的重要途徑,無論在推動移動互聯網技術創(chuàng)新上,還是在滿足廣大用戶的需求上,都扮演著越來越重要的角色。Android是當前使用范圍最廣的智能終端平臺。由于Android平臺在智能終端平臺市場份額上的領先地位,基于Android的移動互聯網應用具有大量的需求。在Android平臺上更加高效率地開發(fā)應用,并且保證良好的軟件結構,是所有Android研發(fā)企業(yè)和個人面臨的挑戰(zhàn)。如果能很好地解決這一問題,將能夠幫助個人開發(fā)者和企業(yè)更好地適應移動互聯網快速發(fā)展的節(jié)奏,創(chuàng)造更大的價值。

1Android應用開發(fā)現狀和應用框架需求分析

1.1發(fā)展現狀

當前的應用開發(fā)現狀:通常要從零開始,逐一開發(fā)應用所涉及的各項功能,當需要使用平臺基礎能力時,例如網絡、存儲等基礎能力時,必須針對功能的特性,定義并實現相應的基礎能力,再進一步完成功能的開發(fā)。這種開發(fā)模式存在的問題是開發(fā)時間成本高,軟件之間的代碼復用度低,軟件結構不合理。應用開發(fā)的基礎支持方面,個人或企業(yè)開發(fā)者隨著項目開發(fā)的積累,能夠提煉出可復用的功能模塊。然而作為應用開發(fā)過程中的支撐,這些模塊通用性較差,完整性不足,不能夠從本質上提高代碼的復用度,對于開發(fā)效率的提升也不夠明顯。

1.2需求分析

為了解決當前應用開發(fā)方式存在的問題,本文提出基于Android的移動互聯網應用框架方案。該框架的目標是滿足移動互聯網領域的快速發(fā)展的背景之下,個人和企業(yè)開發(fā)者高效率開發(fā)并保證項目質量的期望。應用框架的核心需求是對于網絡、存儲等基礎組件的定義與實現。在此基礎上,通過對于已實現基礎組件的組合,提供實用的服務,并對應用開發(fā)提供友好的調用接口。應用框架的作用是減少應用開發(fā)周期,節(jié)約人力、時間成本。開發(fā)團隊在應用框架的幫助下,可以從平臺數據存儲、網絡訪問和結果解析等基礎能力的實現細節(jié)中解放出來,專注于應用功能的設計與實現。

2框架設計

2.1框架結構圖

框架結構如圖1所示。應用框架位于安卓4層結構中的應用層與應用框架層之間。分為基礎能力框架與UI框架兩個部分。

2.1.1基礎能力框架

基礎能力框架的作用是提供移動互聯網應用需要的基礎能力和服務,包含底層的能力組件和上層的服務兩個部分。能力組件包含“數據存儲”、“網絡訪問與結果解析”、“日志”三大組件?!皵祿鎯Α苯M件提供數據存儲方面的支持;“網絡訪問與結果解析”提供訪問互聯網并且解析響應數據的能力;“日志”組件優(yōu)化調試過程的信息輸出與對運行時的信息進行記錄。通過對3項能力的整合,支持上層的服務。例如云端一鍵備份與數據還原服務、LBS服務等。

2.1.2UI框架

UI框架的作用是提升用戶交互編程的效率。包括基于Tab的UI模板和UI控件庫兩個部分?;赥ab的UI模板面向包含多個并列子功能的應用;UI控件庫封裝和優(yōu)化了與用戶交互相關控件,使得這些控件更易于使用。

2.2框架各模塊功能具體分析

2.2.1數據存儲組件

Android手機應用中數據存儲的3種主要方式是SQLite數據庫、Preference存儲、文件存儲。應用框架通過對這3種方式的支持與優(yōu)化提高開發(fā)數據存儲相關功能時的效率和質量。

2.2.1.1SQLite數據庫

Android中通過SQLite數據庫引擎來實現結構化數據存儲[4]。Android在運行時集成了SQLite,所以每個Android應用程序都可以使用SQLite數據庫[5]。應用框架通過以下方式提高SQLite數據庫相關開發(fā)的效率和質量:對底層數據庫操作API進行封裝,保證調用方法的統一性和通用性,又對數據庫操作的靈活性不造成太大的影響;通過SQL語句的優(yōu)化,實現高效率的數據庫操作;幫助了解數據庫基本原理的應用開發(fā)者,不用過分關注數據操作的細節(jié),更好地通過SQLite實現結構化數據存儲。

2.2.1.2Preference存儲

Preference提供了一種輕量級的數據存儲方法,應用場合主要是數據比較少的配置信息。它以“鍵-值”對的方式將數據保存在一個XML配置文件中[4]。相對于數據庫存儲而言,Preference存儲在操作上更加簡潔,適用于小數據量、零散的、非結構化的數據存儲。應用框架通過對于這種存儲方式的封裝,做到統一管理、簡化開發(fā)過程中對于Preference存儲的使用。應用框架簡化基于“鍵-值”對的數據存儲過程,并且提供便捷的同時存儲多組“鍵-值”對數據的方法。

2.2.1.3文件存儲

除了SQLite數據庫和Preference存儲這兩種方式存儲之外,文件存儲也是Android平臺重要的存儲方式。文件存儲方式適用于文本文件、PDF文件、音視頻文件和圖片等。Android提供了文件讀寫的方法。應用框架對基于流的文件讀寫進行封裝,對上層提供簡潔、具有通用性的文件讀寫接口。

2.2.2網絡訪問與結果解析組件

HTTP是應用層協議,用于分布式協作超媒體信息系統,是一個客戶端和服務器端請求和應答的標準。超文本傳輸協議是互聯網上應用最為廣泛的一種網絡協議。所有的WWW文件都必須遵守這個標準[7]。HTTP被廣泛地運用于移動終端與服務器端的交互,它是一個基于“請求-響應”模式的協議,一個客戶機與服務器建立連接后,發(fā)送一個請求給服務器。服務器接到請求后,給予相應的響應信息[8]。框架的“網絡訪問與結果解析”組件分為兩個部分:HTTP請求發(fā)起模塊,幫助開發(fā)者更加便捷地向服務器端發(fā)起請求,請求的方式包括GET和POST兩種模式。HTTP結果解析模塊,當前最為流行的網絡數據傳輸格式是XML,而JSON格式是一種輕量級的數據交換格式[9],載荷高、易于通過編碼進行解析的特點使其非常適合移動互聯網領域的數據傳輸。應用框架支持XML、JSON兩種數據格式的解析,并通過良好的設計做到解析方法的通用性。

2.2.3日志組件

在程序開發(fā)過程中,日志(Log)是廣泛使用的用來記錄程序執(zhí)行過程的機制,它既可以用于程序調試,也可以用于產品運營中的事件記錄。在Android系統中,通過工具類android.util.Log提供了日志機制。應用框架的日志組件主要涉及兩方面內容:調試輔助以及運行事件記錄。日志組件對工具類的API進行封裝,統一管理應用的調試信息輸出,使得開發(fā)者在應用開發(fā)的調試過程中更簡單、便捷地使用日志。另一方面,日志組件需要結合文件或數據庫存儲組件,實現關鍵日志的存儲,完成重要運行事件的記錄,以備分析。

2.2.4云端一鍵備份與還原服務

移動互聯網應用中,用戶在使用應用的過程中會生成個人數據。為了使用戶能夠更好地享受應用服務,在應用個人數據存儲上,需要解決以下問題:個人用戶多終端數據同步,即當用戶更換手機或同時使用多臺智能終端時,終端之間的數據遷移應當是簡單易行的。當用戶手機丟失或因為應用重置,丟失本地數據存儲時,能夠恢復最新版本的數據。云端一鍵備份與還原服務是解決上述問題的有效途徑。該服務通過整合“數據存儲”、“網絡交互”、“日志”三大組件能力,提供了用戶數據的備份和還原能力。實現該服務的思路是采用配置的方式對需要備份數據進行聲明,根據配置生成網絡中傳輸的數據,接收到數據后,經過解析,提取數據,存入數據庫。備份與還原在流程和原理上是一致的,流程圖如圖2所示。在使用該流程進行數據維護時,備份與還原的區(qū)別在于,備份時數據源是客戶端,還原時數據源是服務器端。

2.2.5UI框架

2.2.5.1基于Tab的UI模板

通過對當前熱門應用客戶端的觀察和分析,發(fā)現基于Tab的UI結構是一種常見的UI結構。當應用內包含多個并列的子功能時,基于Tab的UI結構能夠很好解決手機終端有限屏幕上排列多項子功能的需求,并能夠快速地進行切換。UI框架包含一個易用的、可擴展的基于Tab的UI模板,對包含并列的子功能的應用提供支持。

2.2.5.2UI控件庫

移動互聯網應用在完成與用戶的交互過程中,需要使用眾多能夠實時顯示信息、允許用戶操控的UI控件。系統自帶控件在使用過程中,易用性不同,某些控件的調用方法較為繁瑣。UI控件庫的設計與實現目標是讓用戶交互相關控件更易于使用,提高用戶交互方面的開發(fā)效率。

3結束語

基于Android的移動互聯網應用框架順應了蓬勃發(fā)展的移動互聯網需要高效開發(fā)應用的趨勢,幫助企業(yè)和個人開發(fā)者減輕工作量,高效率地開發(fā)應用,保證良好的軟件結構,并且提高了代碼的復用率。該應用框架的設計與實現在移動互聯網應用開發(fā)方法的創(chuàng)新上具有重要的科研價值,在實際的產業(yè)開發(fā)過程中,具有廣闊的應用前景。