胡青萍
摘要:傳統(tǒng)教學(xué)一般是以面對(duì)面的方式進(jìn)行授課,這種授課方式存在著時(shí)間規(guī)定、課程資源有限、不可重復(fù)學(xué)習(xí)等缺點(diǎn)。本文設(shè)計(jì)實(shí)現(xiàn)了一種基于Android平臺(tái)的教學(xué)網(wǎng)站App,能夠讓用戶自主選擇學(xué)習(xí)時(shí)間,進(jìn)行在線學(xué)習(xí),能夠很好地彌補(bǔ)傳統(tǒng)教學(xué)方式的不足。系統(tǒng)主要包括數(shù)據(jù)庫(kù)的設(shè)計(jì)、云服務(wù)器和Android客戶端的設(shè)計(jì)開發(fā)三個(gè)模塊。數(shù)據(jù)庫(kù)存儲(chǔ)在云服務(wù)器端,相關(guān)的數(shù)據(jù)庫(kù)操作都會(huì)提交到云服務(wù)器端進(jìn)行,從而使得App客戶端具有高效處理速度。
關(guān)鍵詞:Android、教學(xué)App、Android Studio
0、引言
隨著互聯(lián)網(wǎng)的發(fā)展,智能手機(jī)特別是安卓手機(jī)廣泛被使用,基于Android平臺(tái)的教學(xué)App能夠很好的解決上述問題。客戶端在Android手機(jī)上安裝教學(xué)App,登錄后,就可以選擇喜歡的課程進(jìn)行學(xué)習(xí)。這種便捷、高效、可自主選擇學(xué)習(xí)時(shí)間與課程的教學(xué)App會(huì)是一個(gè)發(fā)展的方向,將來(lái)一定會(huì)改變傳統(tǒng)的教學(xué)方式[1]。
1、系統(tǒng)功能需求分析
1.1 功能需求
教學(xué)App是一款用Android Studio[2]開發(fā)的基于Android平臺(tái)進(jìn)行高效學(xué)習(xí)的手機(jī)應(yīng)用軟件??蛻舳藨?yīng)該具有用戶進(jìn)行注冊(cè)、登錄,瀏覽所有可學(xué)習(xí)的課程,關(guān)注課程,課程資源下載,社區(qū)進(jìn)行交流分享,收藏文章,個(gè)人設(shè)置等功能,為了更好的服務(wù)用戶,應(yīng)用還設(shè)置了意見反饋,用戶可進(jìn)行意見反饋,以便完善教學(xué)App。
1.2性能需求
1)易用性:風(fēng)格統(tǒng)一的界面設(shè)計(jì),友好的交互設(shè)計(jì),簡(jiǎn)單方便的操作步驟;
2)穩(wěn)定性:App運(yùn)行時(shí)要求高效、穩(wěn)定、可靠,內(nèi)存消耗與cpu消耗?。?/p>
3)兼容性:Android碎片化;
4)可拓展性:App設(shè)計(jì)時(shí)應(yīng)考慮擴(kuò)展問題,以便將來(lái)完善與拓展。
2、系統(tǒng)總體設(shè)計(jì)
教學(xué)網(wǎng)站App總共包括三個(gè)部分:云服務(wù)器、Android客戶端以及數(shù)據(jù)庫(kù)設(shè)計(jì)。
2.1云服務(wù)器端
系統(tǒng)的服務(wù)器使用的是Bmob云服務(wù)器。管理員通過登錄應(yīng)用的賬號(hào)進(jìn)入系統(tǒng)的控制臺(tái),可以在控制臺(tái)對(duì)所有數(shù)據(jù)進(jìn)行數(shù)據(jù)的增刪改查。
2.2Android客戶端
教學(xué)App采用B/S模式,用戶與App的交互界面進(jìn)行交互,同時(shí)與云服務(wù)器的數(shù)據(jù)進(jìn)行數(shù)據(jù)交互。云服務(wù)器向Android客戶端提供數(shù)據(jù)接口方法以便用戶進(jìn)行數(shù)據(jù)操作。在Android端App的開發(fā)過程中,利用XML進(jìn)行界面設(shè)計(jì)[4],使用include 進(jìn)行界面復(fù)用,優(yōu)化布局,功能模塊使用Activity、Fragment實(shí)現(xiàn)與用戶的交互App通過Gson、Json與云服務(wù)器的數(shù)據(jù)交互[3]。 主要功能如圖3所示。
2.3 數(shù)據(jù)庫(kù)設(shè)計(jì)
數(shù)據(jù)庫(kù)中有7張表,各數(shù)據(jù)表的關(guān)系說(shuō)明(E-R圖)如圖1所示。
3、系統(tǒng)實(shí)現(xiàn)
3.1數(shù)據(jù)庫(kù)的建立與連接
登錄應(yīng)用的賬號(hào)到控制臺(tái),在控制臺(tái)界面手動(dòng)添加以上數(shù)據(jù)表?;蛘咴诔绦蛑袆?chuàng)建對(duì)應(yīng)數(shù)據(jù)表的實(shí)體類,程序首次運(yùn)行會(huì)自動(dòng)在云服務(wù)器創(chuàng)建相應(yīng)的數(shù)據(jù)表。
3.2云服務(wù)器的設(shè)置
創(chuàng)建一個(gè)應(yīng)用,得到相應(yīng)的 Appkey,以便在程序中使用[4]。可以手動(dòng)在云服務(wù)器創(chuàng)建數(shù)據(jù)表,添加測(cè)試數(shù)據(jù)。
初始化Bmob SDK:Bmob.initialize(this, "6672f54e9508f8fad63daa61f2b59c9c");
3.3Android App的設(shè)計(jì)與實(shí)現(xiàn)
1)學(xué)生用戶登錄注冊(cè)
設(shè)計(jì)思想:學(xué)生用戶啟動(dòng)教學(xué)App時(shí),進(jìn)入登錄頁(yè)面LoginActivity,輸入賬號(hào)和正確的密碼點(diǎn)擊登錄按鈕,通過身份驗(yàn)證后進(jìn)入主頁(yè)面MainActivity。否則,會(huì)提示登錄失敗。
點(diǎn)擊頂部工具條的右上角的“注冊(cè)”按鈕,跳轉(zhuǎn)到注冊(cè)頁(yè)面SigninActivity。輸入用戶名和兩次密碼即可注冊(cè)。注冊(cè)會(huì)檢查用戶名是否存在,如存在會(huì)提示用戶更改用戶名。
2)課程相關(guān)操作
設(shè)計(jì)思想:當(dāng)學(xué)生用戶成功登錄后,會(huì)自動(dòng)跳轉(zhuǎn)到主頁(yè)面(MainActivity),主頁(yè)面上為一個(gè)ListView顯示所有課程。而一個(gè)ListView就需要一個(gè)適配器與一個(gè)數(shù)據(jù)源,數(shù)據(jù)源就是從Bmob后端云傳遞過來(lái)的課程集合。
用戶在瀏覽課程后,可以點(diǎn)擊任意一門課程,進(jìn)入課程詳情頁(yè)面(CourseItemActivity),首先會(huì)檢查用戶是否已學(xué)習(xí)過該課程,在課程詳情中還可以查看該課程的詳細(xì)情況,然后可以選擇是否可以對(duì)課程進(jìn)行學(xué)習(xí)或下載課程資源。
3)文章相關(guān)操作
用戶進(jìn)入社區(qū)部分時(shí),會(huì)顯示社區(qū)里已有的文章。用戶可以點(diǎn)擊自己喜歡的文章,進(jìn)入文章詳情頁(yè)面(ChatPostItemActivity)。在這里可以查看文章的作者,發(fā)表時(shí)間,內(nèi)容以及相關(guān)評(píng)論。用戶可以文章進(jìn)行點(diǎn)評(píng)、收藏。此外,用戶可以發(fā)表自己的文章,與其他用戶進(jìn)行交流與分享。
4)個(gè)人設(shè)置相關(guān)操作
設(shè)計(jì)思想:用戶切換到個(gè)人設(shè)置時(shí),可以查看自己的收藏的課程,收藏的文章以及自己發(fā)表的文章。此外還可以修改個(gè)人的信息,清理緩存,檢查版本更新等功能。個(gè)
4、測(cè)試
4.1功能測(cè)試
安裝教學(xué)App到Android手機(jī)上,進(jìn)行功能測(cè)試,結(jié)果為所有功能均能正常使用。
4.2兼容性測(cè)試
Android客戶端兼容性測(cè)試通過云測(cè)試平臺(tái)Testin[5](Testin是全球最大的移動(dòng)游戲、應(yīng)用真機(jī)和用戶云測(cè)試平臺(tái))進(jìn)行,通過對(duì)市場(chǎng)占有率較高的50款安卓設(shè)備進(jìn)行測(cè)試,結(jié)果為兼容性全部通過。
4.3安全性測(cè)試
Android客戶端的安全性測(cè)試在騰訊手機(jī)管家進(jìn)行在線測(cè)試,測(cè)試結(jié)果為安全。
這里針對(duì)APP的功能、兼容性以及安全性等三個(gè)方面進(jìn)行測(cè)試,測(cè)試結(jié)果反映運(yùn)行功能穩(wěn)定、兼容性好,有較好的安全性。
5、總結(jié)
本文設(shè)計(jì)的App能夠?yàn)閷W(xué)生提供高效、自主選擇學(xué)習(xí)時(shí)間與課程的學(xué)習(xí)方式,且所有的數(shù)據(jù)處理都通過云服務(wù)器進(jìn)行處理,提高應(yīng)用的處理速度與健壯性。本應(yīng)用已投入使用,運(yùn)行效果較好。
參考文獻(xiàn):
[1]李云飛,王敏娟等.移動(dòng)學(xué)習(xí)系統(tǒng)及其相關(guān)學(xué)習(xí)模式[J].開放教育研究,2012(01)
[2]方欣,楊勃等.Android Studio應(yīng)用開發(fā)-基礎(chǔ)入門與應(yīng)用實(shí)戰(zhàn)[M].北京:電子工業(yè)出版社,2017:006
[3]黃彬華.Android5.X App開發(fā)實(shí)踐-使用Android Studio開發(fā)[M].北京:清華大學(xué)出版社,2016:305-312.
[4]https://docs.bmob.cn/data/Android/a_faststart/doc/index.html#獲取應(yīng)用密鑰和下載SDK
[5]https://www.testin.cn/business/compatible.htmendprint