畢業(yè)設計基于android的課程表開發(fā)的設計與實現(xiàn)整理版_第1頁
畢業(yè)設計基于android的課程表開發(fā)的設計與實現(xiàn)整理版_第2頁
畢業(yè)設計基于android的課程表開發(fā)的設計與實現(xiàn)整理版_第3頁
畢業(yè)設計基于android的課程表開發(fā)的設計與實現(xiàn)整理版_第4頁
畢業(yè)設計基于android的課程表開發(fā)的設計與實現(xiàn)整理版_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、5目錄摘要3引言31 Android的系統(tǒng)研究41.1 Android平臺介紹41.2 Android構架61.2.1 Android的構架綜述61.2.2 內核層72 Android的開發(fā)72.1 Android開發(fā)工具72.2 Android開發(fā)平臺的搭建73 Android的課程表開發(fā)83.1 項目需求分析83.2 項目目錄分析83.3 系統(tǒng)功能的主要功能實現(xiàn)93.3.1 TimeTable文件:當天課程的顯示93.3.2 Showtable文件:整個星期的課程顯示101.2 WeekDay:課程表管理。101.2 Edit文件:課程表的修改和添加111.2 數(shù)據(jù)庫實現(xiàn):11總結12參考

2、文獻13致謝13Basedonandroidfilesdevelopment13Keyword14基于android的課程表開發(fā)摘要:在科學技術高速發(fā)展的今天,手持終端設備已經從接打電話的簡單功能,跨越到音樂,影音,游戲,商務多種功能。原始的通信傳輸已經滿足不了,當今高速發(fā)達的信息社會人們的需求。Goole公司開發(fā)的Android順應時代而生,Google看到了智能手機市場上的商機,搭載Android操作系統(tǒng)的手機一經上市,短短三年時光,Android發(fā)展的之迅速,讓蘋果(ios),諾基亞(塞班),黑莓(BlackBerry)這些手機望族們完全措手不及。據(jù)2012年2月數(shù)據(jù)顯示,Android

3、占據(jù)全球智能手機操作系統(tǒng)市場52.5%的份額,中國市場占有率為68.4%。Android系統(tǒng)也從1.5發(fā)展到2.4,以及平板電腦系統(tǒng)3.0??偨Yandroid發(fā)展在原因主要是因為它擁有五大特點:一、開放性,二、掙脫運營商的束縛,三、豐富的硬件選擇,四、不受任何限制的開發(fā)商,五、無縫結合的Google應用。關鍵字:androidandroid特點google引言隨著手機的不斷發(fā)展,擁有智能手機已經不再是奢侈昂貴的象征。在智能手機的爭奪戰(zhàn)中,Android不得不說是減低智能手機價格的一大功臣。Android系統(tǒng)是谷歌公司開發(fā)的免費開源的移動終端操作系統(tǒng),適合于手機和平板電腦。開始動搖蘋果手機走高端

4、客戶大局勢。也動搖在手機市場在長久以來在分割局勢。當今,智能手機所搭載的智能手機操作系統(tǒng)平臺大致如下:3 SymbianOS搭載在具有廣?S群眾基礎的Nokia手機上,并以此占據(jù)了智能手機的半壁江山,其主要的智能平臺為大部分諾基亞手機搭載的的S60系列和索尼愛立信手機搭載的UIQ系列;4 WindowsMobile。Microsoft在桌面系統(tǒng)獲得成功之后,覬覦手機的巨大市場開發(fā)的智能手機系統(tǒng),因其界面和桌面windows系統(tǒng)較為接近和其強大的微軟后臺,成為國內市場占有率緊跟Symbian之后成為國人比較喜歡的操作系統(tǒng);5 MacOSX(iPhoneOS)。蘋果一直都是個性和時尚的代名詞,受廣

5、大中高層次手機用戶的喜歡。iPhone,以其酷炫的UI和獨特的操作方式,給傳統(tǒng)手機帶來一場革命,同時也給SymbianWWindowsMobile帶來巨大沖擊的;6 Blackberry。以商務應用為主,在國外尤其是歐美等地,受到商務人士歡迎的BlackBarry占據(jù)了近一半的無線商務電子郵件業(yè)務市場,就連美國總統(tǒng)奧巴馬也使用該品牌的手機。但是在國內還是受到一些基礎設施的制約,所以在國內市場不是太好;7 PalmOS專門為PDRF發(fā),一度占據(jù)了90%勺PDA場的份額,雖然其并不專門針對于手機設計,但是以其優(yōu)秀性和對移動設備的支持同樣使其能夠成為一個優(yōu)秀的手機操作系統(tǒng)。8 Linuxo對于Lin

6、ux系統(tǒng),想必很多人都不會太陌生,桌面系統(tǒng)中以其開源的特性,贏得了不少用戶的喜愛。智能手機平臺的Linux同樣具有源代碼開放、軟件授權費用低、應用開發(fā)人才資源豐富等優(yōu)點,便于開發(fā)個人和行業(yè)應用。但是因為其平臺上的應用少而不被國人所接受。9 GoogleAndroid。自2007年推出,2008年第一部搭載Android系統(tǒng)的G1上市至今不到短短三年時間,他已被許多人接受并且認可及歡迎。Android的系統(tǒng)研究Android平臺介紹Android從誕生到現(xiàn)在也不過4年的時間,但是也就是在這短短的3年內Android創(chuàng)造了一個迅速被人們知曉并追捧的奇跡。2007年11月5日,Google與其他33

7、家手機制造商(包含摩托羅拉、宏達電、三星、LG)、手機晶片供應商、軟硬體供應商、電信業(yè)者所聯(lián)合組成的開放手持裝置聯(lián)盟(OpenHandsetAlliance),發(fā)布了名為Android的開放手機軟硬體平臺。該聯(lián)盟的成員宣布日后都會在Android平臺上開發(fā)他們的新的業(yè)務。不久之后的2008年9月24日,T-Mobile公司首度公布第一臺Android手機(G1)的細節(jié),同日Google也放出了AndroidSDK1.0rc1。這樣Android進入了人們的視線。Android以其特有的開放性優(yōu)勢越來越受到人們和智能手機廠商的關注。對于第三放軟件開發(fā)商來說,Android是一個真正意義上的開放性

8、移動設備綜合平臺,Android系統(tǒng)是免費向開發(fā)人員提供的,這樣就避免了開發(fā)中專利權的障礙。因此,就能夠為第三方軟件開發(fā)商省下大筆資金。對于設備制造商來說,Android是一個免費的平臺。當設備制造商每制造一臺手機時,那些支付給手機系統(tǒng)制造商的費用也省去了,這樣也降低了每臺手機的生產費用,同時就降低了手機的價格,這樣在市場上也提高了競爭力。對硬體開發(fā)廠商來說,Android也是個開放的平臺。使用Android平臺的廠商可以更具自己的需求以及能力為Android開發(fā)具有該廠商特色的功能,但是這樣的增加完全不用考慮版權的問題。同時Android平臺支持各種先進的網絡、繪圖、3D處理能力,可以用來提

9、供更好的使用者體驗。GoogleAndroid系統(tǒng)作為一個完全開源的操作系統(tǒng),是由操作系統(tǒng)(Linux)、中間件以及核心應用程序組成的軟件棧(softwarestack)。通過androidSDK提供的API以及相應的開發(fā)工具,程序員可以很方便的開發(fā)android平臺上的應用程序。其整個系統(tǒng)由應用程序(Application),應用程序框架(ApplicationFramework),應用程序庫(Libraries),Android運行庫(AndroidRuntime),Linux內核(LinuxKernel)五個部分組成。Android操作系統(tǒng)內置了一部分應用程序,包括電子郵件客戶端、SMS

10、程序、日歷、地圖、瀏覽器、通訊錄以及其他的程序,值得一提的是這些所有的程序都是用java編寫的。因為應用程序框架使得組件更易于重用,所以開發(fā)者的應用程序可以很容易的調用API函數(shù)實現(xiàn)我們想要的功能。在遵守應用程序框架的安全機制約束的前提下,開發(fā)者開發(fā)的一個應用程序可以使用其他程序所開發(fā)的功能。雖然Android的應用程序是用Java語言開發(fā)的,但是Android給應用程序開發(fā)者提供了一系列的C/C+程序庫,通過Android的一些特殊的設計,我們開發(fā)者可以使用這些庫,這在后面的敘述中將看到?,F(xiàn)今,Android操作系統(tǒng)已成為許多手機制造商的寵兒,其中包括HTC索尼愛立信、Samsung摩托羅拉

11、以及國內的聯(lián)想、華為、海爾、華禹等。其中值得一提的是摩托羅拉公司,就在2009年11月憑借其一款搭載Android平臺的Droid手機,兩個月內就突破百萬臺,擊敗了蘋果的iPhone3GS被時代雜志評選為“年度最佳科技產品”。因此告別了兩年多的低迷態(tài)勢,走出了泥潭。Android構架Android的構架綜述APPLEICATiaNSHwtwPhflfwAPPucaTponFRAMEwaRK離CtM叩MqinajjtfrWpndhwManj.ltrCentrfltView$”rmNotilkiiwnSwrfKcMirwirfOpcnGL|ESSGLTfelrphcnrMiru婀Rriourcic

12、Mam靜rLqgnMsnajerXMPP5crw«LibrariesMcdLAFrameworkFrwTxptSSLSQlhcAndroidruntimeCorel4snrmLinuxKernelUSBDrwerCammEJrivtrBl/toihDrlwFlubMetiwyDriwrEbMcr(PCIDrh*rW.hDnver離山Drivrni從圖2-1中明顯的可以看出該系統(tǒng)從下到上包括Linux內核層、Libraries和運行時環(huán)境層、應用程序框架層、應用程序層四層結構。在Android的最下層的操作系統(tǒng)基于Linux2.6內核,往上的中間件包括Libraries和運行時環(huán)境層和

13、應用程序框架層兩個層次,最上層則是應用程序層。在Android構架中,可以很明顯的看到,底層的Linux內核則采用的是C語言,libraries采用C或者C+,但是應用程序層、應用程序框架層和運行時環(huán)境中的Android核心庫采用Java語言編寫,也就是說Android雖然底層用的是C或者C+1是應用程序的開發(fā)則用的是Java。Google采用這樣的模式可能是因為相對于C或者C+,Java的開發(fā)周期更短的緣故,這樣的話就能在短時間內為Android提供大量的應用軟件。我們知道,作為一個智能手機平臺,只有擁有了大量的源源不斷的應用程序作為支持,才能受人們的歡迎,從而才能占領市場。之前Nokia的

14、s60第三版就是一個很好的例子,因此NokiaS60v3的系統(tǒng)才被世人所熟知,并且曾經在智能手機行業(yè)占有很大的市場。而另一個例子就是Linux系統(tǒng),在所有操作系統(tǒng)中,穩(wěn)定性和性能上能夠和Linux抗衡的系統(tǒng)不多吧,但是在智能手機市場上為什么Linux卻可以說是一敗涂地,其原因也和其第三方應用少是脫不了關系的內核層GoogleAndroid作為一個開源的操作系統(tǒng)其內核采用了同樣開源的被業(yè)界認為是相當穩(wěn)定的Linux作為其內核,其中Linux內核包括以下功能模塊:安全(Security)、存儲器管理(MemoryManagement)進程管理(ProcessManagement網絡堆棧(Netwo

15、rkStack)、驅動程序模型(DriverModel)等,另外也在給其上層的軟件和下層硬件間建立起一個抽象層(AbstractionLayer)。同時Android在Linux2.6的內核上進行了一些增加和刪改,使Linux更加適應ARMF臺。增加了一個基于ARM勾架的GoldFish平臺作為虛擬機的虛擬CPU增加了YAFFS2FLAS廉統(tǒng)文件,因此增加了對NANDFLASH持。增加了Android相關的驅動。例如Android的IPC(進程間通信機制)binder,使用這個能使運行的進程為其他進程提供服務;Android的日志系統(tǒng)(Logger)和內存控制臺(Ram_conso;同時Goo

16、gle還重寫了電源管理(Power)增加了新的共享方式Ashmem(匿名共享內存),多個應用程序可以這種方式共享內存獲取信息,為進程間提供大量共享內存,同時為內核提供回收和管理這個內存的機制。2Android的開發(fā)Android開發(fā)工具前面說過,Android的上層應用程序是用Java語言開發(fā)的,同時需要基于Dalvik虛擬機,所以Google公司推薦使用主流的Java繼承開發(fā)環(huán)境Eclipse。有了Eclipse還不夠,因為使用Java語言進行開發(fā),應該有由SUN司提供的JavaSDK(其中包含了JREJavaRuntimeEnvironment)0另外,Android的應用程序開發(fā)還是和J

17、ava開發(fā)有一定區(qū)別,所以還需有一個Google提供的AndroidSDK。有了這三個軟件就可以開發(fā)Android應用程序了。Android開發(fā)平臺的搭建Android開發(fā)平臺搭建步驟很簡單,但是和我們的論文沒多大關系,所以具體步驟參見附錄1。當平臺搭建好以后需要創(chuàng)建一個AndroidVirtualDevice,這一步是很關鍵的一步,如果不創(chuàng)建這個AVD的話,在Eclipse中編譯運行Android應用程序時就會提示找不到AVD從而無法編譯。在DOS界面下運行AndroidSDK文件夾中tools目錄下的android.bat工具,其命令是androidcreateavd-nameavd15r

18、1-target2,使用這個命令之后會提示是否創(chuàng)建一個AVD輸入yes之后會提示設置AVD勺一些屬性,如內存信息等。要說明的是name后面的avd15r1是AndroidVirtualDevice的名字,可以自由選取。而我起這個名字的意義是avd使用1.5r1版本的SDK簡單的幾步就將Android的開發(fā)平臺搭建好了,雖然我使用的是Windows7操作系統(tǒng),但是方法同樣適用于Windowsxp等其他Windows平臺。在一個應用程序設計好了以后,點擊Eclipse中的run,就可以看到啟動了一個叫做avd15r1的Android模擬器,同時,在模擬器中就能找到你所編寫的應用程序。3Androi

19、d的課程表開發(fā)項目需求分析一般課程表應該具備課程表第一次運行時候提醒添加數(shù)據(jù)功能,擁有數(shù)據(jù)后自動顯示當天課程,如果課程變動要求可以進行修改,要求可以查看整個星期的所有課程,并且同樣可以時行課程的修改。3.2項目目錄分析assets文件夾用來存放靜態(tài)文件bin文件夾classes.dex(在Dakik虛擬機中說過的編譯后java二進制代碼)TimeTable.apk(發(fā)布到手機的安裝包)一個包一樣的義件夾用于存放編譯后的字節(jié)碼義件gen文件夾R.java(用它java可訪問獨立于java的資源文件,系統(tǒng)自動生成)res文件夾drawable文件夾用來存放圖片的文件夾,例如圖標layout文件夾用

20、來存放布局te義文件,如main.xmlvalues用來存放一些變量和參數(shù)的文件src文件夾存放源文件的文件夾,以后定義的java類和一些代碼都放在這個文件夾卜AndroidManifest.xml系統(tǒng)功能的主要功能實現(xiàn)TimeTable文件:當天課程的顯示Showtable文件流程圖顯示功能是用一個Activity來實現(xiàn)的所以ShowTable這個類要繼承于Activity這個基類,顯示課程表信息。通過publicvoidonCreate(BundlesavedInstanceState)方法進行進行判斷,如果該課程表數(shù)據(jù)庫中有數(shù)據(jù),運行時通過系統(tǒng)時間的判斷進行今日課程表的顯示,否則直接進入

21、修改課程表頁面進行課程表的數(shù)據(jù)添加,點擊功能按鍵,可以進入整個星期課程表的頁面,和整個星期課程管理。Showtable文件:整個星期的課程顯示顯示功能是用一個Activity來實現(xiàn)的所以ShowTable®個類要繼承于Activity這個基類。通過onItemClick(AdapterView<?>arg0,Viewarg1,intpos,longarg3)方法,進行一個星期列表的先擇,通過菜單按鈕可以進行整個星期的課程選擇和今天課程的課程表的顯示。WeekDay:課程表管理。顯示功能是用一個ActivityActivity這個基類。通過Viewv,intposition

22、,longid)來實現(xiàn)的所以WeekD儂個類要繼承于protectedvoidonListItemClick(ListViewl,方法,進行一個星期列表的先擇,通過菜單按鈕可以進行整個星期的課程選擇和今天課程的課程表的顯示。Edit文件:課程表的修改和添加Edit流程圖顯示功能是用一個Activity來實現(xiàn)的所以Edit這個類要繼承于Activity這個基類。publicvoidonCreate(BundlesavedInstanceState)進行初始化完成數(shù)據(jù)庫表數(shù)據(jù)的提取,通過privatevoidwriteTable()調用如果沒有添加過數(shù)據(jù)調用privatevoidSQLIn(SQL

23、iteDatabasedb,String口C_names,String口C_addresses),進行數(shù)據(jù)的插入,否者就是修改文調用privatevoidSQLUp(SQLiteDatabasedb,StringC_names,StringC_addresses)進行數(shù)據(jù)修改。數(shù)據(jù)庫實現(xiàn):DataBaseHelper.java與android的SQLite數(shù)據(jù)庫的建立與數(shù)據(jù)表的建立。DataBaseInfo.java與Android在SQLite數(shù)據(jù)庫表的訪問總結通過對Android系統(tǒng)的層次上分析以及借助Android提供的Intent機制的應用開發(fā),增進了我對這個新生的系統(tǒng)的了解。在對系統(tǒng)

24、方面的研究中,我明白了Android的應用是怎么在系統(tǒng)上運行的。其中吸引我的地方就是Android的Runtime,在這,我看到了Google設計的Dalvik虛擬機不同于傳統(tǒng)Java虛擬機的地方,這個虛擬機在移動終端設備CPU速度低,資源有限的環(huán)境下也能很高效率的運行,這無疑也證明了Android這個系統(tǒng)的成功。還有,Android上層采用了Java語言作為開發(fā),讓開發(fā)更為簡單,可以使JavaSE陣營的開發(fā)者不需要花太多的時間便能轉投Android陣營,這樣自然的為Android開發(fā)提供大量的人力資源。這樣才致使Android在短時間內具有大量的應用,同時也使得許多手機生產商使用該系統(tǒng)的原因

25、之一。在對程序的開發(fā)中,我理解了Android的Intent機制在應用上的作用。一個應用的多個組件通過Intent機制聯(lián)系在一起,這樣各個組件之間的信息交換提高了,而程序的靈活性也提高了,給開發(fā)者的創(chuàng)造空間也增加了。有了GoogleAndroid這些很強勁的優(yōu)勢,我想,在不久的將來伴隨著3G的普及,Android必定能改變現(xiàn)在只能手機市場的格局,開辟出一個新的世界。參考文獻1陳昱,江蘭帆.基于GoogleAndroid平臺的應用程序開發(fā)和研究J.福建電腦,2008(11):156-157.2楊豐盛.Android應用開發(fā)揭秘M第一版.北京:機械工業(yè)出版社,2010年.7頁3姚昱旻,劉衛(wèi)國.An

26、droid的架構與應用開發(fā)研究J.計算機系統(tǒng)應用,2008(11):110-14姚昱旻,劉衛(wèi)國.Android與J2ME平臺間即時通信的研究與實現(xiàn)J.計算機系統(tǒng)應用,2008(12):118-1205公磊,周聰.基于Android的移動終端應用程序開發(fā)與研究J.計算機與現(xiàn)代化,2008(8):86-89.6差沙,地獄男爵用Android開發(fā)手機應用J.程序員,2008(1):25-277葉達峰.Eclipse編程技術與實例M.北京:人民郵電出版社,2006.8張超,王阿川,王智.基于J2ME和J2EE的手機軟件的研究J.黑龍江科技信息,2007(3):21,201.9劉向輝.基于Java的移動終端中間件的研究與設計D.華東師范大學碩士學位論文,2005.10刁扣鎖.短信息在嵌入式Linux系統(tǒng)中的設計與實現(xiàn)D.東南大學碩士學位論文,2005.11Android幫助文檔致謝首先我在這里向養(yǎng)育和培養(yǎng)我的父母表示深深地思念和感謝,再向關心我,幫助我的老師和同學表示感謝!能順利圓滿地完成我的設計要感謝計算機學院周群彪老師,蔡葵老師,陳正茂老師,呂學斌老師四位老師在畢業(yè)設計前期資料搜集,中期畢業(yè)設計的撰寫,后起

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論