• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于Android手機(jī)的校園移動(dòng)平臺(tái)設(shè)計(jì)

      2015-09-18 13:21:35曹雙雙
      軟件導(dǎo)刊 2015年8期
      關(guān)鍵詞:平臺(tái)設(shè)計(jì)

      曹雙雙

      摘要:教育信息化促使校園建設(shè)不斷完善,信息移動(dòng)化正逐漸走進(jìn)校園生活。為了提高高校信息化水平,方便Android智能手機(jī)用戶查詢學(xué)校相關(guān)信息,在深入進(jìn)行需求分析基礎(chǔ)上,利用Android技術(shù)和SQLite數(shù)據(jù)庫,以湖北師范學(xué)院為例,研究了校園移動(dòng)平臺(tái)客戶端的設(shè)計(jì)與實(shí)現(xiàn)過程。該客戶端基于Java語言開發(fā)完成,實(shí)現(xiàn)了校園新聞公告查詢、課程表查詢、空教室查詢和教務(wù)信息查詢等功能,并且已經(jīng)在Android5.0仿真設(shè)備上測試通過。

      關(guān)鍵詞:Android;校園移動(dòng)平臺(tái);平臺(tái)設(shè)計(jì)

      DOIDOI:10.11907/rjdk.151754

      中圖分類號(hào):TP319

      文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào)文章編號(hào):16727800(2015)008017903

      0 引言

      隨著移動(dòng)終端的普及,移動(dòng)互聯(lián)網(wǎng)發(fā)展正日漸升溫,在無線通訊網(wǎng)絡(luò)技術(shù)發(fā)展成熟的大環(huán)境下,大學(xué)生這一特殊群體中Android智能機(jī)的使用率較高,且手機(jī)的智能化程度越來越高,手機(jī)的傳輸速度越來越快,手機(jī)也早已突破傳統(tǒng)的功能應(yīng)用。近年來,隨著高校擴(kuò)招,學(xué)院師生數(shù)量急劇膨脹,加上信息社會(huì)的快速發(fā)展,校園的信息量也逐漸變得龐大。在高校日常工作中,利用智能手機(jī)操作教務(wù)系統(tǒng)實(shí)時(shí)發(fā)布學(xué)生信息、教務(wù)信息、放假信息等內(nèi)容,可以讓教學(xué)工作有序進(jìn)行,師生使用智能手機(jī)等移動(dòng)終端實(shí)現(xiàn)校園信息化管理具有深刻的現(xiàn)實(shí)意義與極高的應(yīng)用價(jià)值[1]。

      1 相關(guān)技術(shù)

      1.1 Java技術(shù)

      Java是一種可以撰寫跨平臺(tái)的、面向?qū)ο蟮某绦蛟O(shè)計(jì)語言,擁有卓越的通用性、高效性、平臺(tái)移植性和安全性等優(yōu)良特性,在Android開發(fā)中是主要開發(fā)語言之一。

      1.2 XML技術(shù)與MVC架構(gòu)

      XML(eXtensible Markup Language)中文名為可擴(kuò)展標(biāo)記語言,是互聯(lián)網(wǎng)聯(lián)盟(W3C)于1998年制定的一種語言規(guī)范,是全新的描述結(jié)構(gòu)化數(shù)據(jù)的語言[2]。在Android開發(fā)中,XML主要用于應(yīng)用權(quán)限配置、Activity注冊、布局文件編寫、資源存儲(chǔ)與標(biāo)記等。

      MVC是一種架構(gòu)型模式,用來指導(dǎo)開發(fā)者改善應(yīng)用程序架構(gòu),使得開發(fā)和維護(hù)效率更高。在MVC中,應(yīng)用程序被劃分為模型(Model)、視圖(View)、控制器(Controller)3部分。運(yùn)用MVC模式進(jìn)行開發(fā),將有利于數(shù)據(jù)維護(hù)并提升開發(fā)效率。

      1.3 Android開發(fā)技術(shù)

      Android是一種基于Linux的開放源碼系統(tǒng)。據(jù)CNET報(bào)道,調(diào)研機(jī)構(gòu)Strategy Analytics最新的第三季度報(bào)告中顯示,Android以83.6%的市場占有率穩(wěn)居移動(dòng)操作系統(tǒng)市場之首。因此,選用Android系統(tǒng)進(jìn)行開發(fā)有利于用戶量的提升[4]。

      1.4 SQLite數(shù)據(jù)庫

      SQLite是Android系統(tǒng)自帶的輕量型、運(yùn)算速度極快的嵌入式關(guān)系型數(shù)據(jù)庫,它不僅支持標(biāo)準(zhǔn)的SQL語法,還可以對Android封裝好的API進(jìn)行操作,讓存儲(chǔ)和讀取數(shù)據(jù)變得方便。使用SQLite可以方便地調(diào)用后臺(tái)數(shù)據(jù)庫。

      2 系統(tǒng)分析與設(shè)計(jì)

      2.1 需求分析

      2.1.1 開發(fā)平臺(tái)需求和運(yùn)行需求

      本系統(tǒng)在win7操作系統(tǒng)上開發(fā),開發(fā)環(huán)境包括eclipse、JDK、android SDK、Android eclipse ADT。開發(fā)后能在大部分Android手機(jī)上使用,支持Android最新系統(tǒng)版本。其安全性、可靠性和易用性等非功能性需求也可得到保障。

      2.1.2 功能需求

      系統(tǒng)將滿足用戶隨時(shí)隨地利用移動(dòng)設(shè)備訪問校內(nèi)資源的需求,并可解決傳統(tǒng)移動(dòng)設(shè)備訪問校園網(wǎng)絡(luò)的弊端與局限??蛻舳斯δ苄枨蟀ń虅?wù)信息查詢、校園新聞公告、圖書館信息查詢、內(nèi)置瀏覽器等。

      2.2 功能模塊設(shè)計(jì)

      2.2.1 模擬登錄

      模擬登錄主要通過使用模擬登錄界面,獲取學(xué)號(hào)與密碼以及用戶類別,運(yùn)用HttpURLConnection、HttpClient訪問教務(wù)系統(tǒng)。關(guān)鍵代碼如下:

      //設(shè)置編碼方式

      HttpEntity entity = new UrlEncodedFormEntity (params,HTTP.UTF_8); httpRequest.setEntity(entity);

      //新建 HTTP 客戶端

      HttpClient httpClient = new DefaultHttpClient();

      //執(zhí)行請求得到響應(yīng)

      HttpResponse httpResponse= httpClient.execute (httpRequest);

      //判斷響應(yīng)的狀態(tài)是否成功

      if (httpResponse.getStatusLine () .getStatusCode () == HttpStatus.SC_OK)

      {

      //得到結(jié)果字符串

      String result = EntityUtils.toString ( httpResponse.getEntity(),"gb2312");

      String s1 = " alert ("" ;

      if ( result.indexOf (s1) != result.lastIndexOf (s1) && result.indexOf (" expandingWindow (" http:") ==-1)

      { int b1 = result.lastIndexOf ( s1) +s1. length () ;

      int b2 = result.lastIndexOf (" ") ;") ;

      String outstr = result.substring (b1, b2) ;

      txtsearchResult.setText(outstr);

      } else {

      Header h []= httpResponse.getAllHeaders ();

      String sitecookie = "" ;

      String c ="" ;

      for (int i = 0; i < h.length; i++)

      { c = h [i].getName () ;

      if (c.trim () .equals (" Set-Cookie"))

      { sitecookie=h[i].getValue(); } }

      2.2.2 教務(wù)信息查詢模塊

      通過教務(wù)系統(tǒng)的模擬登錄可以查詢開設(shè)課程、選課,并查看課程表、課程信息和成績。每個(gè)模塊涉及的類不同,如包含了課程基本屬性及其屬性的get()、set()方法來獲取、存入和刪除課程信息的類Mcourse,通過新建HTTP客戶端,獲取網(wǎng)頁信息,運(yùn)用正則表達(dá)式獲取其中的課程信息,再通過調(diào)用各類View的setText()方法使課程信息呈現(xiàn)在屏幕控件上。而其它類如MScore包含了成績基本信息及其屬性的get()、set()方法,以及獲取、存入和刪除課程成績的數(shù)據(jù)庫操作;ActivityPickCourse完成查看搜索結(jié)果的界面,取出由ActivitySearchCourse存入數(shù)據(jù)庫的數(shù)據(jù);ActivityMyScore完成課程表的界面,實(shí)現(xiàn)了在ProtocolMyCourse文件中定義的ProtocolMyCourseDelegate接口等。

      該模塊最有特色的一個(gè)地方就是在原有教務(wù)信息查詢系統(tǒng)基礎(chǔ)上增加了空教室查詢功能。由于課程安排與學(xué)生活動(dòng)等原因,無法通過計(jì)算來獲取空教室,因而只能通過教務(wù)處發(fā)布的自習(xí)教室表格導(dǎo)入數(shù)據(jù)庫來實(shí)現(xiàn)空教室的查詢。關(guān)鍵代碼如下:

      --如果接受數(shù)據(jù)導(dǎo)入的表已經(jīng)存在

      insert into 自習(xí)教室表 select * from OPENROWSET('MICROSOFT.JET.OLEDB.4.0' ,

      'Excel 5.0; HDR=YES;DATABASE=c:test.xls',sheet1$)

      --如果導(dǎo)入數(shù)據(jù)并生成表

      select * into 自習(xí)教室表 from

      OPENROWSET('MICROSOFT.JET.OLEDB.4.0' ,

      'Excel 5.0;HDR=YES;DATABASE=c:test.xls',sheet1$)

      此時(shí)使用的數(shù)據(jù)庫是Android自帶的SQLite輕量級(jí)的嵌入式關(guān)系型數(shù)據(jù)庫,可以大大提高效率。而傳統(tǒng)的JDBC需要消耗大量資源,對移動(dòng)設(shè)備并不適用,可以使用Android自帶的SQLiteOpenHelpr類對數(shù)據(jù)庫進(jìn)行操作。

      2.2.3 校園新聞公告模塊

      通過ListView控件對新聞和公告進(jìn)行控制,在完成ListView中各子項(xiàng)的布局后將其填充至Listview控件中;然后創(chuàng)建適配器類AltColorAdapter,讓其繼承SimpleAdapter基類,重寫其getView()方法,完成列表中隔行換色顯示效果;接著調(diào)用ListView控件的setAdapter()方法與AltColorAdapter類對象進(jìn)行綁定;最后調(diào)用ListView控件的setOnItemClickListener()方法來設(shè)置列表中子項(xiàng)的點(diǎn)擊操作,實(shí)時(shí)獲取學(xué)校官網(wǎng)的新聞與通知公告,運(yùn)用XML存儲(chǔ)新聞標(biāo)題、內(nèi)容、時(shí)間。關(guān)鍵代碼如下:

      //使用SimpleAdapter綁定數(shù)據(jù)

      private void bindData1()

      {

      List list=tService.findSplitPage(0, 20, "");

      List> data = new ArrayList>();

      for(testTable t: list)

      {

      HashMap h=new HashMap();

      h.put("name", t.getName());

      h.put("memo", t.getMemo());

      h.put("id", t.getId());

      data.add(h);

      }

      SimpleAdapter adapter=new SimpleAdapter(this, data, R.layout.item,

      new String[]{"name","memo"},new int[]{R.id.testname,R.id.testmemo});

      listView.setAdapter(adapter);

      }

      2.2.4 圖書館信息查詢模塊

      圖書館模塊完成了圖書搜索、預(yù)約、借閱歷史查看、續(xù)借、已借未還記錄查看5個(gè)功能。根據(jù)手機(jī)界面易用性的非功能性需求,圖書館模塊分為登錄主界面和兩個(gè)功能模塊,即圖書搜索(包括搜索和預(yù)約)、圖書管理(包括查看借閱歷史、查看未還記錄和續(xù)借)。主界面用來處理普通用戶和管理員登錄的請求。主要代碼如下:

      if(user.getPassword().equalsIgnoreCase(password))

      {

      flag=true;

      }else{

      flag=false;

      }

      圖書搜索主要用于查詢用戶需要的圖書信息,包括查看是否被預(yù)約。部分代碼如下:

      try {

      bookList=dao.findBook (bookName);

      {

      setAtribute(“bookList”,bookList) ;

      } catch (Exception e) {

      // TODO Auto-generated catch block

      e.printStackTrace();

      }

      }

      管理圖書模塊主要幫助用戶查詢自己的借閱信息,包括書籍名稱、借閱歷史、未還記錄和續(xù)借等功能。部分代碼如下:

      int number=Integer.parseInt(number);

      if(number>0)

      {

      while(i

      {

      Book book1=new Book();

      i++;

      …………

      try {

      LibraryDao.save(book1);

      } catch (Exception e) {

      // TODO Auto-generated catch block

      e.printStackTrace();

      }

      }

      2.2.5 內(nèi)置瀏覽器

      使用WebView控件可以輕松置入瀏覽器,通過對常用網(wǎng)站的設(shè)置,可以方便師生進(jìn)入教務(wù)處、OA辦公系統(tǒng)、教務(wù)系統(tǒng)、以及學(xué)校網(wǎng)站等,極大減少了輸入地址以及尋找超鏈接的時(shí)間。不用單獨(dú)打開瀏覽器應(yīng)用,節(jié)約了時(shí)間,減少了內(nèi)存消耗。

      2.3 系統(tǒng)框架

      系統(tǒng)采用C/S結(jié)構(gòu),有利于降低服務(wù)器的負(fù)擔(dān)。由于后臺(tái)數(shù)據(jù)庫和服務(wù)器的集中處理,也降低了客戶端的運(yùn)行復(fù)雜程度,減少了對手機(jī)資源的需求和占用。

      2.4 系統(tǒng)維護(hù)

      數(shù)據(jù)庫的維護(hù)和更新需要有專人及時(shí)處理,即將過時(shí)的信息難以滿足用戶需求。網(wǎng)絡(luò)數(shù)據(jù)的傳輸安全也非常重要,服務(wù)器中存在著大量的個(gè)人信息,如因安全性問題導(dǎo)致信息泄漏后果將不堪設(shè)想。這需要在服務(wù)器建設(shè)與維護(hù)中更加注意安全性問題,以保證系統(tǒng)的正常運(yùn)行。

      3 結(jié)語

      隨著“互聯(lián)網(wǎng)+”概念的推出和智能手機(jī)的普及,基于Android手機(jī)的校園應(yīng)用系統(tǒng)得到了廣泛應(yīng)用。本文結(jié)合校園實(shí)際需求,進(jìn)行了基于Android手機(jī)的校園移動(dòng)平臺(tái)設(shè)計(jì),該平臺(tái)能為師生提供便捷的信息查詢等功能,具有一定的應(yīng)用價(jià)值。同時(shí)其可移植性強(qiáng),幾乎所有校園平臺(tái)都可以此為藍(lán)本進(jìn)行二次開發(fā),并且對地方門戶新聞的應(yīng)用開發(fā)也具有一定的參考價(jià)值。

      參考文獻(xiàn):

      [1] 熊健.基于Android平臺(tái)的企業(yè)移動(dòng)應(yīng)用開發(fā)框架的分析與設(shè)計(jì)[J].軟件,2012,33(11):4446.

      [2] 李巖.基于XML的電子政務(wù)架構(gòu)XML_GOV[D].北京:清華大學(xué),2004.

      [3] 陳臣,王斌,孫琳,等.研磨Struts2[M].北京:清華大學(xué)出版社,2011.

      [4] 郭霖.第一行代碼Android[M].北京:人民郵電出版社,2014.

      [5] 趙英,王飛.手持移動(dòng)設(shè)備在校園信息系統(tǒng)中的應(yīng)用[J].計(jì)算機(jī)技術(shù)與發(fā)展,2012,22(12):195197.

      [6] 王述聰.基于Android手機(jī)應(yīng)用的在線課程表查詢[J].電腦編程技巧與維護(hù),2013(22):5254.

      (責(zé)任編輯:孫 娟)

      猜你喜歡
      平臺(tái)設(shè)計(jì)
      中小型眼鏡行業(yè)綜合O2O電子商務(wù)平臺(tái)的設(shè)計(jì)
      小型風(fēng)力發(fā)電實(shí)驗(yàn)裝置的設(shè)計(jì)與制作
      基于空間的高職院校畢業(yè)設(shè)計(jì)過程管理與監(jiān)控平臺(tái)的設(shè)計(jì)
      廣電網(wǎng)絡(luò)前端業(yè)務(wù)融合云服務(wù)平臺(tái)設(shè)計(jì)
      基于工作流的水運(yùn)應(yīng)急信息管理平臺(tái)設(shè)計(jì) 
      MOOC時(shí)代創(chuàng)新區(qū)域教師培訓(xùn)課程建設(shè)研究
      日土县| 曲松县| 得荣县| 滨海县| 集贤县| 蒙自县| 龙山县| 漳浦县| 汉阴县| 苍梧县| 富阳市| 永康市| 潞城市| 永年县| 靖远县| 永仁县| 鄂州市| 黎川县| 富平县| 乐都县| 呼图壁县| 上林县| 互助| 海安县| 余江县| 咸丰县| 桑日县| 即墨市| 丹阳市| 永新县| 洛南县| 蓝山县| 永新县| 高雄市| 和龙市| 安吉县| 洞口县| 土默特右旗| 大连市| 桃园县| 陈巴尔虎旗|