付長鳳
(泉州信息工程學院,福建泉州 362000)
Android移動學習平臺客戶端的搭建
付長鳳
(泉州信息工程學院,福建泉州362000)
移動學習已經越來越成為人們生活中的一個重要的學習手段,基于Android系統的高校校園通作為一種移動學習的工具應運而生。移動端可以實現用戶登錄、個人應用、學院應用、及其它等功能。利用Android布局技術實現各個模塊的頁面搭建。
Android;移動學習;布局
移動學習是遠程教育發展的新階段,是傳統教育的重要外延及有益補充,并因其具有“Anyone Anytime Anywhere Anystyle”自由式學習特征,可以在廣闊范圍內有效地滿足人們日益增長的學習需求,緩解當前傳統教育的教學壓力。
針對高校內師生搭建的高校校園通移動學習平臺,即可為老師及學生在教與學的過程中搭建起線上線下順暢溝通的渠道和橋梁。移動學習平臺的建立可使學生隨時獲取學習資料,進入學習狀態,同時還能夠利用互聯網的共享資源條件進一步擴展學習范圍。同時,在學習中產生的疑問將能夠利用便捷直接的方式獲取相關教師的解答。另外,教師就可以利用線上線下開設業余課程,從而對教學進行改革,達到按需教學的理想作用和最佳效果。
高校校園通移動學習平臺分為PC管理端和移動學習端。其中,PC管理端主要是由管理員實行后臺管理,教師進行信息發布。移動學習端則主要是面對學生,可通過wifi或移動基站進入平臺學習。故探索綜合平臺的各類現實需求可得以下移動學習平臺結構圖,如圖1所示。
特別地,研究可知移動學習端的用戶主要是教師和學生。學生在本移動平臺學習不需要進行注冊,而是只需在移動終端登錄頁面并輸入學號、密碼,匹配學生庫,由此即實現了學員用戶的一次登錄。
在此基礎上,移動應用是否成功需要提供一個突出的用戶體驗,因此在進行系統設計時,用戶體驗隨即成為需要優先實現的主題元素。快速、響應、無縫是開發用戶體驗必須具備的3個重要特征。具體來說,就是運行速度快,反應敏捷和良好的交互。

圖1 移動學習平臺結構圖Fig.1 Structure of mobile learning platform
綜合以上論述可得,研究中移動教學平臺客戶端主要功能模塊的分析描述可如表1所示。
2.1實現技術
在Android的系統中,研究所涉及的布局文件主要包括17個,可分述如下:sing.xml(登錄)mainactivity.xml(主界面)、myapp.xml(個人應用)、myclass.xml(我的課堂)、worknotic.xml(作業通知)、achievinquiry.xml(成績查詢)、photo.xml(拍一拍)、scann.xml(掃一掃)、shake.xml(搖一搖)、stuapp.xml(學校應用)、question.xml(題庫)、lineclass.xml(在線課堂)、poster.xml(學院海報)、radio.xml(學院廣播站)、yuanchat.xml(院信)、friendcircle.xml(朋友圈)、setting.xml(設置)。
登錄界面的布局效果如圖2所示,布局結構則如圖3所示。

表1 安卓客戶端Tab.1 Android client

圖2 登錄界面Fig.2 The login interface

圖3 登錄界面布局結構圖Fig.3 Layout structure of login interface
作為整個應用程序的主窗體,主界面貫穿于整個應用程序,因此在建立頁面布局時,需將其單獨作為一個頁面實現整合處理,而將其他應用界面嵌入主界面當中,而點擊不同按鈕時只是切換各級嵌入界面,而無需改變主界面,從而降低了程序加載過程中的內存負荷,提高了運行效率。主界面如圖4所示,子界面以我的課堂為例,如圖5所示。

圖4 主界面Fig.4 Main Interface

圖5 子界面Fig.5 Sub interface
2.2實現代碼
2.2.1將“個人應用”嵌入主界面的設計實現
將“個人應用”嵌入到主界面中的代碼如下:

程序中,在主界面的空白區域添加一個LinearLayout,ID號為content。在MainActivity.java中創建2個變量分別為:LinearLayout變量content,View變量myAppView。
再利用語句content=(LinearLayout)findViewById(R.id. content);獲取到主界面中的LinearLayout布局組件。建立LayoutInflater類創建factor對象并利用對象的inflate獲取到布局文件myclass.xml。而后,又使用LinearLayout類中的addView方法將最近獲取到的布局文件myapp加載進來,完成整個界面的建立。最終實現效果如圖6所示。

圖6 界面嵌套效果圖Fig.6 The effect of interface nesting
2.2.2點擊“個人應用”時的設計實現
不僅如此,在“個人應用”界面嵌入到主界面的同時,還需要在“個人應用”對應的按鍵上添加事件監聽,即:當“個人應用”標簽被點擊時需要進行頁面加載,同樣,當點擊“學校應用”標簽時,也需要進行加載stuapp.xml頁面。“學校應用”界面與“個人應用界面”的加載方法類似,在此不再贅述。至此,給出共享代碼實現,具體可做如下呈現。

2.2.3“個人應用”頁面跳轉和Activity生命周期分析
“個人應用”界面的下一級界面切換采用直接頁面跳轉的方法。由于直接跳轉到另一全新的頁面,需要調用一個新的onCreate方法,因此需要創建一個Activity新類來裝載這個方法。又因為創建了新的Activity類需要在AndroidManifest. xml文件中對其進行注冊,實現代碼可表述為:
<activity android:name="包名.Activity文件名"/>
Activity生命周期包括7個方法,分別表述為:onCreate()、onStart()、onResume()、onPause()、onStop()、onRestart()、onDestroy(),這些方法的啟動過程是:當一個Activity啟動時會執行onCreate()方法,如果同一Activity在啟動之后是處于可見狀態,onStart()方法就會發生調用。當前處于可見狀態的Activity在獲得焦點時便調用onResume()方法。通常情況下,onCreate()方法、onStart()方法、onResume()方法即會在一個Activity啟動之后依次連續進入調用。而當Activity被部分遮擋時,則會調用onPause()方法,使其失去焦點處于不可編輯狀態。如果另一個Activity啟動而將當前的Activity完全遮擋時,就會在調用onPause()方法之后,還會進一步調用onStop()方法。另一個Activity也如上將依次調用onCreate()方法、onStart()方法和onResume()方法。這里需要注意的是第一個Activity的onStop()方法是在第二個Activity的3個方法調用完成之后才調用的。在此之后,當第2個Activity被關閉時就會順序調用onPause()方法、onStop()方法和onDestroy()方法,且將第2個Activity銷毀,而相應地,第一個Activity則將分別先后調用onRestart()、onStart()方法和onResume()方法恢復第一個Activity的活動狀態。
移動學習已經日漸成為當今人們生活中的重要學習模式和學習手段,基于Android系統的高校校園通作為一種移動學習的工具可將零散時間有效利用起來進行拓展學習,不僅符合了現代人的快節奏緊張生活,而且對當下創建“學習型社會”具有良好有益的現實意義和應用價值。
[1]聶芬,王運生.基于LinearLayou的多級嵌套界面設計[J].智能計算機與應用,2014,4(1):72-74.
[2]孫更新.Android從入門到精通[M].北京:電子工業出版社,2011.
Research on client-end construction of mobile learning system based on Android
FU Changfeng
(Quanzhou Institute of Information Engineering,Quanzhou Fujian 362000,China)
Nowadays,mobile learning has become more and more important.As a kind of mobile learning tool,the university campus communication based on Android system emerges as the times require.Mobile terminal can achieve user login,personal applications,college applications,and other functions.The paper uses the technology of android’s layout to achieve page establishment of the various modules.
Android;mobile Learning;layout
TP391
A
2095-2163(2016)03-0132-03
2016-06-01
福建省教育科學“十二五”規劃2014年度課題項目(FJJKCGZ14-040)。作者簡介:付長鳳(1980-),女,碩士,講師,主要研究方向:軟件技術、物聯網。