耿晨凱 劉俊強(qiáng) 范帥凱 王子軒 李旭旭 徐長權(quán) 李興壯
摘要:校園通APP項(xiàng)目是基于手機(jī)移動平臺開發(fā)的、針對在校學(xué)生、老師的一款實(shí)用的APP。項(xiàng)目源自大學(xué)生的日常學(xué)習(xí)和生活,是一個(gè)綜合服務(wù)于師生的APP。項(xiàng)目科學(xué)設(shè)計(jì)功能模塊,包含專業(yè)成績查詢、課程表展示、飯卡充值、四六級和其他之類國家級考試的查詢、學(xué)院空教室、實(shí)驗(yàn)室查詢等功能。通過UI界面與后臺數(shù)據(jù)的應(yīng)用管理,實(shí)現(xiàn)了安全、高效、便捷的移動端校園服務(wù)。
Abstract: Campus APP project is a practical APP developed for students and teachers on the basis of mobile phone platform. The project originates from the daily study and life of college students and is an APP that comprehensively serves teachers and students. The scientific design function module of the project includes functions, such as, professional score query, course schedule display, meal card recharge, cet-4, cet-6 and other national examination inquiry, college empty classroom, laboratory query, and so on. Through the UI interface and background data application management, a safe, efficient and convenient mobile campus service is realized.
關(guān)鍵詞:Android;移動應(yīng)用;校園通;校園服務(wù)
Key words: Android;mobile applications;campus APP;campus services
中圖分類號:TP311? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 文獻(xiàn)標(biāo)識碼:A? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 文章編號:1006-4311(2020)20-0176-03
0? 引言
校園通APP平臺的設(shè)計(jì)得益于移動互聯(lián)網(wǎng)的發(fā)展與普及,現(xiàn)在,在校學(xué)生已經(jīng)人手一部手機(jī),網(wǎng)絡(luò)的便捷在手機(jī)應(yīng)用上得到了充分的體現(xiàn)。大學(xué)生對于新事物、新技術(shù)的敏感與應(yīng)用都走在社會普及的前列。于是,諸如點(diǎn)餐、快遞、學(xué)習(xí)、查課、簽到、跑步等諸多APP競相登場,從而也帶來了APP在校園里對用戶的競爭。而面對如此之多從而顯得散、亂的APP,使得大學(xué)生在使用過程中很難選擇。能夠?yàn)樵谛4髮W(xué)生量身定制一個(gè)實(shí)用的APP,不但能夠融合一些常用的功能,還有針對在校學(xué)習(xí)特定的功能,從而實(shí)現(xiàn)放心、滿意使用APP即成為本項(xiàng)目的初衷和目的。
1? 校園通APP的定位與優(yōu)勢
1.1 APP (Application),即手機(jī)上的應(yīng)用程序
校園通,是以手機(jī)為載體,面向大學(xué)生、老師為主要對象的、集學(xué)習(xí)、生活為一體的綜合應(yīng)用平臺。APP在各自頁面分別設(shè)置實(shí)現(xiàn)專業(yè)成績查詢、課程表展示、飯卡充值、四六級和其他之類國家級考試的查詢、學(xué)院空教室、實(shí)驗(yàn)室查詢以及圖書館借閱的查詢(在V1.0版本中飯卡充值、圖書館借閱信息查詢還待與網(wǎng)絡(luò)中心、圖書館對接),各課程的講義資料、上課視頻的閱讀瀏覽,學(xué)生向老師提問留言,老師答疑,撿拾到丟失物品的招領(lǐng)、地圖指引等功能。
1.2 項(xiàng)目優(yōu)勢
在學(xué)習(xí)生活過程中,團(tuán)隊(duì)成員用過多款A(yù)PP產(chǎn)品,在這些APP中,有很多功能的設(shè)計(jì)、開發(fā)是很周到的,技術(shù)實(shí)現(xiàn)也值得學(xué)習(xí)和借鑒,但在所用過的APP中有一個(gè)共同的特點(diǎn):或商業(yè)氣息過重或偏重于游戲娛樂,不適合校園的氛圍?;趹?yīng)用的環(huán)境、需求和資源的綜合考慮,結(jié)合專業(yè)的特點(diǎn),我們組建了校園通開發(fā)團(tuán)隊(duì)。在現(xiàn)有的校園通類型的APP的綜合研判基礎(chǔ)上,設(shè)計(jì)、開發(fā)自己的APP,并展現(xiàn)出自己的優(yōu)勢。
①開發(fā)團(tuán)隊(duì)穩(wěn)定,成員全部為大二、大三學(xué)生,每年畢業(yè)生離開,但新成員同步補(bǔ)充到位,所以項(xiàng)目運(yùn)行維護(hù)沒有斷點(diǎn);②開發(fā)成員同時(shí)也為項(xiàng)目的使用者,對項(xiàng)目的功能了解到位,在項(xiàng)目的需求分析過程中沒有障礙,所以項(xiàng)目的功能設(shè)定及實(shí)現(xiàn)完全貼近應(yīng)用的需求;③項(xiàng)目內(nèi)容完全基于校園學(xué)習(xí)和生活,安全、健康、便捷;④在學(xué)習(xí)之余做開發(fā)設(shè)計(jì),既促進(jìn)了學(xué)習(xí),又提高了自己的應(yīng)用開發(fā)能力,同時(shí)極大地降低了開發(fā)成本,并且開發(fā)團(tuán)隊(duì)穩(wěn)定,運(yùn)行、維護(hù)沒有顧慮。
2? 項(xiàng)目的功能模塊設(shè)計(jì)
在團(tuán)隊(duì)探討交流的基礎(chǔ)上形成了需求說明書,將系統(tǒng)的功能分為以下模塊:首頁模塊,學(xué)習(xí)模塊,論壇模塊,個(gè)人信息模塊以及地圖指引模塊。
①首頁模塊中以圖標(biāo)形式展現(xiàn)各個(gè)功能模塊,點(diǎn)擊后進(jìn)入各自的功能頁面,在頁面下方做出固定的飯卡消費(fèi)頁面鏈接,方便使用飯卡充值、查詢的功能。
②學(xué)習(xí)模塊:專業(yè)成績查詢、課程表展示、四六級和其他之類國家級考試的查詢、學(xué)院空教室、實(shí)驗(yàn)室查詢以及圖書館借閱的查詢,設(shè)置學(xué)習(xí)交流頁面,實(shí)現(xiàn)上課內(nèi)容的學(xué)習(xí),包含老師所發(fā)的講義、ppt、上課的錄屏視頻等,學(xué)生可以在自己的課程下提問留言,老師留言答疑。(在V1.0版本中飯卡充值、圖書館借閱信息查詢還待與網(wǎng)絡(luò)中心、圖書館對接)
③論壇模塊包含關(guān)于學(xué)習(xí)、生活、工作等方面的信息交流,同時(shí)將論壇信息與個(gè)人捆綁實(shí)現(xiàn)收藏的功能。本模塊功能參考網(wǎng)上一些知名的技術(shù)論壇做出功能設(shè)置、實(shí)現(xiàn)。
④個(gè)人信息模塊以簡潔明了的形式,顯示自己的個(gè)人信息,支持在線編輯個(gè)人信息。
⑤考慮到大學(xué)生來自于全國各地,為了外出時(shí)的出行便利,設(shè)置地圖模塊。本接入高德地圖的接口,可以實(shí)現(xiàn)精準(zhǔn)定位,還可以查看附近各個(gè)知名道路、景點(diǎn)。
3? 系統(tǒng)的實(shí)現(xiàn)
系統(tǒng)數(shù)據(jù)均由后臺數(shù)據(jù)庫集中獲取、管理,含用戶信息、各課程信息等等,數(shù)據(jù)管理、系統(tǒng)設(shè)置、第三方接入系統(tǒng)關(guān)聯(lián)等操作數(shù)據(jù)信息。各模塊所用的數(shù)據(jù)統(tǒng)一建模、集中管理。除需需要與校網(wǎng)絡(luò)中心、圖書館對接的數(shù)據(jù)外,各個(gè)數(shù)據(jù)模型已經(jīng)建立,典型的數(shù)據(jù)表如:用戶登錄信息表,用戶一卡通賬戶信息表,學(xué)校通知信息表,學(xué)院空教室信息表,學(xué)院實(shí)驗(yàn)室安排表,論壇信息表,撿拾丟失物信息表、各級考試信息表、留言信息表等。
數(shù)據(jù)庫是由以上多張相互關(guān)聯(lián)的數(shù)據(jù)表組成,項(xiàng)目數(shù)據(jù)庫用MySQL實(shí)現(xiàn)并完成數(shù)據(jù)庫的設(shè)計(jì)。系統(tǒng)中包括如下:①確認(rèn)數(shù)據(jù)庫名稱、字符集、排序規(guī)則等;②確定數(shù)據(jù)庫內(nèi)所有數(shù)據(jù)表的名稱,一般情況下數(shù)據(jù)表的名稱和實(shí)體類的名稱相一致,要確認(rèn)表內(nèi)所含字段的名稱、類型、長度、主鍵及是否為空;確定數(shù)據(jù)庫文件是否需要建立索引、是否具有外鍵數(shù)據(jù)表。系統(tǒng)功能不做一一詳述,僅以主頁面、考試信息查詢、課程表查詢、地圖頁面做簡要描述。
3.1 主頁面的實(shí)現(xiàn)
用戶進(jìn)入APP后,即可看到首頁面信息,主頁面信息分為三部分,如圖1所示。
■
①頂部輪播圖部分:實(shí)現(xiàn)熱點(diǎn)資訊的實(shí)時(shí)輪播,以圖片的形式實(shí)現(xiàn)更加醒目的提示效果。②主信息顯示區(qū)部分,專業(yè)開始查詢以及空課表的展示都以圖標(biāo)形式鑲嵌到主頁面,方便用戶使用。③底部通知部分則是與校內(nèi)官網(wǎng)的通知信息相連接,點(diǎn)擊相應(yīng)的標(biāo)題即可進(jìn)入詳情頁面。
其中考試一欄采用webview的寫法,可以查詢到一些基本的國家級考試,方便同學(xué)們?nèi)ゲ樵儭?/p>
3.2 考試頁面
根據(jù)學(xué)校所發(fā)布的考試信息進(jìn)行內(nèi)容的添加、顯示,以實(shí)現(xiàn)學(xué)生對考試信息的查詢。運(yùn)行界面如圖2所示。
■
3.3 課程表查詢模塊設(shè)計(jì)
因?yàn)檫€沒有與教務(wù)處實(shí)現(xiàn)數(shù)據(jù)的對接,目前課程表根據(jù)學(xué)校教務(wù)處所發(fā)布的課程表做二次編輯取得數(shù)據(jù),添加到數(shù)據(jù)庫后使用。運(yùn)行截圖如圖3所示。
■
課程表查詢功能中請求的關(guān)鍵代碼如下所示:
/**
* 使用Volley框架真正去請求服務(wù)器
* Method.POST:請求方式為post
* builder.toString():請求的鏈接
* Listener
*/
StringRequest request = new StringRequest(Method.POST, builder.toString(),
new Listener
@Override
public void onResponse(String response) {
// TODO Auto-generated method stub
try {
if (response != null && callback != null) {
Gson gson = new Gson();
//回調(diào)請求成功,傳入url和解析的對象
callback.onSuccess(url, gson.fromJson(response, clazz));
}
} catch (Exception e) {
// TODO: handle exception
if (callback != null) {
//回調(diào)請求失敗--解析異常
callback.onFailure(url, e, 0, "解析異常");
return;
}
}
}
}, new ErrorListener() {
//請求出錯(cuò)的監(jiān)聽
@Override
public void onErrorResponse(VolleyError error) {
if (callback != null) {
if (error != null) {
callback.onFailure(url, error.getCause(), 0,
error.getMessage());
} else {
callback.onFailure(url, null, 0, "");
}
}
}
}) {
//post請求的參數(shù)信息
protected Map
return getPostApiParmes(parameter);
}
};
//添加請求到請求隊(duì)列中
addRequest(request, url);
}
3.4 地圖指引頁面
接入高德地圖官方接口,可以簡單的實(shí)現(xiàn)定位功能,并展示附近的街道以及各大場所的名稱,便于學(xué)生外出的交通指引。運(yùn)行界面如圖4所示。
■
4? 項(xiàng)目實(shí)施總結(jié)
校園通APP項(xiàng)目已經(jīng)完成并定義為V1.0版。后期的開發(fā)還要完善食堂點(diǎn)餐功能、撿拾丟失物品的招領(lǐng)等功能模塊,并在已經(jīng)設(shè)計(jì)的功能模塊基礎(chǔ)上,融入微信小程序,實(shí)現(xiàn)更多更方便的功能。功能模塊中的一卡通功能還要與學(xué)校教務(wù)處、網(wǎng)絡(luò)中心、圖書館、后勤集團(tuán)聯(lián)系,在獲準(zhǔn)后與相應(yīng)的接口對接,實(shí)現(xiàn)數(shù)據(jù)共享,從而實(shí)現(xiàn)“一機(jī)在手,通行校園”的預(yù)期。
項(xiàng)目已經(jīng)在我院學(xué)生中下載使用,并通過學(xué)生會學(xué)習(xí)部、青協(xié)進(jìn)行推廣。團(tuán)隊(duì)成員及時(shí)了解使用過程中的反饋信息,并一一記錄,在團(tuán)隊(duì)的討論中給出解決方案,在程序的運(yùn)行過程中不斷地添加功能、修整異常,目前程序運(yùn)行穩(wěn)定,使用的同學(xué)反映良好,項(xiàng)目開發(fā)過程形成的1.0版本取得了滿意的效果。后期還要在每一塊的功能上再繼續(xù)細(xì)化功能的實(shí)現(xiàn),同時(shí)做到程序的優(yōu)化。
參考文獻(xiàn):
[1]羅帥,羅斌.Android炫酷應(yīng)用300例·實(shí)戰(zhàn)篇[M].北京:清華大學(xué)出版社,2019.
[2]劉玉紅,蒲娟.Android移動開發(fā)案例課堂[M].北京:清華大學(xué)出版社,2019.
[3]安輝.Android App開發(fā)從入門到精通[M].清華大學(xué)出版社,2018.
[4]李剛.瘋狂Android講義[M].電子工業(yè)出版社,2017.