摘要:介紹基于Android平臺的校園新聞客戶端的開發(fā)過程,該系統(tǒng)提供瀏覽校園資訊的功能,并為用戶推送最新校園信息。探討了利用java語言開發(fā)Android平臺應(yīng)用軟件的基本方法與技術(shù),對于客戶端各模塊功能的實現(xiàn)進行說明。
關(guān)鍵詞:Android;校園;新聞;推送
中圖分類號:TP393 文獻標識碼:A 文章編號:1009-3044(2013)16-3731-05
隨之手機技術(shù)的不斷發(fā)展和Android手機的不斷普及,人們的閱讀習(xí)慣也發(fā)生了改變。 人們越來越多的習(xí)慣在手機客戶端上閱讀新聞和查看訊息。其帶來的便捷性是其他工具無法比擬的。由于查看校園資訊有著許多的不便,所以結(jié)合當下的實際,便開發(fā)了一款針對于校園的新聞客戶端。該文介紹的校園新聞客戶端是一款基于Android移動平臺的軟件。由于本系統(tǒng)是運行在移動平臺上的系統(tǒng)。為了提供良好的用戶體驗與可用性,小型高效是最重要的考核因素。能夠及時的查看校園資訊和離線閱讀是本軟件的特色之處。
1 校園新聞客戶端軟件框架的構(gòu)建
本系統(tǒng)主要由五個模塊組成:新聞查看模塊(MainActivity),數(shù)據(jù)下載模塊(DownloadTask),數(shù)據(jù)解析模塊(JsonParse),數(shù)據(jù)存儲模塊(FileUtil),資訊推送模塊(PushService)。這三個模塊構(gòu)成了新聞客戶端的主要內(nèi)容。
2 新聞查看模塊的實現(xiàn)
2.1 界面切換效果的實現(xiàn)
作為程序進入的第一個界面,界面展示的效果十分重要。因為手機屏幕的展示空間有限,為了展示更多的內(nèi)容。在程序界面的底部模仿的微博的設(shè)計。使用了Android的TabHost類來進行不同功能頁面間的切換。
2.2 按鈕切換效果的實現(xiàn)
2.4 數(shù)據(jù)準備邏輯的實現(xiàn)
3 數(shù)據(jù)下載和解析模塊的實現(xiàn)
程序運行的流暢性是十分重要的。如果主線程處理的事件耗時過長將會出現(xiàn)ANR(應(yīng)用程序無響應(yīng)),導(dǎo)致程序崩潰。由于數(shù)據(jù)下載的速度取決于很多的因素,所以就有必要將耗時較多的數(shù)據(jù)下載事件交給后臺線程處理,從而來提升用戶體驗,改善應(yīng)用程序性能。
本客戶端中數(shù)據(jù)的異步下載使用了Android的AsyncTask類來進行實現(xiàn)。
為了正確的使用AsyncTask類,以下是幾條必須遵守的準則:
4 數(shù)據(jù)存儲模塊的實現(xiàn)
為了達到新聞客戶端可以離線閱讀的功能,所以有必要將網(wǎng)絡(luò)下載的數(shù)據(jù)進行離線存儲。
為了方便對象存儲在文件中,所以將文件數(shù)據(jù)進行了序列化。
5 推送模塊的實現(xiàn)
在項目中采用了XMPP協(xié)議實現(xiàn)Android推送。XMPP(可擴展通訊和表示協(xié)議)是基于可擴展標記語言(XML)的協(xié)議,它用于即時消息(IM)以及在線探測。這個協(xié)議可能最終允許因特網(wǎng)用戶向因特網(wǎng)上的其他任何人發(fā)送即時消息。
采用這個方案,目前只能發(fā)送文字消息,不過對于新聞推送來說一般足夠。當以也可以使用第三方實現(xiàn)好的推送服務(wù)。目前已經(jīng)有很多的公司提供類似的服務(wù)。
6 結(jié)束語
本文介紹了Android校園新聞客戶端,通過異步下載網(wǎng)絡(luò)數(shù)據(jù),對數(shù)據(jù)進行存儲,提供離線閱讀功能。并且可以推動最新校園資訊。添加了主流新聞客戶的閱讀效果。如手勢操作和多頁面顯示功能。給用戶帶來良好的使用體驗。對于校園用戶具有很高的應(yīng)用價值。
參考文獻:
[1] Dave MacLean.精通Android3[M].楊越,譯.北京:人民郵電出版社,2011:255-260,324-328.
[2] 余志龍,陳小鳳.AndroidSDK開發(fā)范例大[M].北京:清華大學(xué)出版社,2010.
[3] Android推送通知指南[EB/OL].http://blog.csdn.net/joshua_yu/article/details/6563587.