何偉
摘 要 近年來互聯(lián)網(wǎng)技術大熱,移動端軟件的開發(fā)已經(jīng)在潛移默化中改變了人們的生活習慣。而本文將初步介紹在Android系統(tǒng)平臺之上,校園交互平臺開發(fā)的基本要點。
關鍵詞 Android系統(tǒng) 交互平臺 系統(tǒng)開發(fā)
中圖分類號:TP3 文獻標識碼:A
當前第三代移動通信技術迅速發(fā)展,應用范圍不斷擴展,基于3G時代的移動通訊設備廣泛普及,新功能和新應用層出不窮,其應用軟件和服務需求在近幾年出現(xiàn)了井噴式增長。本文所探討的是基于Android系統(tǒng)的校園交互平臺的開發(fā)概述。
1 Android開發(fā)平臺概述
Android原本定義為“機器人”?,F(xiàn)在谷歌公司任職的安迪-羅賓(Andy Rubin)在2003年開發(fā)了一個輕量級操作系統(tǒng),它就是Android系統(tǒng)的前身,2005年Google公司收購了安迪。羅賓的公司。2007年11月5日,谷歌公司正式發(fā)布了一款基于Linux內(nèi)核的智能手機操作系統(tǒng)——Android系統(tǒng),一個移動終端操作系統(tǒng)的輝煌時代由此開始。谷歌公司聯(lián)合34家移動終端廠商,共同成立了一個“開放手機聯(lián)盟(Open handsetAlliance)”。并制定了相關的開發(fā)協(xié)議和加盟原則等。谷歌公司通過整合上下游資源,與相關的軟硬件廠商、電信運營商和其他合作伙伴進行合作,領導聯(lián)盟成員制定Android平臺的標準和協(xié)議,以此在移動互聯(lián)網(wǎng)領域形成一個較大規(guī)模的產(chǎn)業(yè)鏈。
目前Google公司主要提供三種版本的Android SDK,分別為Windows、 Mac S X (intel)與Linux (i386)。本文編譯環(huán)境采用Windows操作系統(tǒng)進行開發(fā)。
2 校園交互平臺搭建的基本需求分析
一般而言校園交互平臺的客戶端首頁應包括 登錄和常用模塊(包括十大熱門、熱點交易和推薦閱讀)瀏覽兩塊內(nèi)容。登錄包括匿名登錄和注冊用戶登錄兩種方式。根據(jù)用戶身份的不同,使用不同的登錄方式進行登錄操作。注冊用戶可以使用其身份使用更多的功能,包括收發(fā)郵件,收藏夾,在線好友等。
另一方面,注冊用戶應當通過用戶名和密碼進行登錄操作。用戶名和密碼的數(shù)據(jù)類型均為char型,密碼用黑點表示以加強安全性。選擇“登錄”按鈕之后,若輸入的用戶名和密碼與西北望BBS用戶信息庫屮的條目不符合,則彈出用戶名或者密碼錯誤的消息通知框,若登錄成功,則跳轉到成功登錄的用戶界面。
對于校園交互模塊而言,其用戶的個人信息設置也是其中極為重要的一部分。用戶資料包括“昵稱”,“性別”,“星座”和“論壇內(nèi)身份”,“帖子總數(shù)”,“登錄次數(shù)”,“來本站多久”,“經(jīng)驗值”,“表現(xiàn)值”等數(shù)據(jù)。
3 針對校園交互平臺基本需求的Android平臺系統(tǒng)的開發(fā)要點介紹
由于本文篇幅有限,該部分將從Android平臺中用戶登錄功能的開發(fā)重點、系統(tǒng)解析HTML文件的解決要點以及屏幕生成方法這三方面進行概述。
首先,用戶登錄功能是校園交互平臺開發(fā)中的重點內(nèi)容,其中在獲取網(wǎng)頁數(shù)據(jù)時應采用Get方式,而用戶登錄時需要給服務器端發(fā)送用戶名和密碼等參數(shù),因此該功能實現(xiàn)采用Post方式。另一方面,系統(tǒng)應當能夠對長時間無操作用戶有其判斷機制,并且會踢掉長時間無反應的用戶。因此,在發(fā)表或者回復帖子、收發(fā)郵件等應用時,需要判斷用戶的登錄狀態(tài),使用提取cookie并根據(jù)判斷給cookie賦值的方法進行處理。在后續(xù)用戶狀態(tài)判斷中,如果cookie值與用戶名相同,則是登錄狀態(tài);如果不相同,則是未登錄狀態(tài)。
Cookie俗稱為“小甜餅”,它是為了解決HTTP協(xié)議本身的無狀態(tài)性,由網(wǎng)景公司(Netscape)開發(fā)出的用于保存用戶識別信息的有效工具。對于很多Web應用來說,需要保存某種狀態(tài),比如用戶名和密碼、購物車的內(nèi)容等數(shù)據(jù)。在很多情況下,就需要使用Cookie來保持這種會話狀態(tài)。對于該客戶端而言,注冊用戶的登錄狀態(tài)使用cookie進行判斷。Cookie的用途有很多,主要有以下一些方面:Cookie能夠保存用戶的用戶名和密碼等信息,在進入之前訪問過的一些網(wǎng)站時,就可以不用輸入而直接訪問該站點;能夠使站點跟蹤登錄者的一些登錄信息,比如進入站點的IP地址等;Cookie能夠統(tǒng)計站點用戶的一些重要信息。
其次,Android解析HTML文件,常用的辦法有WebView,正則表達式,SAX,HtmlParser,jsoup等方法。WebView使用LoadUrl方法可以直接顯示網(wǎng)頁內(nèi)容和圖片文件,但無法靈活地解析出其中的部分數(shù)據(jù)。SAX是解析XML文件的一種方法,使用SAX只能解析XHTML文件,解析速度較慢,一個文件要幾十到幾百毫秒。正則表達式的解析效率仍然較低,但可以配合裁剪或者仙取所需要的內(nèi)容。
最后,Android有三種生成屏幕的方式:通過XML文件生成;通過用戶界面接口生成;直接用Java代碼生成。根據(jù)MVC原則,將UI界面和程序功能模塊的分層原則,在UI界面生成時,我們采用XML中定義UI的方法,這樣做的優(yōu)點還在于,比較容易地設計和修改屏幕方案。在XML中定義UI界面就像生成普通的HTML文檔一樣簡單,使用XML設計屏幕具有如下一些特點:
(1)Android平臺有很多自定義的元素,它們代表了特定的UI界面顯示子類;
(2)Android程序的res/layout/目錄下保存XML文件,可以通過保存在這些文件中的嵌套標簽來設計UI界面,就像生成HTML文檔一樣。
參考文獻
[1] 周增國,韓嚴,王巖.高校校園網(wǎng)建設關鍵技術研究與應用[J].中國教育信息化.高教職教,2009,4:24-26。