畢業(yè)論文-基于Android學生基本信息管理的設計與開發(fā)_第1頁
畢業(yè)論文-基于Android學生基本信息管理的設計與開發(fā)_第2頁
畢業(yè)論文-基于Android學生基本信息管理的設計與開發(fā)_第3頁
畢業(yè)論文-基于Android學生基本信息管理的設計與開發(fā)_第4頁
畢業(yè)論文-基于Android學生基本信息管理的設計與開發(fā)_第5頁
已閱讀5頁,還剩46頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 太原理工大學畢業(yè)設計(論文)用紙 緒論課題背景隨著科學技術的發(fā)展,計算機網(wǎng)絡技術的普及和對辦公效率的要求越來越高,很多高校開始網(wǎng)絡化辦公改革,將更多的平常工作(入通信聯(lián)系,發(fā)放通知,傳遞文件等)通過網(wǎng)絡這個平臺來完成。經(jīng)過一段時間的發(fā)展,網(wǎng)絡在搞笑日常鍋里中實現(xiàn)的功能越來越多,數(shù)字化校園管理系統(tǒng)應運而生。我們學校是采用瀏覽器/服務器(b/s)模式,這種模式想對最初的人工管理方便了許多,不在需要大量的人力,學生要登陸并操作管理系統(tǒng)也不再需要排隊和擁擠,更不會因為在系統(tǒng)上的操作會耽誤正常的教學任務(問卷調查等)。b/s模式的校園信息系統(tǒng)只需要一臺能訪問網(wǎng)絡的瀏覽器即可。只要信息系統(tǒng)服務器端提供個

2、人信息,考試成績,課程表等等業(yè)務模塊,在客戶端的瀏覽器視窗中就能進行相應模塊的功能管理。這種b/s模式的信息管理系統(tǒng)具有不限時間,地點等優(yōu)勢,然而隨著移動互聯(lián)網(wǎng)的發(fā)展這種b/s模式的信息管理系統(tǒng)也存在很多不足,比如你想要進行相關操作,就必須坐在電腦前,而且課程開設的通知等等也是要通過上網(wǎng)才知道,對于一些不常上網(wǎng)的同學可能會錯過很多有用的消息,比如說課程調整,成績發(fā)布等等。而這些缺陷都可以通過移動終端來解決。系統(tǒng)內容及開發(fā)意義綜上所訴,在平時的校園生活中,教務系統(tǒng)給予各系的同學許多方便,學校繳費,選課調課,查詢考試,報名考證等等,都可以通過電腦登錄教務系統(tǒng)來得到解決。而為了讓教務系統(tǒng)變得更加便利

3、,我們有必要開發(fā)一個基于Android平臺下的學生信息信息管理系統(tǒng)。同學們就可以通過安裝有Android系統(tǒng)的只能手機來登陸和操作信息管理系統(tǒng),并隨時隨地查看信息系統(tǒng)的信息。同時對于軟件工程系的我而言,這是見證我們四年所學的最佳機遇。這一次的軟件開發(fā)過程,給了一個讓我發(fā)揮的平臺。Android平臺及相關技術簡介Android現(xiàn)狀及發(fā)展Android 是Google開發(fā)的基于Linux平臺的開源HYPERLINK /z/Search.e?sp=S%E6%89%8B%E6%9C%BA%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F&ch=w.search.yjjlink&c

4、id=w.search.yjjlink t _blank手機操作系統(tǒng)。它包括HYPERLINK /z/Search.e?sp=S%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F&ch=w.search.yjjlink&cid=w.search.yjjlink t _blank操作系統(tǒng)、用戶界面和應用程序 HYPERLINK /z/Search.e?sp=S%E7%A7%BB%E5%8A%A8%E7%94%B5%E8%AF%9D&ch=w.search.yjjlink&cid=w.search.yjjlink t _blank移動電話工作所需的全部軟件,而且不存在任何以往

5、阻礙移動產(chǎn)業(yè)創(chuàng)新的專有權障礙。Google與開放手機聯(lián)盟合作開發(fā)了 Android,這個聯(lián)盟由包括HYPERLINK /z/Search.e?sp=S%E4%B8%AD%E5%9B%BD%E7%A7%BB%E5%8A%A8&ch=w.search.yjjlink&cid=w.search.yjjlink t _blank中國移動、HYPERLINK /z/Search.e?sp=S%E6%91%A9%E6%89%98%E7%BD%97%E6%8B%89&ch=w.search.yjjlink&cid=w.search.yjjlink t _blank摩托羅拉、HYPERLINK /z/Sear

6、ch.e?sp=S%E9%AB%98%E9%80%9A&ch=w.search.yjjlink&cid=w.search.yjjlink t _blank高通、HYPERLINK /z/Search.e?sp=S%E5%AE%8F%E8%BE%BE%E7%94%B5&ch=w.search.yjjlink&cid=w.search.yjjlink t _blank宏達電和 T-Mobile 在內的 30 多家技術和無線應用的領軍企業(yè)組成。Google通過與運營商、設備制造商、開發(fā)商和其他有關各方結成深層次的合作伙伴關系,希望借助建立標準化、開放式的移動電話軟件平臺,在移動產(chǎn)業(yè)內形成一個開放式的

7、HYPERLINK /z/Search.e?sp=S%E7%94%9F%E6%80%81%E7%B3%BB%E7%BB%9F&ch=w.search.yjjlink&cid=w.search.yjjlink t _blank生態(tài)系統(tǒng)。Android 作為HYPERLINK /z/Search.e?sp=S%E8%B0%B7%E6%AD%8C&ch=w.search.yjjlink&cid=w.search.yjjlink t _blank谷歌HYPERLINK /z/Search.e?sp=S%E4%BC%81%E4%B8%9A%E6%88%98%E7%95%A5&ch=w.search.yj

8、jlink&cid=w.search.yjjlink t _blank企業(yè)戰(zhàn)略的重要組成部分,將進一步推進隨時隨地為每個人提供信息這一HYPERLINK /z/Search.e?sp=S%E4%BC%81%E4%B8%9A%E7%9B%AE%E6%A0%87&ch=w.search.yjjlink&cid=w.search.yjjlink t _blank企業(yè)目標的實現(xiàn)。我們發(fā)現(xiàn),全球為數(shù)眾多的移動電話用戶從未使用過任何基于 Android 的電話。谷歌的目標是讓(移動通訊)不依賴于設備甚至平臺。出于這個目的,Android 將補充,而不會替代谷歌長期以來HYPERLINK /z/Search

9、.e?sp=S%E5%A5%89%E8%A1%8C&ch=w.search.yjjlink&cid=w.search.yjjlink t _blank奉行的移動發(fā)展戰(zhàn)略:通過與全球各地的手機制造商和移動運營商結成合作伙伴,開發(fā)既有用又有吸引力的移動服務,并推廣這些產(chǎn)品。開放手機聯(lián)盟的成立和 Android 的推出是對現(xiàn)狀的重大改變,在帶來初步效益之前,還需要不小的耐心和高昂的投入。在2012年,Android手機的全球銷量為4.815部,占據(jù)了全球智能手機68.8%的市場份額。在2013年,這個數(shù)字上升到了7.812億、78.9%,這是一個相當驚人的數(shù)字。不過,這些數(shù)字當中,還蘊含了一些有趣的

10、部分。比如在2013年第四季度,25%的Android手機并未包含谷歌服務,以亞馬遜、國內的小米等廠商為主。顯然,這種現(xiàn)象說明了即使Android極受歡迎,但碎片化則十分嚴重。再來看看Android版本的分布情況。目前,最新的Android 4.4顯然尚不成氣候,Android 4.3/4.2/4.1則占據(jù)了59.1%的份額,Android 4.0下降到16.9%,其他22.5%則是老舊的Android 2.X。顯然,雙核/四核處理器已經(jīng)向低端產(chǎn)品普及,越來越多的手機都能夠搭載更新版本的系統(tǒng)版本,但碎片化依然是谷歌需要考慮的課題。Android系統(tǒng)特點Android系統(tǒng)最震撼人心之處在于其開放

11、性和服務的免費性方面。Android是一個對第三方軟件完全開放的平臺,開發(fā)者在為其開發(fā)程序時擁有更大的自由度,突破了iPhone等只能添加為數(shù)不多的固定軟件的枷鎖;同時與Windows Mobile(現(xiàn)叫Windows Phone)、Symbian等廠商不同,Android操作系統(tǒng)免費向開發(fā)人員提供,這樣可節(jié)省30%的成本。Android平臺的手機以及平板電腦具有以下5大特點:開放性。在優(yōu)勢方面,Android平臺首先就是其開放性,開發(fā)的平臺允許任何移動終端廠商加入到Android聯(lián)盟中。顯著的開放性可以使其擁有更多的開發(fā)者,隨著用戶和應用的日益豐富,一個嶄新的平臺也將很將走向成熟,蘋果的IO

12、S系統(tǒng)封閉;無向任何廠商提供,Windows Phone系統(tǒng)封閉,廠商需要花高價購買;Nokia的Symbian之前也一直是封閉,現(xiàn)在已經(jīng)末落了。掙脫運營商的束縛。在過去很長的一段時間,特別是在歐美地區(qū),手機應用往往受到運營商制約,使用什么功能接入什么網(wǎng)絡,幾乎都受到運營商的控制。自從Android上市,用戶可以更加方便地連接網(wǎng)絡,運營商的制約減少。隨著EDGE、HSDPA這些2G至3G移動網(wǎng)絡的逐步過渡和提升,手機隨意揍人網(wǎng)絡已不是運營商口中的笑談。豐富的硬件選擇。這一點還是與Android平臺的開放性相關。由于Android的開放性,眾多的廠商會推出豐富多彩、各具特色的多種產(chǎn)品。功能上的差

13、異和特色卻不會影響到數(shù)據(jù)同步、甚至軟件的兼容性。好比用戶從諾基亞的Symbian(塞班)風格手機一下改用裝載Android(安卓)系統(tǒng)的手機,同時還可將Symbian中優(yōu)秀的軟件帶到新手機上使用,聯(lián)系人等資料更是可以方便地轉移。不受任何限制的開發(fā)商。Android平臺提供給第三方開發(fā)商一個十分寬泛、自由的環(huán)境,因此不會受到各種條條框框的阻撓,可想而知,這樣會有多少新穎別致的軟件會誕生。但這也有其兩面性,血腥、暴力、情色方面的程序和游戲如何控制正是留給Android開發(fā)人員的難題之一。無縫結合的Google應用。如今Google在互聯(lián)網(wǎng)領域已經(jīng)走過十多年歷史,從搜索巨人到全面的互聯(lián)網(wǎng)滲透,Goo

14、gle服務如地圖、郵件、搜索等已經(jīng)成為連接用戶和互聯(lián)網(wǎng)的重要紐帶,而Android平臺手機將無縫結合這些Google應用。Android的功能特征(l)應用程序架構:在應用程序架構內已經(jīng)具備多種不同的基礎組件,在開發(fā)應用程序時,就可以直接調用這些組件來使用,可以節(jié)省開發(fā)應用程序的心力及時間。(2)Dalvik虛擬機器:在Android平臺上所使用Java虛擬機,不是Sim公司的標準Java虛擬機,而是使用Google自主開發(fā)的代號為Dalvik的虛擬機,它在保證API方面的兼容的同時,針對移動手機進行了大幅優(yōu)化,占用資源更小,運行效率更高。(3)集成的瀏覽器:集成的瀏覽器是Android內建的

15、瀏覽器,是以WebKit的瀏覽引擎為基礎所開發(fā)成的。WedKit是一個開源瀏覽器網(wǎng)頁排版引擎,目前使用WebKit引擎的瀏覽器主要有:Safari,Midori,Epiphany等。配合Android手機的功能,可以在瀏覽網(wǎng)頁時,達到更好的效果,例如:局部性的縮放網(wǎng)頁上的資訊、觸控式的操作等效果。(4)優(yōu)化的繪圖能力:在程序里可以用到的繪圖功能分為2D與3D兩個方面。在2D方面,Android提供了一套特有的類庫(SGL;而在3D方面則是使用OpenGLES1.0(openGL for Embedded systems)規(guī)范的類庫。它們是一種非??斓膱D形引擎,并且支持硬件加速。(5)SQLit

16、e數(shù)據(jù)庫:SQLite提供結構化的數(shù)據(jù)存取。SQLite是一款輕型的數(shù)據(jù)庫,它的設計目標是嵌入式的,目前已經(jīng)在很多嵌入式產(chǎn)品中使用了它,它占用的資源非常低。它能夠支持Windows/Linux/U nix等主流的操作系統(tǒng),同時能夠跟很多程序語言相結合,比如php,Java等,還有ODBC接口,同樣比起Mysql,PostgreSQL來講,它的處理速度比它們都快。它無需安裝和管理配置,它是一個儲存在單一磁盤文件中的完整數(shù)據(jù)庫,體積小只有250KB但支持數(shù)據(jù)庫大小至2TB。它雖然很小巧,但是支持的SQL語句毫不遜色于其它開源數(shù)據(jù)庫。同時它還支持事務功能和并發(fā)處理等等。SQLite也是一套開放性的關

17、聯(lián)式資料庫,其特點在于輕量性方面的設計結構,更適合在手機上使用。(6)多媒體的支持能力:主要用于播放媒體文件。這同時包括對音頻(如播放MP3或其他音樂文件等)和視頻(如播放從網(wǎng)上下載的視頻)的支持,并支持“播放URI地址”(Note:URI即是統(tǒng)一資源識別地址)模式在網(wǎng)絡上直接播放的流媒體。另外支持各種通用的靜態(tài)圖像格式,例如:JPG、PNG、GIF等格式。(7)GSM技術:Global System for Mobile Communications,即全球移動通訊系統(tǒng),俗稱”全球通”,是一種起源于歐洲的移動通信技術標準,是第二代移動通信技術,其開發(fā)目的是讓全球各地可以共同使用一個移動電話網(wǎng)

18、絡標準,讓用戶使用一部手機就能行遍全球。GSM技術是屬于手機硬件方面的展現(xiàn),也是在開發(fā)Android應用程序時可以突出的特點之一。(8)藍牙、EDGE、3G及Wi-Fi:藍牙是一種新型、開放、低成本、短距離的無線連接技術,可取代短距離的電纜,實現(xiàn)話音和數(shù)據(jù)的無線傳輸。EDGE(Enhanced Data Rate for GSM,Evolution),即增強型數(shù)據(jù)速率GSM演進技術。EDGE是一種從GSM到3G的過渡技術,它主要是在GSM系統(tǒng)中采用了一種新的調制方法,即最先進的多時隙操作和SPSK調制技術。由于8PSK可將現(xiàn)有GSM網(wǎng)絡采用的GMSK調制技術的信號空間從2擴展到8,從而使每個符

19、號所包含的信息是原來的4倍。Wi-Fi(WirelessFidelity),即無線保真技術,與藍牙技術一樣,同屬于在辦公室和家庭中使用的短距離無線技術。該技術使用的是2.4GHz附近的頻段,該頻段目前尚屬沒用許可的無線頻段。其目前可使用的標準有兩個,分別是IEEE802.lla和IEEE802.11b。這些通訊能力也是屬于手機硬件方面的展現(xiàn),也是在開發(fā)Android應用程序時可以突出的特點之一。(9)GPS: Global Positioning System,即全球定位系統(tǒng),它是一個由覆蓋全球的24顆衛(wèi)星組成的衛(wèi)星系統(tǒng)。這個系統(tǒng)可以保證在任意時刻和任何地點都可以同時觀測到4顆衛(wèi)星,以保證衛(wèi)星

20、可以采集到該觀測點的經(jīng)緯度和高度,以便實現(xiàn)導航、定位、授時等功能。這項技術可以用來引導飛機、船舶、車輛以及個人。這個同樣也是屬于手機硬體方面的體現(xiàn),也是在開發(fā)Android應用程序是可以突出的特點之一。 Android架構分析應用程序框架在Android SDK中,定義了讓開發(fā)者使用與核心應用程序相同API的權限應用程序框架是為了要簡化組件的重新利用而設計的,應用程序可以發(fā)布功能為其它應用程序所使用。但是,這要受限于應用程序架構的安全機制,使用者以用同樣的機制來新增、置換組件。目前所有的應用程序是由服務及系統(tǒng)來組成,包含有:(l)一套強大和可擴展的視圖系統(tǒng):用來建構一個應用程序的基本組件,包了

21、在開發(fā)系統(tǒng)畫面時,常用的列表、網(wǎng)格、文本框、按鈕等控制項,甚至是內嵌的Web瀏覽器。 (2)內容提供者:使應用程序可以訪問另一個應用程序的數(shù)據(jù)(如聯(lián)系人數(shù)庫),或者共享它們自己的數(shù)據(jù)。(3)資源管理器:提供各種非程序代碼的資源讓應用程序去使用。例如:本字符串、圖形文件或排版相關的布局文件。(4)通知管理器:提供應用程序在狀態(tài)欄中顯示應用程序自定義的提示信息。(5)活動管理器:管理所有應用程序的生命周期及提供常用的導航回退功能。例如:啟動應用程序要用到的資源準備及關閉應用程序時釋放內存及相關資源等工作。(6)視窗管理器:用來管理所有啟動程序的視窗。(7)位置管理器:用來管理地圖服務的相關功能。(

22、8)電話管理器:用來管理用戶撥打與接聽電話的相關功能。(9)包管理器:管理所有安裝在Android系統(tǒng)內的包。類庫在Android中包含一些C/C+的類庫,這些類庫能被Android系統(tǒng)中不同的組件來使用。開發(fā)者可以通過應用程序框架使用這些功能。部分核心類庫列表如下:(1)surface Manager:主要的功能是讓開發(fā)者可以去存取/顯示系統(tǒng)及管理的功能,在顯示與存取操作間的對應、互動以及實現(xiàn)無接縫的2D/3D多應用程序之間的整合。例如:在2D、2D顯示上的合成、疊合動作。(2)3Dlibraries:主要是依openGLES1.0規(guī)范所定義的3D繪圖引擎。該庫使用硬件加速(當硬件可用時),

23、可以將硬件的3D功能做最佳化的處理顯示。(3)SGL:主要是處理有關顯示2D方面的繪圖引擎。(4)Media Frame work:主要是以packetVideo公司的OpenCORE為基礎所發(fā)展的多媒體類庫,該庫支持回放和錄制大量流行的音視頻格式和靜態(tài)圖片。例如:MPEG4、H.264、MP3、AAC、AMR、JPG、PNG、GIF等格式(5)Free Type:主要是用來顯示點陣圖和處理向量字形的。(6)SSL:(secureSocketsuyer),中文名為“安全套接層協(xié)議層”,它是網(wǎng)景公司提出的基于WEB應用的安全協(xié)議,當前版本為3.0。SSL協(xié)議指定了一種在應用程序協(xié)議(如HTTP、

24、Telenet、NMTP和FTP等)和TCP/IP協(xié)議之間提供數(shù)據(jù)安全性分層的機制,它為TCP/IP連接提供數(shù)據(jù)加密、服務器認證、消息完整性以及可選的客戶機認證。它已被廣泛地用于Web瀏覽器與服務器之間的身份認證和加密數(shù)據(jù)傳輸。SSL協(xié)議位于TCP膽協(xié)議與各種應用層協(xié)議之間,為數(shù)據(jù)通訊提供安全支持。SSL協(xié)議可分為兩層:SSL記錄協(xié)議(SSL Record Proto col):它建立在可靠的傳輸協(xié)議(如TCP)之上,為高層協(xié)議提供數(shù)據(jù)封裝、壓縮、加密等基本功能的支持。SSL握手協(xié)議(SSL Hand shake proto col):它建立在SSL記錄協(xié)議之上,用于在實際的數(shù)據(jù)傳輸開始前,通

25、訊雙方進行身份認證、協(xié)商加密算法、交換加密密鑰等。SSL協(xié)議提供的服務主要有:認證用戶和服務器,確保數(shù)據(jù)發(fā)送到正確的客戶機和服務器;加密數(shù)據(jù)以防止數(shù)據(jù)中途被竊取;維護數(shù)據(jù)的完整性,確保數(shù)據(jù)在傳輸過程中不被改變。(7)SQLite:SQLite是一套開放性的關聯(lián)式資料庫,能夠被所有應用程序使用的輕量級的關系數(shù)據(jù)庫引擎。(8)web Kit:是一個先進的網(wǎng)頁瀏覽器引擎,被用來構建Android瀏覽器和內嵌的web視圖,也可以讓開發(fā)者利用這個引擎來做不同的應用。(9)lib c:就是一個BSD標準C類庫。但是,針對Linux嵌入式裝置進行過最佳化的調整。運行環(huán)境操作系統(tǒng)Windows XP或者Vis

26、taMac OS X 10.4.8 或者更高版本(僅支持x86)Linux(Linux Ubuntu Dapper Drake)Android開發(fā)變量及其配置Eclipse3.3(Europa),3.4(Ganymede)Eclipse JDT 插件(大多數(shù)的Eclipse IDE包包含)WST(可選,但Android編輯器的功能需要,他被包含在most Eclipse IDE packages中)JDK 5或者JDK 6(中有JRE是不夠的)Android Development Tools 插件(可選)不兼容GNU Java編譯器Android開發(fā)環(huán)境搭建計算機配置開發(fā)Android應用所

27、用到的開發(fā)工具較占內存,尤其是模擬器。官方并未給出最低配置要求,根據(jù)個人實際體會,在本人Intel Core i7-2630QM 四核處理器及8G內存的情況,能流暢使用。另外還需有600MB以上的剩余磁盤空間(官方文檔中的說明)。安裝JDK由于Android開發(fā)是基于Java的基礎上的,所以我們必須得安裝JDK(JDK下載地址:/technetwork/java/javase/downloads/index.html)。安裝過程中應對系統(tǒng)的環(huán)境變量做出相應的設置:右擊計算機屬性高級系統(tǒng)設置高級環(huán)境變量,新建“系統(tǒng)變量”,設置變量名:“java_home”。變量值: “C:Program Fil

28、esJavajdk1.7.0_02”(視個人安裝路徑而定)。找到變量名為path的項,雙擊,在變量值后面添加:“;%JAVA_HOME%bin;”,新建“系統(tǒng)變量”變量名:“classpath”,變量值:“.;%JAVA_HOME%libdt.jar;%JAVA_HOME%libtools.jar;” 配置完成后,重啟可以在cmd下輸入java或者javac測試。安裝EclipseEclipse是我們以后在Android開發(fā)時使用的開發(fā)平臺,它集成了很多功能以及插件,在開發(fā)的過程中便于我們使用,在官網(wǎng)(/downloads/)可以下載到對應系統(tǒng)以及功能的安裝包,在安裝提示安裝完成后并且完成了J

29、DK的安裝后即可正常使用。 安裝SDKSDK(Software Development Kit)初始包中有開發(fā)Android程序所要用到的工具,它包括了從編譯到運行Android應用程序所需要的各種工具。安裝時可以根據(jù)自己的需求選擇安裝相應的版本。(SDK下載地址:http:/developer.A/sdk/index.html)安裝ADT按照2.3.4安裝完SDK初始包后,就可以開始開發(fā)Android應用程序了,但是為了更高效地進行開發(fā),Android團隊推出了Android Development Tools (ADT) 。ADT是目前開發(fā)Android應用最有效的工具,它是一個Eclip

30、se插件,支持Eclipse 3.4及3.4以上的版本。以Eclipse 3.5 (Galileo)為例,安裝過程如下:打開Eclipse,選擇 Help Install New Softare。在Available Software 對話框中,點擊Add.。在彈出的Add Site 對話框中,任意填寫一個名字到Name一欄。在Location一欄,則填入這一URL:“/Android/eclipse/”,然后確認返回。(注意:如果在后續(xù)的步驟中發(fā)現(xiàn)無法安裝插件,可以試著把URL中的https換成http。)返回到Available Software 窗口后,就能看到列表中出現(xiàn)了Develop

31、er Tools ,選中它前面的復選框,再點擊“Next”,就會開始下載安裝ADT的各種組件了。安裝完畢后將彈出窗口顯示ADT相關的各種信息以及許可協(xié)議,點擊“Finish“即可完成安裝。重新啟動Eclipse。設置Eclipse選擇Window Preferences. 打開偏好設置從左側邊欄中選擇Android一欄。單擊SDK Location一欄邊的Browse按鈕,選擇剛剛下載的SDK保存的路徑。點擊Apply,OK,設置生效。至此,Android的開發(fā)環(huán)境就已經(jīng)搭建完畢,可以使用了 。創(chuàng)建AVD在安裝好JDK,Eclipse,SDK,ADK之后我們就可以進行Android項目開發(fā)了,

32、但是在開發(fā)的過程中我們經(jīng)常需要運行、調試我們所開發(fā)的軟件,這就需要用到AVD(Android Virtual Device),也就是Android虛擬機。打開Eclipse。點擊Opens the Android Virtual Device Manager圖標按鈕。在彈出的窗口中點擊New新建一個Android虛擬機。在彈出的新建虛擬機窗口中Name一欄填上虛擬機的名稱(一般與虛擬機的版本號相同,便于區(qū)分)。在Target一欄選擇一個Android虛擬機版本(如Android2.2或Android2.1)。在SD Card下的Size一欄填上我們要設定的SD卡容量大小。點擊Create AV

33、D,這樣我們的一個Android虛擬機就創(chuàng)建好了。HTTP協(xié)議超文本傳送協(xié)議 (HTTP) 是一種通信協(xié)議,它允許將超文本標記語言(HTML) 文檔從 Web 服務器傳送到 Web瀏覽器。HTML 是一種用于創(chuàng)建文檔的標記語言,這些文檔包含到相關信息的鏈接。您可以單擊一個鏈接來訪問其它文檔、圖像或多媒體對象,并獲得關于鏈接項的附加信息。HTTP工作在TCP/IP協(xié)議體系中的TCP協(xié)議上??蛻魴C和服務器必須都支持 HTTP,才能在萬維網(wǎng)上發(fā)送和接收 HTML 文檔并進行交互。HTTP是一個屬于應用層的面向對象的協(xié)議,由于其簡捷、快速的方式,適用于分布式超媒體信息系統(tǒng)。它于1990年提出,經(jīng)過幾年

34、的使用與發(fā)展,得到不斷地完善和擴展。前一段時間用的是HTTP/1.0,現(xiàn)在WWW中使用的是HTTP/1.1。而且HTTP-NG(Next Generation of HTTP)的建議已經(jīng)提出。主要特點可概括如下:支持客戶/服務器模式。 簡單快速:客戶向服務器請求服務時,只需傳送請求方法和路徑。請求方法常用的有GET、HEAD、POST。每種方法規(guī)定了客戶與服務器聯(lián)系的類型不同。由于HTTP協(xié)議簡單,使得HTTP服務器的程序規(guī)模小,因而通信速度很快。 靈活:HTTP允許傳輸任意類型的數(shù)據(jù)對象。正在傳輸?shù)念愋陀蒀ontent-Type加以標記。 無連接:無連接的含義是限制每次連接只處理一個請求。服

35、務器處理完客戶的請求,并收到客戶的應答后,即斷開連接。采用這種方式可以節(jié)省傳輸時間。 無狀態(tài):HTTP協(xié)議是無狀態(tài)協(xié)議。無狀態(tài)是指協(xié)議對于事務處理沒有記憶能力。缺少狀態(tài)意味著如果后續(xù)處理需要前面的信息,則它必須重傳,這樣可能導致每次連接傳送的數(shù)據(jù)量增大。另一方面,在服務器不需要先前信息時它的應答就較快。發(fā)出的請求信息包括以下幾個:請求行,例如GET /images/logo.gif HTTP/1.1,表示從/images目錄下請求logo.gif這個文件。(請求)頭,例如Accept-Language: en可選的消息體請求行和標題必須以作為結尾(也就是,回車然后換行)??招袃缺仨氈挥卸鵁o其他

36、空格。在HTTP/1.1協(xié)議中,所有的請求頭,除Host外,都是可選的。請求方法:HTTP/1.1協(xié)議中共定義了八種方法(有時也叫“動作”)來表明Request-URI指定的資源的不同操作方式:OPTIONS返回服務器針對特定資源所支持的HTTP請求方法。也可以利用向Web服務器發(fā)送*的請求來測試服務器的功能性。HEAD向服務器索要與GET請求相一致的響應,只不過響應體將不會被返回。這一方法可以在不必傳輸整個響應內容的情況下,就可以獲取包含在響應消息頭中的元信息。GET向特定的資源發(fā)出請求。注意:GET方法不應當被用于產(chǎn)生“副作用”的操作中,例如在web app.中。其中一個原因是GET可能會

37、被網(wǎng)絡蜘蛛等隨意訪問。POST向指定資源提交數(shù)據(jù)進行處理請求(例如提交表單或者上傳文件)。數(shù)據(jù)被包含在請求體中。POST請求可能會導致新的資源的建立和/或已有資源的修改。PUT向指定資源位置上傳其最新內容。DELETE請求服務器刪除Request-URI所標識的資源。TRACE回顯服務器收到的請求,主要用于測試或診斷。JSOUP簡介JSOUP是一款Java的HTML解析器,可直接解析某個URL地址、HTML文本內容。它提供了一套非常省力的API,可通過 DOM,CSS以及類似于jQuery的操作方法來取出和操作數(shù)據(jù)。JSOUP的主要功能如下:1. 從一個URL,文件或字符串中解析HTML;2.

38、 使用DOM或 CSS選擇器來查找、取出數(shù)據(jù);3. 可操作HTML元素、屬性、文本;JSOUP是基于MIT協(xié)議發(fā)布的,可放心使用于商業(yè)項目。文檔輸入JSOUP可以從包括字符串、URL地址以及本地文件來加載HTML文檔,并生成 Document對象實例。解析并提取 HTML 元素這部分涉及一個HTML解析器最基本的功能,但JSOUP使用一種有別于其他開源項目的方式選擇器修改數(shù)據(jù)在解析文檔的同時,我們可能會需要對文檔中的某些元素進行修改,例如我們可以為文檔中的所有圖片增加可點擊鏈接、修改鏈接地址或者是修改文本等。HTML 文檔清理JSOUP在提供強大的API同時,人性化方面也做得非常好。在做網(wǎng)站的

39、時候,經(jīng)常會提供用戶評論的功能。有些用戶比較淘氣,會搞一些腳本到評論內容中,而這些腳本可能會破壞整個頁面的行為,更嚴重的是獲取一些機要信息,例如XSS跨站點攻擊之類的。Android應用程序結構剖析Android的APIAndroid API主要包含了以下幾個部分:(1)AndroidManifest.xmlAndroidManifest.xml是系統(tǒng)的控制文件,它告訴系統(tǒng)如何處理所創(chuàng)建的所有應用組件(尤其是活動(Activity),服務(Service),意圖接收器(Intent Receiver)和內容提供者(Content Provider)。舉例來說,控制文件就是把活動和要接收的意圖(

40、Intents)連接在一起的“膠水”。(2)活動活動就是一個有生命周期的對象。一個活動就是完成某些工作的代碼塊,這部分工作還可能包括對用戶UI界面的顯示。不過這不是必須的,有些活動從不顯示UI界面。(3)視圖視圖可以將其自身繪制到屏幕上。Android的用戶界面由一系列的視圖樹構成。接口都是由一組以樹的形式出現(xiàn)的視圖組成的。開發(fā)者可以通過創(chuàng)建一個新的視圖的方法來使用自定義的圖形處理技術(比如開發(fā)游戲,或者是使用了不常用的用戶圖形窗口界面)。(4)意圖意圖是一個簡單的消息對象,它表示程序想做某事的“意圖”。比如應用程序想要顯示一個網(wǎng)頁,那么它可以通過創(chuàng)建一個Intent實例并將其傳遞給系統(tǒng)來表示

41、意圖瀏覽這個URI。系統(tǒng)將定位到能處理這一Intent的代碼(在當前情況下就是瀏覽器),并運行之。意圖也可以用于廣播系統(tǒng)范圍內的有效事件(例如通知事件)。(5)服務服務是運行在后臺的一段代碼。它可以運行在它自己的進程,也可以運行在其他應用程序的進程里,這取決于自身的需要.。其它的組件可以綁定到一個服務上來,通過遠程過程調用(RPC)來調用這個方法。例如媒體播放器的服務,當用戶退出媒體選擇的界面時,仍然希望音樂依然可以繼續(xù)播放,這時就可用服務來保證當用戶界面關閉時音樂還繼續(xù)播放著。 (6)通知通知將以小圖標的形式呈現(xiàn)在狀態(tài)欄里,用戶通過與圖標的交互來接收消息。最常見的通知包括短信息、通話記錄和語

42、音郵件,但是應用程序也可以創(chuàng)建它們自己的通知事件。(7)內容提供者內容提供者是用來提供對設備上數(shù)據(jù)進行訪問。典型的例子就是使用內容提供者來訪問聯(lián)系人列表。應用程序也可以使用其它程序通過內容提供者提供的數(shù)據(jù),同時也可以定義自己的內容提供者來向其它應用提供數(shù)據(jù)訪問服務。Android應用程序結構解析通常由以下四個組件來構建一個完整的Android應用程序?;顒右鈭D接收器服務內容提供者然而,并不是所有的Android應用程序都必須具備上面的四個組件,可以由上面的一個或幾個來組建。當決定使用以上哪些組件來構建Android應用程序時,需要將它們注冊在AndroidManifest.xml文件中,這是一

43、個XML配置文件,在這個文件中可以聲明應用程序組件以及它們的特性和要求。這個配置文件是每個Android應用程序所必需的?;顒踊顒邮且陨纤膫€組件中最常用的一個。每個活動都是Activity的子類,并實現(xiàn)了一些獨有的功能,如管理UI顯示和UI的反饋事件。一個活動就相當于應用程序的一個用戶界面,由事件響應以及視圖等組成。大多數(shù)的應用程序通常包括多個界面。例如:一個文本聊天應用程序,至少應該包含一個聯(lián)系人列表界面、一個聊天界面、一個設置界面、一個聊天記錄查詢界面等等。每個界面其實都可看作是一個活動。顯示一個新界面就相當于生成一個對應的活動對象。在一些情況下,活動能夠返回給它的上級界面一個返回值,例如

44、一個提供給用戶選擇照片的活動可以返回給它的調用者用戶選擇了哪個照片文件。當一個新的活動出現(xiàn)時,前一個活動被中斷并被放入到一個歷史堆棧中。用戶可以使用返回鍵使前一個活動重現(xiàn)。當一個活動不再需要時,可以將它們從歷史堆棧中移除。默認情況下,Android會為每個應用程序保留從主界面開始的歷史堆棧。Android通過一個被稱作意圖的特殊類,來實現(xiàn)界面與界面之間的跳轉。一個意圖描述了一個應用程序想要做什么。在意圖的描述結構中,含有兩個重要的數(shù)據(jù)結構:動作和動作對應的數(shù)據(jù)。典型的動作類型包括MAIN、VIEW、PICK、EDIT等等,而動作對應的數(shù)據(jù)則以URI的形式表示。例如:顯示一個聯(lián)系人信息的界面,可

45、以創(chuàng)建一個意圖,并將它的動作設置成VIEW,數(shù)據(jù)設置成表示這個人信息的URI。除此之外,還有一個被稱作意圖過濾器(IntentFiher)的相關類。當發(fā)生一個有效的目的請求時,意圖過濾器用來描述一個活動能夠處理什么意圖。如上例中所描述,想要正常顯示一個聯(lián)系人信息的界面,必須聲明一個意圖過濾器,它說明當有聯(lián)系人數(shù)據(jù)要被在界面上顯示時,知道如何處理它們。通常意圖過濾器要被注冊在AndroidManifest.xml文件中。從一個界面跳轉到另一個界面是由解析各種意圖實現(xiàn)的。例如:一個活動使用startActivity(myIntent)來調用其他活動時,系統(tǒng)會查找所有已經(jīng)安裝的應用程序的意圖過濾器,

46、并從中挑選出能夠匹配myIntent意圖的活動。隨后,這個新的活動接收到意圖(myIntent)的通知并開始運行。當startActivity方法被調用,解析意圖的處理過程隨之發(fā)生,這個機制有以下兩個突出的優(yōu)點:活動可以通過一個以意圖形式產(chǎn)生的請求來重用其他組件的功能?;顒涌梢栽谌魏螘r候被一個具有等價意圖過濾器的新活動所替代。意圖接收器當想要編寫代碼來對外部事件做一些處理時,可以使用意圖接收器。意圖接收器并不顯示UI界面,它是通過NotificationManager來通知用戶他們感興趣的事件發(fā)生了。意圖接收器同樣可以被注冊在AndroidManifest.xml文件中,同時也可以在代碼中使用

47、Context.registerReceiver()來注冊自己的意圖接收器。當一個意圖接收器被觸發(fā)時,系統(tǒng)會根據(jù)需要來啟動應用程序。服務服務是具有長生命周期并且沒有用戶界面的代碼。內容提供者在Android中,每個應用程序都是有自己的userID及在自己的進程中執(zhí)行。這樣做的好處是,可以保護系統(tǒng)及應用程序,避免被其他不正常的應用程序所影響??梢园衙總€進程想像成是一個黑盒子,彼此不會互相影響,連內存的資料都無法共享。如果應用程序之間想要共享數(shù)據(jù),就需要使用用內容提供者。一個內容提供者就是一個類,它實現(xiàn)了一個標準的方法集合。其他的應用程序可以使用這些方法來保存和檢索此內容提供者處理過的數(shù)據(jù)。Int

48、ent的詳細解析在一個Android應用中,主要是由四種組件組成的,這四種組件可參考上一節(jié)的內容。而這四種組件是獨立的,它們之間可以互相調用,協(xié)調工作,最終組成一個真正的Android應用。在這些組件之間的通訊中,主要是由意圖協(xié)助完成的。意圖負責對應用中一次操作的動作、動作對應的數(shù)據(jù)、附加數(shù)據(jù)進行描述,Android則根據(jù)此意圖的描述,負責找到相應的組件,將意圖傳遞給它,并完成組件的調用。因此,意圖在這里起著一個媒體中介的作用,專門提供組件之間互相調用的相關信息,實現(xiàn)調用者與被調用者之間的解耦。例如,在一個聯(lián)系人維護的應用中,當在一個聯(lián)系人列表屏幕(假設對應的Activity為listActi

49、vity)上,點擊某個聯(lián)系人后,希望能夠調出此聯(lián)系人的詳細信息,為了實現(xiàn)這個目的,listActivity需要構造一個Intent,這個Intent用于告訴系統(tǒng),要做“查看”動作,此動作對應的查看對象是“某聯(lián)系人”,然后調用startActivity(intent intent),將構造的Intent傳入,系統(tǒng)會根據(jù)此intent中的描述,到AndroidManifest.xml中找到滿足此Intent要求的Activity。系統(tǒng)會調用找到的Activity,即為detailActivity,最終傳入Intent,detailActivitv則會根據(jù)此Intent中的描述,執(zhí)行相應的操作。In

50、tent的抽象描述在Android參考文檔中,對意圖的定義是執(zhí)行某操作的一個抽象描述。該抽象描述的具體內容如下:首先,它是要執(zhí)行的動作的一個簡要描述,如查看、修改等,Android定義了一套標準動作。此外,還可以根據(jù)應用的需要,定義自己的動作,并可定義相應的活動來處理自定義的動作。其次,是執(zhí)行動作要操作的數(shù)據(jù),Android采用指向數(shù)據(jù)的一個URI方式來實現(xiàn)。另外,除了動作和數(shù)據(jù)這兩個重要屬性外,還有一些附加屬性:類別:被執(zhí)行動作的附加信息。例如LAUNCHER_CATEGORY表示意圖的接受者應該在Launcher中作為頂級應用出現(xiàn);而ALTERNATIVECATEGORY表示當前的意圖是一

51、系列的可選動作中的一個,這些動作可以在同一個數(shù)據(jù)上執(zhí)行。數(shù)據(jù)類型:顯式指定意圖的數(shù)據(jù)類型。一般意圖的數(shù)據(jù)類型能夠根據(jù)數(shù)據(jù)本身進行判定,但是通過設置這個屬性,可以強制采用指定的類型。組件:指定意圖的目標組件的類名稱。通常Android會根據(jù)意圖中包含的其它屬性的信息,比如動作、數(shù)據(jù)/數(shù)據(jù)類型、類別進行查找,最終找到一個與之匹配的目標組件。附加信息:是其它所有附加信息的集合。使用附加信息可以為組件提供擴展信息,比如,如果要執(zhí)行“發(fā)送電子郵件”這個動作,可以將電子郵件的標題、正文等保存在附加信息里,傳給電子郵件發(fā)送組件??傊?,動作、數(shù)據(jù)/數(shù)據(jù)類型、類別和附加信息一起形成了一種語言。這種語言使系統(tǒng)能夠

52、理解諸如“查看某聯(lián)系人的詳細信息”之類的短語。隨著應用不斷的加入到系統(tǒng)中,它們可以添加新的動作、數(shù)據(jù)/數(shù)據(jù)類型和類別來擴展這種語言。應用也可以提供自己的活動來處理已經(jīng)存在的這樣的“短語”,從而改變這些“短語”的行為。Android中 Intent的使用在應用中,可以以兩種形式來使用Intent:(l)直接意圖:指定了組件屬性的意圖。通過指定具體的組件類,通知應用啟動對應的組件。(2)間接意圖:沒有指定組件屬性的意圖。這些意圖需要包含足夠的信息,這樣系統(tǒng)才能根據(jù)這些信息,在所有的可用組件中,確定滿足此意圖的組件。對于直接意圖,Android不需要去做解析,因為目標組件已經(jīng)很明確,Android需

53、要解析的是那些間接意圖,通過解析,將意圖映射給可以處理此意圖的活動、意圖接收器或服務。意圖解析機制主要是通過查找己注冊在AndroidManifest.xml中的所有意圖過濾器及其中定義的意圖,最終找到匹配的意圖。在這個解析過程中,Android是通過意圖的動作、數(shù)據(jù)類型、類別這三個屬性來進行判斷的,判斷方法如下:如果意圖指明定了動作,則目標組件的意圖過濾器的動作列表中就必須包含有這個動作,否則不能匹配。如果意圖沒有提供數(shù)據(jù)類型,系統(tǒng)將從數(shù)據(jù)中得到數(shù)據(jù)類型。和動作一樣,目標組件的數(shù)據(jù)類型列表中必須包含意圖的數(shù)據(jù)類型,否則不能匹配。如果意圖中的數(shù)據(jù)不是content:類型的URI,而且意圖也沒有

54、明確指定它的數(shù)據(jù)類型,將根據(jù)意圖中數(shù)據(jù)的格式(比如http:或者mailto:)進行匹配。同上,意圖的格式必須出現(xiàn)在目標組件的格式列表中。如果意圖指定了一個或多個類別,這些類別必須全部出現(xiàn)在組建的類別列表中。比如意圖中包含了兩個類別:LAUNCHER_CATEGORY和ALTERNATIVEC_CATEGORY,解析得到的目標組件必須至少包含這兩個類別。Android活動的生命周期Android平臺是個手機作業(yè)系統(tǒng)。撇掉其他功能不談,手機的特性,就是應該能隨時在未完成目前動作的時候,暫停正在使用的功能,切換到接電話、接收短信模式,而且在接完電話回到應用程序時,還希望能看到一樣的內容。現(xiàn)在用戶使

55、用智能手機,大多已習慣使用多工的作業(yè)系統(tǒng)(如windowsMobile),可以在用手機聽音樂的同時,執(zhí)行其他多個程序。同時執(zhí)行多個程序有它的明顯好處,但也有它的缺點。每多執(zhí)行一個應用程序,就會多耗費一些系統(tǒng)內存,而手機里的內存是相當有限的。當同時執(zhí)行的程序過多,或是關閉的程序沒有正確釋放掉內存,系統(tǒng)運行時就會覺得越來越慢,甚至不穩(wěn)定。為了解決這個問題,Android引入了一個新的機制生命周期。Android應用程序的生命周期是由Android框架進行管理,而不是由應用程序直接控制。通常,每一個應用程序(入口一般會是一個活動的onCreate方法,都會占據(jù)一個進程。當系統(tǒng)內存即將不足的時候,會依

56、照優(yōu)先級自動進行進程的回收。不管是使用者或開發(fā)者,都無法確定應用程序何時會被回收。關于進程的生命周期將在下一節(jié)中介紹,本節(jié)主要介紹活動的生命周期。一個活動類別除了onCreate方法之外,還預先定義了onPause(暫停)、onResume(繼續(xù))等的基本方法,當從一個活動切換到另一個活動的時候,原來的活動將經(jīng)過一連串的狀態(tài)改變。開發(fā)者可以在程序中添加一些各狀態(tài)相對應的流程,每次活動狀態(tài)改變時,就會執(zhí)行相對應的流程。要讓用戶有好的使用體驗,活動需要在各個周期中負責保管狀態(tài)、恢復狀態(tài)、傳送資料等工作?;顒拥纳鼱顟B(tài)Android的虛擬機是使用堆棧管理。主要有四種狀態(tài):(l)活動狀態(tài)活動狀態(tài)是指用

57、戶啟動應用程序或活動后,活動運行中的狀態(tài)。在Android平臺上,同一個時刻只會有一個活動處于活動或運行狀態(tài)。其他的活動都處于未啟動、停止或是暫停的狀態(tài)。(2)暫停狀態(tài)暫停狀態(tài)是指當活動暫時暗下來,退到背景畫面的狀態(tài)。當警告對話框或電話來了時,都會讓原來運行的活動退到背景畫面。新出現(xiàn)的警告對話框等界面元件蓋住了原來的活動畫面。活動處在暫停狀態(tài)時,用戶無法與原活動互動。(3)停止狀態(tài)停止狀態(tài)是指有其他活動正在執(zhí)行,而這個活動己經(jīng)離開屏幕,不再動作的狀態(tài)。通過按返回鍵,可以調出所有處于停止狀態(tài)的應用程序列表。處于停止狀態(tài)的活動,還可以通過通知來喚醒。(4)已回收或未啟動狀態(tài)已回收或未啟動狀態(tài)是指活

58、動尚未被啟動、已經(jīng)被手動終止或己經(jīng)被系統(tǒng)回收的狀態(tài)。要手動終止活動,可以在程序中調用finish方法。如果是被系統(tǒng)回收,可能是因為內存不足了,所以系統(tǒng)根據(jù)內存不足時的回收規(guī)則,將處于停止狀態(tài)的活動所占用的內存回收。Adroid活動生命周期如圖3-1所示:圖3-1 Android活動生命周期圖3-1所示的七個狀態(tài)又可以歸納成三組:(l)資源分配(創(chuàng)建/銷毀)完整的活動生命周期由創(chuàng)建狀態(tài)開始,由銷毀狀態(tài)結束。創(chuàng)建時分配資源,銷毀時釋放資源。(2)可見與不可見(啟動/重新啟動/停止)當活動運行到啟動狀態(tài)時,就可以在屏幕上看到這個活動。相反地,當活動運行到停止狀態(tài)時,這個活動就會從屏幕上消失。當用戶按

59、下返回鍵回到上一個活動時,會先到重新啟動狀態(tài),再到一般的啟動狀態(tài)。(3)用戶取得屏幕的控制權(繼續(xù)/暫停)當有個警告對話框、短信、電話等信息進入時,原來的活動會進入暫停狀態(tài),暫時放棄屏幕的控制權,被中斷到背景去,將前景交給優(yōu)先級高的事件。當這些優(yōu)先級高的事件處理完后,活動就改進入繼續(xù)狀態(tài),此時又取得屏幕的控制權?;顒拥倪\作流程由實際運行來看,我們可以歸納出所有Android應用程序都遵循的運作流程:(l)一般啟動啟動一個活動的基本流程為onCreate一onstart一onResume。該流程首先分配資源給這個活動(創(chuàng)建狀態(tài)),然后將活動的內容顯示到屏幕上(啟動狀態(tài));在一切就緒后,取得屏幕的

60、控制權(恢復狀態(tài)),用戶可以開始使用這個程序。(2)調用另一個活動調用另一個活動的基本流程為onPause(l)一onCreate(2)一onStart(2)一0nResume(2)一onStop(l)。該流程首先凍結原來的活動,再交出屏幕控制權;直到活動2完成一般啟動流程后,活動1才會被停止。(3)回到原來活動回到原來活動的基本流程為onPause(2)一onRestart(1)一onStart(l)一onResume(1)一onStop(2)一onDestroy(2)。另外按返回鍵也可以回到原來的活動。(4)退出結束退出結束的基本流程為onPause一onStop一onDestroy。如果

溫馨提示

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

評論

0/150

提交評論