周兆永 黃志剛 李力 楊彩飛
摘 要:基于IPv6環(huán)境下校園私用種子服務(wù)器(Private Tracker,PT)日漸成熟,移動(dòng)互聯(lián)網(wǎng)時(shí)代用戶越來(lái)越傾向于使用手機(jī)端訪問(wèn)PT,但這類系統(tǒng)的手機(jī)APP版本在高校應(yīng)用中還不太多見(jiàn)。西北農(nóng)林科技大學(xué)基于學(xué)校所建麥田PT平臺(tái),解決了其中的一些技術(shù)瓶頸,所采用技術(shù)兼容Android,克服了其中一些關(guān)鍵的bug,基于LiteOrm框架在android4.0基礎(chǔ)下進(jìn)行麥田PT的App設(shè)計(jì),實(shí)現(xiàn)了手機(jī)端的平臺(tái)頁(yè)面訪問(wèn)、資源遠(yuǎn)程下載、遠(yuǎn)程保種、平臺(tái)登錄、簽到以及麥粒獲取等功能。測(cè)試結(jié)果表明,該系統(tǒng)運(yùn)行穩(wěn)定、使用方便,可較好的滿足學(xué)校師生基于移動(dòng)端訪問(wèn)麥田PT的需求。
關(guān)鍵詞:Android;PT;IPv6;APP實(shí)現(xiàn)
中圖分類號(hào):TP39
文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1672-3791(2016)08(b)-0000-00
0 引 言
近年來(lái),隨著互聯(lián)網(wǎng)技術(shù)的高速發(fā)展以及國(guó)家對(duì)IPv6技術(shù)的大力支持,國(guó)內(nèi)的許多高校都已經(jīng)建立了自己的PT (Private Tracker)資源共享平臺(tái),著名的有北京郵電大學(xué)的北郵人,東北大學(xué)的六維空間、上海交通大學(xué)的葡萄PT等[1],西北農(nóng)林科技大學(xué)的麥田PT[2]也具有了一定的影響力。PT的建立和使用有效節(jié)省了設(shè)備投資、節(jié)省了流量,提升了用戶體驗(yàn)。隨著移動(dòng)互聯(lián)網(wǎng)時(shí)代的到來(lái),用戶越來(lái)越傾向于使用手機(jī)端訪問(wèn)PT,但這類系統(tǒng)的手機(jī)App版本尚不太多見(jiàn),本文針對(duì)麥田PT的需求,基于LiteOrm框架在Android4.0基礎(chǔ)下進(jìn)行麥田PT的App設(shè)計(jì),實(shí)現(xiàn)了手機(jī)端的平臺(tái)頁(yè)面訪問(wèn)、資源遠(yuǎn)程下載、遠(yuǎn)程保種、平臺(tái)登錄、簽到以及麥粒獲取等功能。
1 集成開(kāi)發(fā)環(huán)境Android Stuido與LiteOrm框架
1.1集成開(kāi)發(fā)環(huán)境Android Stuido
Android Studio是一套Google推出的專門(mén)為Android“量身訂做”的IDE(即集成開(kāi)發(fā)環(huán)境),并免費(fèi)向谷歌及Android的開(kāi)發(fā)人員開(kāi)放。它以IntelliJ IDEA為基礎(chǔ),提供了集成的 Android 開(kāi)發(fā)工具用于開(kāi)發(fā)和調(diào)試,目前google的工程師團(tuán)隊(duì)正在不斷完善,上升空間非常大。在IDEA的基礎(chǔ)上,Android Studio 提供基于Gradle的構(gòu)建,支持Android 專屬的重構(gòu)和快速修復(fù),提示工具以捕獲性能、可用性、版本兼容性等問(wèn)題,支持ProGuard 和應(yīng)用簽名,基于模板的向?qū)?lái)生成常用的 Android 應(yīng)用設(shè)計(jì)和組件,功能強(qiáng)大的布局編輯器,可以讓你拖拉 UI 控件并進(jìn)行效果預(yù)覽。它具速度快、UI設(shè)計(jì)美觀、智能化、插件系統(tǒng)和版本控制系統(tǒng)更完善等諸多特點(diǎn)[2]。
1.2 LiteOrm框架
LiteOrm是Github上一款開(kāi)源的Android數(shù)據(jù)庫(kù)框架[3]。它具有快速、小巧、的特點(diǎn),可以僅用一行代碼實(shí)現(xiàn)數(shù)據(jù)庫(kù)的增刪改查操作,以及實(shí)體關(guān)系的持久化和自動(dòng)映射。LiteOrm主線思路是約定大于配置,所以可以用極少的注解完成復(fù)雜數(shù)據(jù)的存儲(chǔ)。大多情況下不要求開(kāi)發(fā)者為每個(gè)對(duì)象添加一個(gè)無(wú)參構(gòu)造,關(guān)注性能,各個(gè)功能的實(shí)現(xiàn)繞過(guò)了Android提供的直接接口而比較貼近底層的實(shí)現(xiàn)。它具有支持多庫(kù)、SD卡存儲(chǔ)、靈活的查詢和刪除、自動(dòng)識(shí)別類型和豐富API支持等諸多特點(diǎn)。
2系統(tǒng)功能與架構(gòu)設(shè)計(jì)
2.1系統(tǒng)功能
在分析麥田PT運(yùn)行情況的基礎(chǔ)上,系統(tǒng)主要包括以下功能:(1)麥田pt平臺(tái)的網(wǎng)頁(yè)訪問(wèn);(2)遠(yuǎn)程下載資源功能;(3)登陸麥田、簽到以及麥粒獲取功能;(4)遠(yuǎn)程保種功能;(5)在云盤(pán)實(shí)現(xiàn)后增加云盤(pán)功能。
2.2 系統(tǒng)架構(gòu)與主要技術(shù)實(shí)現(xiàn)
根據(jù)系統(tǒng)需求,我們?cè)O(shè)計(jì)了PT平臺(tái)App的架構(gòu)如圖 1 所示,資源分享平臺(tái)系統(tǒng)采用 B/S 結(jié)構(gòu),本文主要設(shè)計(jì)和實(shí)現(xiàn)PT部分的App,通過(guò)RSS訂閱功能實(shí)現(xiàn)遠(yuǎn)程下載功能;通過(guò)LiteOrm框架來(lái)實(shí)現(xiàn)數(shù)據(jù)庫(kù)的訪問(wèn)建立; 通過(guò)Lite-http框架來(lái)進(jìn)行http的請(qǐng)求以及響應(yīng)。
圖 1 資源分享平臺(tái)架構(gòu)
3 系統(tǒng) UI實(shí)現(xiàn)
開(kāi)發(fā) Android 系統(tǒng)軟件,UI 設(shè)計(jì)是重要的一部分。優(yōu)美的界面設(shè)計(jì)可以提示用戶體驗(yàn)進(jìn)而提升系統(tǒng)的好評(píng),同時(shí)可以方便用戶獲取所需要的數(shù)據(jù)。系統(tǒng)實(shí)現(xiàn)的主界面如圖 2所示。
圖 2 App的主要界面
4 PT主要功能在手機(jī)端的實(shí)現(xiàn)
4.1 通過(guò)rss訂閱功能實(shí)現(xiàn)遠(yuǎn)程下載功能
RSS基于XML標(biāo)準(zhǔn),在互聯(lián)網(wǎng)上被廣泛采用的內(nèi)容包裝和投遞協(xié)議。RSS(Really Simple Syndication)是一種描述和同步網(wǎng)站內(nèi)容的格式,是使用最廣泛的XML應(yīng)用。RSS搭建了信息迅速傳播的一個(gè)技術(shù)平臺(tái),使得每個(gè)人都成為潛在的信息提供者。發(fā)布一個(gè)RSS文件后,這個(gè)RSS Feed中包含的信息就能直接被其他站點(diǎn)調(diào)用,而且由于這些數(shù)據(jù)都是標(biāo)準(zhǔn)的XML格式,所以也能在其他的終端和服務(wù)中使用,是一種描述和同步網(wǎng)站內(nèi)容的格式。
4.2通過(guò)LiteOrm框架來(lái)實(shí)現(xiàn)數(shù)據(jù)庫(kù)的訪問(wèn)建立
LiteOrm是一個(gè)速度快、小巧、強(qiáng)大的Android ORM框架類庫(kù),讓你一行代碼實(shí)現(xiàn)數(shù)據(jù)庫(kù)的增刪改查操作,以及實(shí)體關(guān)系的持久化和自動(dòng)映射。
4.3通過(guò)Lite-http框架來(lái)進(jìn)行http的請(qǐng)求以及響應(yīng)
Lite-http是一款簡(jiǎn)單、智能、靈活的http框架庫(kù),它在請(qǐng)求和響應(yīng)層面做到了全自動(dòng)構(gòu)建和解析,主要用于Android快速開(kāi)發(fā)。借助Lite-http你只需要一行代碼即可完美實(shí)現(xiàn)http連接,它全面支持GET, POST, PUT, DELETE, HEAD, TRACE, OPTIONS 和 PATCH八種基本類型。Lite-http能將Java Model轉(zhuǎn)化為http請(qǐng)求參數(shù)。
5.結(jié)束語(yǔ)
以西北農(nóng)林科技大學(xué)IPV6資源分享平臺(tái)實(shí)際需求為背景,經(jīng)過(guò)詳細(xì)設(shè)計(jì)和美工優(yōu)化,實(shí)現(xiàn)了IPV6資源分享平臺(tái)的PT部分的Android版App。 采用了Android Studio集成開(kāi)發(fā)環(huán)境,實(shí)現(xiàn)了手機(jī)端的平臺(tái)頁(yè)面訪問(wèn)、資源遠(yuǎn)程下載、遠(yuǎn)程保種、平臺(tái)登錄、簽到以及麥粒獲取等功能。測(cè)試結(jié)果表明,該系統(tǒng)運(yùn)行穩(wěn)定、使用方便,可較好的滿足學(xué)校師生基于移動(dòng)端訪問(wèn)麥田PT的需求。滿足大部分應(yīng)用場(chǎng)景的需求。該手機(jī)App只是一個(gè)初步的嘗試,隨著需求的提升,未來(lái)會(huì)出現(xiàn)會(huì)開(kāi)發(fā)集成云盤(pán)功能的App系統(tǒng),本文所闡述的開(kāi)發(fā)思路和關(guān)鍵技術(shù)會(huì)有較好的參考和借鑒作用。
參考文獻(xiàn)
[1]鄭宏濤,李武衛(wèi),涂揚(yáng).改進(jìn)lPv6網(wǎng)PT資源共享平臺(tái)[J].中國(guó)教育網(wǎng)絡(luò),2013 (10):72-73.
[2] http://pt.nwsuaf6.edu.cn/.
[3] http://www.android-studio.org/. 2016-6
[4] http://github.com/litesuits/android-lite-orm.