計算機系基于Android的電影播放系統畢業設計論文畢業論文_第1頁
計算機系基于Android的電影播放系統畢業設計論文畢業論文_第2頁
計算機系基于Android的電影播放系統畢業設計論文畢業論文_第3頁
計算機系基于Android的電影播放系統畢業設計論文畢業論文_第4頁
計算機系基于Android的電影播放系統畢業設計論文畢業論文_第5頁
已閱讀5頁,還剩41頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

1、前言基于Android的電影播放系統1前言隨著中國網絡的發展,截至2013年12月,我國網民規模達6.18億,全年共計新增 網民5358萬人。互聯網普及率為45.8%,較2012年底提升了 3.7個百分點,普及率增長 幅度與2012年情況基本一致,整體網民規模增速持續放緩。與此同時,手機網民繼續 保持良好的增長態勢,規模達到5億,年增長率為19.1%,手機繼續保持第一大上網終 端的地位。而新網民較高的手機上網比例也說明了手機在網民增長中的促進作用。2013年中國新增網民中使用手機上網的比例高達 73.3%,遠高于其他設備上網的網民 比例,手機依然是中國網民增長的主要驅動力。顯而易見這是3G/4

2、G無線網絡功勞,越來越多白人采用3G/4G,因為它不僅可以上網,甚至能達到寬帶的水平,我們可在 在上面瀏覽圖片,聊天,看電影。科技帶動生活,從那個全村人集體放錄像的電影時代到現在,電影逐漸成為生活的一部分。第1頁(共46頁)基于Android的電影播放系統2選題背景手機現已成為人類生活中必不可少的生活工具。 從最初的電話及時間查看功能到 由被諾基亞公司收購的塞班公司所研發的塞班智能手機, 移動終端進入到了飛速發展 的階段。Symbian諾基亞可以說是一個時代的象征,在它鼎盛的時期可以說即使微軟也 無法與之相比。相信每個人都會有一部諾基亞的手機,它簡潔的界面、強大的功能、 優良的做工讓我們都無法

3、忘卻。然而每個時代都逃脫不了科技的發展,2012年Symbian 系統的市場占有率縮減到了 5%我們在為諾基亞默默祈禱的時候,Android、IOS悄然 走進我們的生活,改變著這個世界。Android 系統是一一款建立在Linux基礎上的移動終端操作系統,憑借其開源性、安 全性被廣泛的使用在各大廠商的手機及移動 PC品中。2011年第一季度,Android在 全球的市場份額首次超過塞班系統,躍居全球第一。2013年的第四季度,Android平臺手機的全球市場份額已經達到78.1%。2013年09月24日谷歌開發的操作系統Android在迎來了 5歲生日,全世界采用這款系統的設備數量已經達到10

4、億臺。國產手機在Android的帶動下也迎來了春天,不再是以前“差”的代名詞。華為、 小米、魅族這些基于 Android的手機已經占領了中國手機的半壁江山。這同時給 Android軟件開發的工程師們帶來了極大的方便和市場。Android系統的開放性和平臺 的優良性使得Android軟件的開發很輕松很簡單。但是我們如何找到一部好看的電影?如何知道電影的基本信息?如何快速找到 觀看地點甚至直接能在隨時隨地播放一直困擾的人們。一款專業開放的軟件,能運行 在占有率最高的Android平臺上或許能很好的解決這些難題。這款基于Android的電影播放系統Ap甫9充分利用Android系統的平臺和網絡優勢

5、滿足人們對電影觀看的需要。我們可以提供電影的推薦及播放收錄電影的檢索,以及結合二維碼掃描的便捷識別方式給每個有需求的影迷提供準確快捷的電影信息。第2頁(共46頁)方案論證3方案論證系統開發思想系統結構系統軟件的開發主流的分為兩個方式:B/S和C/S。本次我們需要的是在Android 手機平臺上安裝客戶端,在we淵對后臺進行管理。下面就對C/S和B/S模式進行具體 的闡述:C/S結構,如圖1所示,即大家熟知的客戶機和服務器結構。它是軟件系統體系結構,通過它可以充分利用兩端硬件環境的優勢,將任務合理分配到Client端和Server端來實現,降低了系統間通訊開銷。目前大多數應用軟件系統都是 Cli

6、ent/Server形式的兩層結構,由于現在的軟件應用系統正在向分布式的 WelE用發 展,We冰口 Client/Server應用都可以進行同樣的業務處理,應用不同的模塊共享邏輯組件;因此,內部的和外部的用戶都可以訪問新的和現有的應用系統,通過現有應用系統中的邏輯可以擴展出新的應用系統。這也就是目前應用系統的發展方向。C/S結構的基本原則是將計算機應用任務分解成多個子任務,由多臺計算機 分工完成,即采用“功能分布”原則。客戶端完成數據處理,數據表示以及用戶接口 功能;服務器端完成DBMS數據庫管理系統)的核心功能。這種客戶請求服務、服務 器提供服務的處理方式是一種新型的計算機應用模式。Cli

7、ent和Server常常分別處在相距很遠的兩臺計算機上,Client程序的任務是將用戶的要求提交給Server程序,再將Server程序返回的結果以特定的形式顯示給 用戶;Server程序的任務是接收客戶程序提出的服務請求,進行相應的處理,再將結果返回給客戶程序。B/S結構(Browser/Server ,瀏覽器/服務器模式),如圖2所示。是WEB起后的 一種網絡結構模式,WEB覽器是客戶端最主要的應用軟件。這種模式統一了客戶端,將系統功能實現的核心部分集中到服務器上,簡化了系統的開發、維護和使用。客戶機上只要安裝一個瀏覽器,如 Netscape Navigator或Internet Expl

8、orer ,服務器安 裝SQLServer、Oracle MYSC數據庫。瀏覽器通過 WebServer同數據庫進行數據交互第3頁(共46頁)基于Android的電影播放系統Browser/Server結構主要是利用了不斷成熟的 We瀏覽器技術:結合瀏覽器的多 種腳本語言和ActiveX技術,用通用瀏覽器實現原來需要復雜專用軟件才能實現的強 大功能,同時節約了開發成本,如圖二所示B/S最大的優點就是可以在任何地方進行操作而不用安裝任何專門的軟件,只要 有一臺能上網的電腦就能使用,客戶端零安裝、零維護。系統的擴展非常容易。B/S結構的使用越來越多,特別是由需求推動了 AJAXJ術的發展,它的程序

9、也能 在客戶端電腦上進行部分處理,從而大大的減輕了服務器的負擔;并增加了交互性, 能進行局部實時刷新。a閨唱圖2 B/S結構圖第4頁(共46頁)方案論證系統前臺開發思路為了使用方便,我們采用Android操作系統作為我們此次系統前臺的開發平臺。 我們將系統的前臺做成一款手機 APP可以隨時安裝和調試。前臺的主要功能是承擔 人與后臺數據的交互,即表示層。手機通過網絡連接系統的后臺。同時獲取有關數據 呈現在我們面前并得到我們的操作將信息傳輸至后臺。用戶可以通過可視化的界面來查看從后臺傳輸來的數據,這是系統開發的最核心的目的。系統后臺開發思路系統后臺是整個系統的應用層。系統后臺分為兩個部分:一個是服

10、務器,主 要是Servlet編寫,它連接著數據庫和系統前臺,各項文件的傳輸和各種操作都是由 服務器完成。另一個是后臺管理,通過簡單的JSP頁面編寫,主要是對數據庫中的數 據進行管理、更新。系統后臺是系統中最重要的部分。系統相關技術后臺相關技術現在比較成熟的技術主要有ASP PH的JSP。由于本次客戶端使用服務器對數據 進行處理即可,所以將采用Servlet技術。后臺管理采用JSPK術。Servlet (Server Applet ),全稱Java Servlet 。是用Java編寫的服務器端程序。其主要功能在于交互式地瀏覽和修改數據,生成動態 We的容。狹義的Servlet是指 Java語言實

11、現的一個接口,廣義的Servlet是指任何實現了這個Servlet接口的類,一 般情況下,人們將Servlet理解為后者。Servlet運行于支持Java的應用服務器中。從原理上講,Servlet可以響應任何類 型的請求,但絕大多數情況下Servlet只用來擴展基于HTT脅議的Web艮務器。最早支持Servlet標準的是JavaSoft的Java WebServer。此后,一些其它的基于 Java的Web艮務器開始支持標準的Servlet 。Servlet是在服務器上運行的小程序。這個詞是在Java applet的環境中創造的,Java applet是一種當作單獨文件跟網頁一起發送的小程序,它

12、通常用于在客戶 端運行,結果得到為用戶進行運算或者根據用戶互作用定位圖形等服務。服務器上需要一些程序,常常是根據用戶輸入訪問數據庫的程序。這些通常是使第5頁(共46頁)基于Android的電影播放系統用公共網關接口( Common Gateway Interface , CGI)應用程序完成的。然而,在服 務器上運行Java ,這種程序可使用Java編程語言實現。在通信量大的服務器上, JavaServlet的優點在于它們的執行速度更快于 CGI程序。各個用戶請求被激活成 單個程序中的一個線程,而無需創建單獨的進程,這意味著服務器端處理請求的系統 開銷將明顯降低。JSPir名為Java Ser

13、ver Pages,中文名叫java服務器頁面,其根本是一個簡化的 Servlet設計,它1 是由Sun Microsystems公司倡導、許多公司參與一起建立的 一種動態網頁技術標準。JSPK術有點類似ASPfc術,它是在傳統的網頁HTML標準通 用標記語言的子集)文件(*htm,*html)中插入Java程序段(Scriptlet)和JSPB記(tag),從而形成JSPt件,后綴名為(*.jsp)。用JSPFF發的Web用是跨平臺的,既 能在Linux下運行,也能在其他操作系統上運行。它實現了 Html語法中的java擴展(以%, %形式)。JSPf Servlet 一樣,是在 服務器端執

14、行的。通常返回給客戶端的就是一個HTMLC本,因此客戶端只要有瀏覽器 就能瀏覽。JSPU術使用Java編程語言編寫類XMLtags和scriptlets,來封裝產生動態網頁的處理邏輯。網頁還能通過tags和scriptlets 訪問存在于服務端的資源的應用邏輯。 JSP等網頁邏輯與網頁設計的顯示分離,支持可重用的基于組件的設計,使基于 Web 的應用程序的開發變得迅速和容易。JSP(JavaServer Pages)是一種動態頁面技術,它的主要目的是將表示邏輯從Servlet中分離出來。Java Servlet是JSP的技術基礎,而且大型的WebZ用程序的開發需要JavaServlet和JSF

15、合才能完成。JSPM備了 Java技術的簡單易用,完全的面向對象,具 有平臺無關性且安全可靠,主要面向因特網的所有特點。數據庫技術MySQL是一個關系型數據庫管理系統,由瑞典 MySQLAB公司開發,目前屬于 Oracle旗下公司。MySQLi流行的關系型數據庫管理系統, 在WEB應用方面MySQL 是最好的 RDBMS (Relational Database Management System ,關系數據庫管理系統) 應用軟件之一。MySQL是一種關聯數據庫管理系統,關聯數據庫將數據保存在不同的 表中,而不是將所有數據放在一個大倉庫內,這樣就增加了速度并提高了靈活性。MySQLM使用的SQ

16、L語言是用于訪問數據庫的最常用標準化語言。MySQK件采用第6頁(共46頁)方案論證了雙授權政策(本詞條“授權政策”),它分為社區版和商業版,由于其體積小、速 度快、總體擁有成本低,尤其是開放源碼這一特點,一般中小型網站的開發都選擇 MySQL作為網站數據庫。由于其社區版的性能卓越,搭配 PHP和Apache可組成良 好的開發環境。Android 技術Android是一種基于Linux的自由及開放源代碼的操作系統,主要使用于移動設 備,如智能手機和平板電腦,由Google公司和開放手機聯盟領導及開發。 尚未有統一 中文名稱,中國大陸地區較多人使用“安卓”或“安致”。Android操作系統最初由

17、Andy Rubin開發,主要支持手機。200外8月由Google收購注資。2007年11月,Google 與84家硬件制造商、軟件開發商及電信營運商組建開放手機聯盟共同研發改良 Android系統。隨后Google以ApacheFF源許可證的授權方式,發布了 Android的源代碼。 第一部Android智能手機發布于2008年10月。Android逐漸擴展到平板電腦及其他領域 上,如電視、數碼相機、游戲機等。2011年第一季度,Android在全球的市場份額首 次超過塞班系統,躍居全球第一。二維碼技術二維條碼/二維碼)是用某種特定的幾何圖形按一定規律在平面(二維方向上) 分布的黑白相間的圖

18、形記錄數據符號信息的;在代碼編制上巧妙地利用構成計算機內部邏輯基礎的“ 0”、“1”比特流的概念,使用若干個與二進制相對應的幾何形體來 表示文字數值信息,通過圖象輸入設備或光電掃描設備自動識讀以實現信息自動處 理:它具有條碼技術的一些共性:每種碼制有其特定的字符集;每個字符占有一定的 寬度;具有一定的校驗功能等。同時還具有對不同行的信息自動識別功能、及處理圖 形旋轉變化點。運行環境和開發工具的選擇運行環境系統運行環境: Windows 10JAVA云行環境:JDK 1.8第7頁(共46頁)基于Android的電影播放系統Android運行環境:SDK開發工具服務器開發工具:Myeclipse

19、Profession 2014+Tomcat數據庫開發工具:Mysql 5.6+NavicatAndroid 開發工具:Eclipse+ADT-22.6.2 插件第8頁(共46頁)系統詳細設計4系統詳細設計系統功能模塊設計前臺功能模塊設計客戶端是整個系統的用戶交互界面,是系統開發的首要目的。客戶需要在Android 手機上裝上我們所開發的客戶端,如圖3所示。首先,初始界面應該是登陸界面,用戶需要在該界面輸入用戶名跟密碼。 當服務 器對個人信息進行匹配成功后即可進入主界面。如果沒有用戶名,我們還要提供一個 跳轉,進入注冊界面。按要求填寫好后提交,后臺服務器將數據寫入數據庫。等待注 冊成功提示,然

20、后返回登陸界面進行登陸。其次,當成功登陸后,界面跳轉到我們軟件的主界面。在該界面,我們分為三個 Tab第一個界面是我么所推薦的電影列表。第二個 Ta昵所有的電影列表以及搜索框, 我們可以輸入搜索的信息進行查找,并以列表的方式呈現給用戶。第三個Tab一個二維碼掃描按鈕,我們可以點擊該按鈕調用相機進行二維碼掃描。當我們獲取到自己想要找的電影列表后, 點擊該影片名。界面會跳轉到信息詳情 頁,在該頁面,主要包含有關于這部電影的海報、簡介、預告片以及觀看鏈接。我們圖3前臺功能模塊圖可以點擊查看,或者通過調用瀏覽器來訪問相關信息。最后,在主界面的頂端有用戶圖標,用戶點擊后可以進入個人信息頁。 在該界面第9

21、頁(共46頁)基于Android的電影播放系統包含個人的基本信息以及退出按鈕。后臺功能模塊設計服務器是整個系統的中間層,也是該系統實現的核心。它的主要任務是建立業務 的邏輯關聯和后臺管理等功能,保證用戶操作的正確性以及個人信息的安全性,如圖4所示。首先,我們需要一個數據庫的基礎操作方法。 包括定義數據庫連接、關閉以及增 刪改查的基本操作,并返回結果集。其次,我們需要一個對用戶操作類型的層。該層調用基礎操作方法。實現對數據 庫的實際操作以及數據的處理。然后,我們需要一個對客戶端的結合層。 該層調用實際操作層,執行對客戶端數 據的處理,完成數據的傳入傳出。最后,我們需要一個網頁應用來為我們的數據進

22、行更新與普通用戶的賬戶管理等 功能圖4后臺功能模塊圖數據庫設計數據庫關系模式在設計數據庫時,通常用“范式(Normal Forms)”定義消除數據冗余的程度,范 式越高,分解的表也增多,訪問時性能(速度)將下降。因此在本設計中我主要以第 三范式為主,兼顧系統實際運行情況,允許部分冗余的存在。下面是E-R圖,向關系模型轉換后的部分關系模式:第10頁(共46頁)系統詳細設計用戶(用戶名稱、用戶ID、用戶密碼、年齡、)電影簡介(電影ID、電影名稱、電影海報、影片時長、)電影詳情(電影ID、電影名稱、上映時間、主演人員、電影介紹、電影短片、)電影海報(電影 ID、picture1 、picture2、

23、pictures、picture4、)電影短片(電影 ID、video1、video2、video3、video4、)管理員(用戶名稱、用戶ID、用戶密碼、年齡、)4.2.2數據庫表結構表1是設計中所用到的所宿表的名稱及相關作用描述:表1 系統所后表數據庫表名描user用戶movies電影簡介存儲電影簡介moviesfull電影詳情存儲電影詳情moviespicture電影圖片存儲電影圖片moviesvideo電影短片存儲電影短片super管理員存儲管理員信息(2)創建表:在對表的具體設計時我們以user表為例,如表2所示。本表是嚴格按照第三范式來設計的,用戶ID為主屬性,可以作為主索引,其它

24、為 非主屬性。首先建立數據庫MySql,再建立表user。其中ID為主鍵。CREATE TABLE user (ID int(11) NOT NULL AUTO_INCREMENT,username char(20) NOT NULL DEFAULT ,password char(20) NOT NULL DEFAULT ,age char(20) NOT NULL DEFAULT ,gender char(20) NOT NULL DEFAULT ,job char(20) NOT NULL DEFAULT ,第11頁(共46頁)基于Android的電影播放系統表2 用戶表的設計列名類型/大

25、小鍵/允許空描述IDInt/4主鍵對記錄標識遞增量 1usernameVarchar/20否用戶名passwordVarchar/20否密碼ageVarchar/20否年齡genderVarchar/20否性別jobVarchar/50是工作PRIMARY KEY (Id)ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8表3電影簡介表的設計列名類型/大小鍵/允許空描述movieIDInt/4主鍵對記錄標識遞增量 1moivenameVarchar/20否電影名稱moivepicVarchar/20否電影海報longVarchar/20否電影

26、時長表4電影詳情表的設計列名類型/大小鍵/允許空描述movieIDInt/4主鍵對記錄標識遞增量 1moivenameVarchar/20否電影名稱showtimeDatatime否上映時間actressVarchar/20否主演人員introductionVarchar/20電影簡介movieVarchar/50否電影短片第12頁(共46頁)系統詳細設計表5電影圖片表的設計列名類型/大小鍵/允許空描述MovielDInt/4主鍵對記錄標識遞增量 1picturel 、Varchar/20否圖片1picture2Varchar/20是圖片2picture3Varchar/20是圖片3pictu

27、re4 V;irchar/20是圖片4表6 電影短片表的設計列名類型/大小鍵/允許空描述MovieIDInt/4主鍵對記錄標識遞增量 1movie1Varchar/20否短片1movie1Varchar/20是短片2movie1Varchar/20是短片3movie1Varchar/20是短片4movie1Varchar/50是短片5表7管理員表的設計列名色/大小鍵/允許空描述superIDInt/4主鍵對記錄標識遞增量 1nameVarchar/20否管理員名稱spasswordVarchar/20否密碼sageVarchar/20否年齡sgenderVarchar/20否性別sjobVar

28、char/50是工作第13頁(共46頁)基于Android的電影播放系統系統的性能設計在網站測試完之后,我就要使它成為公共的站點。這主要是將我的網站上傳到 WEB 服務器上,然后在 WEB務器上配置好數據庫,并用預先申請的域名映射到這個 WEB 服務器的IP地址。與傳統的軟件系統不一樣,We原統是比較靈活的,它需要經常更新的。這種更 新包括細微的變化到大規模的變化, 可以是頁面內容的刷新、也可以是整個頁面結構 框架的更新(例如:整個主頁結構的變化、增加或變更一個欄目。正是因為這種改變 是經常存在的,所以大型 WelE用系統的管理是一項艱巨的任務。對每一種變化,無 論大小,都需要以一種合理的,有

29、控制的方式進行處理。源程序代碼的邏輯簡明清晰、易讀易懂是編碼一個重要標準,為了做到這一點應 該做到下述規則:(1)程序內部文檔:它包括恰當的標識符,適當的注解和程序的視覺組織等。(2)數據說明:數據說明的次序應該標準化,如果多個變量名在一個語句中說 明時,應該按字母排列。(3)語句構造:遵循簡單、高效,盡量少使用嵌套和復雜的條件測試。(4)輸入/輸出:對所有輸入、輸出數據進行檢驗,以驗證其是否合法,并保持 輸入格式一致(5)效率:盡量減少時間和空間的復雜度。在WEBU試中,由于設計時是按功能模塊進行開發的,因此開始就進行自頂向下 測試是比較困難的。我在單元測試通過的情況下,然后再把它們整合到一

30、起進行集中 測試。對于少數的關鍵功能模塊,我采用自頂向下的方法,以早期發現模塊連接和功 能實現上的錯誤。由于WE牽涉的頁面比較多,并且大部分都涉及到頁面的安全性問題。因此,除 了常規的測試之外,我還要進行破壞性和強度測試系統的安全性設計由于后臺管理是以WEB式運行,因此它的安全性來源于運行環境和系統本身。 對于運行環境我們應該及時進行安全跟蹤,不斷的對其中涉及到的軟件進行升級和替第14頁(共46頁)系統詳細設計換,以防止存在不安全漏洞而被黑客攻擊。對于系統本身:為防止代碼外泄可以用微 軟的對系統進行加密,其中對于存在不安全隱患的代碼,例如:地址欄中的敏感參數 的顯示和非正常使用出現的錯誤,要及

31、時的進行修改和預防。第15頁(共46頁)基于Android的電影播放系統5系統實現系統前臺框架結構通常程序中的一個模塊完成一個適當的子功能。 應該把模塊組織成良好的層次系 統。我們在對模塊設計時應該遵循啟發式規則,使得模塊規模適中,深度、寬度、扇 出和扇入適當,并在設計模塊時盡量使模塊獨立,做到高內聚,低耦合,并保持信息 隱蔽和局部化原則。在基于Android的客戶端設計中,對系統的功能進行嚴格的劃分是比較重要的, 這樣可以進行有效和完善的管理。因此從設計上的需要我把它分為前臺信息的瀏覽、 處理和后臺數據、文件的管理圖5前臺代碼結構在MyEclipse 中新建 Android App Proj

32、ect ,命名為 AndroidHTTPDemo 如圖五所示:登陸和注冊頁面:布局文件login.xml , register.xml登陸和注冊頁面對應的Activity 組件,在activity 中進行具體操作login.java , register.java 能夠實現Http 以get/post 方式通信的類 WebService.java ,第16頁(共46頁)系統實現WebServicePost.java網絡通信權限一下是Manifeast配置文件的主要內容,如圖六所示:JD1 LogiiLjdvd D Register S| AndroidHTTTPDerno ManifesL k

33、uses-perni ssion an droid: a ncfroi d. Z mi ss i on ACCESS_NETWOBJ(STRTE, uiEG-ponkisfiion android 3Danne:i*dr?tirO!icJ.porjiTi sion * internet啊 ; 士. ppi Ic&tl OTlamdro id:al lows aGkup=t17amdroid; cfrawaJb ie/i g_1 aun c 力 mr,android:label111 striny/upp 門口所總聲android: theite : f tyle/AppThenie、activ

34、ity aLndrdd:man=c3/it:pdwroRiey_ts:t_r21229and m L d: mm七由.帆卬表皿.Log j n ”2 4android si ab電dpp_醒占同也 p 圖6配置文件圖5.1.1前臺登陸模塊該模塊包含登陸和注冊兩個功能,我們要使用該系統的后續功能時需要采用登陸 的方式才能進入到系統的主界面當我們點開軟件時,第一頁面是我們的登陸界面。該 頁面主體是用戶名輸入框、密碼輸入框以及“登陸”按鈕,下方還有“沒有賬號?去 注冊”的頁面跳轉文字。我們有輸入賬號密碼點擊登陸的選擇以及點擊“沒有賬號? 去注冊”去注冊兩種選擇。注冊頁面跟登陸界面類似主要是用戶名輸入

35、框、密碼輸入框以及“注冊”按鈕, 下方有“已有賬號?立即登陸”的頁面跳轉文字,我們可以點擊跳轉回到登陸頁面。 如圖7所示。public class MyThread implements Runnable Override第17頁(共46頁)基于Android的電影播放系統public void run() infoWebService.executeHttpGet(username.getText().toString(), password.getText().toString();/infoWebServicePost.executeHttpPost(username.getText()

36、.toString(), password.getText().toString();handler.post(new Runnable() Override public void run() infotv.setText(info); dialog.dismiss(); );重寫登陸按鈕,綁定監視器,首先驗證是否能連接網絡。其次,檢查文本框中的 密碼以及賬號是否為空。最后,創建子線程,分別進行Get和Post傳輸。圖7登陸界面第18頁(共46頁)系統實現5.1.2電影推薦模塊該界面主要是推薦最近最新的電影給用戶并以列表的方式推送到電影推薦模塊, 當我們進入系統主頁面首頁就是電影推薦頁面,

37、我們可以通過點擊列表中的電影進入 到電影詳情界面,如圖8所示。等送詼C. :圖8電影推薦模塊5.1.3電影查詢模塊電影查詢可以分為兩種情況:一種是通過電影推薦頁面上方的搜索框輸入我們要 搜索的電影名稱,系統會根據關鍵字模糊查詢有關的電影并以列表的方式呈現在我們 面前。第二種是通過二維碼掃描技術,掃描電影的二維碼并直接跳轉到該電影的詳情 頁。下面以二維碼掃描為例進行描述:Log.d(TAG, Got decode succeeded message);state = State.SUCCESS;第19頁(共46頁)基于Android的電影播放系統Bundle bundle = message.g

38、etData();Bitmap barcode = bundle = null ? null :(Bitmap) bundle.getParcelable(DecodeThread.BARCODE_BITMAP);activity.handleDecode(Result) message.obj, barcode);break;獲取圖片解碼在DecodeThread里面實現DecodeThread里面解碼成功后,會吧數 據序列化,然后保存到Bundle里面,我們可以直接通過Bundle的序列化,獲取到圖 片的數據。同時會吧解碼后的結果保存到 MSG!面。圖9媒體搜索圖10二維碼搜索5.1.4電

39、影信息顯示當我們通過上面三種方法找到所需要的電影時,我們會跳轉到電影詳情頁面,在該頁面我們可以看到電影的上映時間、簡介、海報等相關信息。并且,我們可以通過第20頁(共46頁)系統實現點擊下方的電影短片來觀看影片或者預告。如圖 11所示言制電JI&律I7圖11電影信息顯示5.1.5電影播放模塊該界面主要是在電影詳情頁面對所獲取到的電影短片進行播放public void onClick(View v) try String filename = filenameText.getText().toString();switch (v.getId() case R.id.play:/得到文件名稱重點代

40、碼String filenames = filenameText.getText().toString();第21頁(共46頁)基于Android的電影播放系統/第一步對給對象進行重設mediaPlayer.reset();/設置流的類型關鍵代碼mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);/設置數據來源mediaPlayer.setDataSource(/sdcard/ + filenames);/設置需要播放的視頻/把視頻輸出到顯示控件上重點代碼mediaPlayer.setDisplay(surfaceView.get

41、Holder();/播放時前需要緩沖一下mediaPlayer.prepare();mediaPlayer.start();主要是獲取數據來源并將數據流顯示在mediaPlayer控件中。當然這里我們還可以通過調用第三方視頻播放工具直接播放該視頻。圖12電影播放5.2系統后臺模塊設計.新建Web Project ,命名為HelloWeb。如圖13所示DBManager.java私有化DBManage的構造函數,定義一個靜態的成員變量,在一個共有方法第22頁(共46頁)系統實現中實例化該成員變量。若要實例化對象調用此方法即可。同一時間該類只能存在一個對象。符合sql對象習慣。(此方式有缺陷,具體

42、自行搜索)樣 HelioWeb 田 COIH-db卜 DBManager.jdvaT B com.service星I Serviee.javaT 由 corn.servlet國 LogLetjava卜團 RegLetjavaa Efe. JRE System Library JavaSEA JavaEE 6.0 G eneric L ibrary卜 E& Web App LibrariesMJSTL 1.2.1 Library& build* &WebRoot &META-INF* & WEB-INF &lib web .xml圖13后臺代碼結構定義數據庫連接、關閉以及增刪改查的基本操作,返回

43、結果集。Service.java這個簡單,根據傳參得到sql語句,通過DBManage#!的createInstance() 方法 實例化對象,調用本類的操作方法,完成數據操作。寫到這里,可以預見:下一個類 會通過調用本類方法完成登陸/注冊的服務。LogLet.java一個簡單的Servlet ,用于處理Http請求(get/post )。果然,實例化上一個類 的對象,并調用了 login方法,返回值為布爾類型。RegLet.java和該類近乎相同,只 是在 serv.login(username, password); 換成了 serv.register(username, password

44、);此處省去第23頁(共46頁)基于Android的電影播放系統2、項目結構圖如下:這里我們采用servlet編程,所以不需要任何jsp頁面。LogLet 類和RegLet類分別用于處理客戶端的登陸和注冊請求;Service類用于完成servlet對數據庫的具體操作;DBManage#1用于進行數據庫基本操作;左側是項目圖,右側管理員登陸模塊設計在原來的服務器項目HelloWeb項目中添加JSPM面:1網頁登陸的界面,用戶在此頁面填寫用戶名密碼的網頁文件Login.htmlRegister.html2用于處理頁面輸入驗證的JS文件login.js , register.js31E陸的處理文件

45、LoginServlet.java , RegisterServlet.java下面是web.xml的截圖,如圖15所示。uwrvlw與*hMt-l 1 3”勺門孑in mTETplL口4勺1. mervief?M M! rv 1 r -pen F、serviq 日 ervlet raappin 尹=三日、kt-xaxii已-二 alidalioxidE,serrletY加:uswl咤m arep帕.OlidlaMonCode /vrtT 加mQ sen.-LeOcrvlrt-mappji 自二alxdjtiCi_de let- tiaie -ir 1-prttern. =tlidaEioiL

46、Uod;- irl-peltcm 生七i Let tmprjjnii j -圖15 web截圖資料庫后臺管理圖16后臺登陸第24頁(共46頁)系統實現5.2.2電影更新模塊設計該模塊主要是對電影的詳細信息進行增刪改等更新操作,如圖17所示public boolean executeUpdate(String sql) if (con = null) creatConnection();try Statement stmt = con.createStatement();int iCount = stmt.executeUpdate(sql);System.out.println(操作成功,所影

47、響的記錄數為+ String.valueOf(iCount); return true; catch (SQLException e) System.out.println(e.getMessage();return false;/對數據庫的查詢操作public ResultSet executeQuery(String sql) ResultSet rs;try if (con = null) creatConnection();Statement stmt = con.createStatement();try rs = stmt.executeQuery(sql); catch (SQL

48、Exception e) System.out.println(e.getMessage();return null;第25頁(共46頁)基于Android的電影播放系統 catch (SQLException e) System.out.println(e.getMessage();System.out.println(executeQueryError!);return null;return rs;圖17電影更新5.2.3用戶管理模塊設計該模塊主要是對用戶的個人信息進行增刪改等操作,主要方法還是通過調用DBManager.java類中的增刪改操作對數據進行修改,如圖 18所示。圖18用戶

49、管理第26頁(共46頁)系統部署6系統部署前臺的部署(1):將java 工程的配置文件放入/usr/local/tomcat/bin 中,例如:將工程 conf目錄下所有的配置文件復制到/usr/local/tomcat/bin/conf 中。(2):修改/usr/local/tomcat/conf 中的server.xml 和 web.xml 修改相應的設置。 如:虛擬路徑(3):在/usr/local/tomcat/webapps中建立工程目錄,把java web工程復制到此目錄下,如圖19所示。數據庫的部署在設計中我采用的是JDBC方式連MySql數據庫,服務器名:ZHLL賬戶為:roo

50、t , 密碼為:zhuyu123,數據庫名為:text ,方法為:DBManager后臺的部署Android項目的調試方式有兩種,一種是在模擬器上進行模擬,另外一種是在真 機上直接調試。在真機上,我們首先要打開手機上的US明試模式,將手機與電腦用數據線連接。在Android項目上右鍵-運行方式-Android Application 等待文件上傳到手機上。在模擬器中類似,首先我們要建一個模擬器:進入 android-sdk-windows 目錄,找到 AVD Manager.exe, 雙擊運 行 AVD Manager.exe o點擊右邊的new 按鈕,新建虛擬機并填寫一些信息,如 Name

51、SD大第27頁(共46頁)基于Android的電影播放系統小,填寫,主要信息,正確后,確認按鈕可以使用。Android項目上右鍵-運行方式-Android Application 等待文件上傳到模擬器 上。我們用真機進行測試這里的IP是你的服務器IP,不確定時看下是否能用手機ping 工具ping通。,我簡單說一下真機與 windows/linux下的服務器網絡連接流程:你的服務器端程序已發布到互聯網:這好辦,就是你的IP地址。你是在本地電腦上,這要求你的真機和你的電腦在同一個局域網。兩種較方 便的方法:路由器/筆記本的無線網卡是個人都能看出來第二種方便,誰也不能到哪 都帶個路由器吧,那么好,

52、筆記本開啟無線熱點,手機 wifi連接熱點,這是客戶端和 服務器就在一個局域網內。查看筆記本ip地址中的無線網卡地址(winipconfig/lnxifconfig - wlan),加上你的服務器端口號(服務器為開啟狀態),訪問即可。conn.setConnectTimeout(3000);需要設置超時時間,否則會 執行默認超時時間,30s ?接收到的輸入流需要先轉換成比特位,在轉換成string類型。Problems Tasks H Web Browser幾 Servers 也 Project MigrationmyedipseTomcatServer Remote Java Applica

53、tion/home/shan/jsp/myeclipse/binary/coadmin-adminConnecting to databasetSqlManager:Connect to database successful,Close connection to database*Close connection successfulSuccss圖19服務器連接第28頁(共46頁)總結7總結時間過得飛快,從大一到大四,從剛論文是什么的疑問到已經寫到論文的結尾, 大學的時光就這樣過去了。曾經懵懂的我們開始擔心自己的未來, 我們來大學學了什 么?懂得了什么?又做了什么?每個人心中都有不同的答案

54、。剛開始畢業設計的時候心里很緊張,題目各種各樣涉及到的知識也是五花八門。 我從未想到自己會將他完成。Android這個我們天天用卻不知道到的知識讓我又愛又 怕,既興奮又畏懼。幸而得到張佳老師的幫助,從題目的確定到知識點的鞏固,我花 費了很長的一段時間。尤其是 Android的項目開發與設計,運行環境的搭建,工具的 使用,項目的組成,讓我深刻理解到了一個軟件的運作方式, 為后來的開發打下基礎。 緊接著是界面的設計,看到有的人設計的可謂巧奪天工, 而自己卻十分簡潔,后來發 現其實實現功能的代碼都是很一般沒有說不能理解的, 我們所學的知識大多都是想同 的,這讓我放下了心里的包袱。一個系統的實現并不是

55、一個單純的軟件,就像沒有電的燈泡無法照亮前進的路。數據庫的實現,服務器的搭建,看似獨立的東西其實都是各司其職, 當我們把它們結 合在一起,一個個令人驚奇的功能展現在我們面前。其實世界又何嘗不是這樣,我們 不要在意最好的職位是什么,而是要在自己自己的本職上做到最好,不斷更新自己。但是在此次畢業設計中自己還存在很多不足,首先是基礎知識不牢固,對面向對象語言理解不夠深刻。其次是自己容易粗心大意,導致一個小問題要調試很久還找不 到。在以后的學習生活中我會加倍努力,不驕不躁,以飽滿的狀態面對挑戰第29頁(共46頁)基于Android的電影播放系統參考文獻汪曉平、鐘軍.JSP網絡開發技術M.北京:人民郵政

56、出版社,2013年12月第二版.張一鳴、桂林、張家祥.個人網站組建實用教程M.西安:電子科技大學出版社,2014年3月第一版.龍馬工作室.JSP+ SQL組建動態網站M.北京:人民郵電出版社,2014年8月第一版.王斐 Java Web開發基礎一一從 Servlet 到JSP清華大學出版社,2014.10.陳秋江,朱海東網頁設計制作與上級指導第1版.北京:清華大學出版社,2013張澤娜.JavaScript 實戰一JavaScript、jQuery、HTML5 Node.js 實例大全北京:清 華大學出版社,2014.呂琨JavaScript網頁特效實例大全清華大學出版社,2013.薛華成 管

57、理信息系統北京:清華大學出版社,2012蔡翠平、尚俊杰.網絡程序設計一JSPM.北京:清華大學出版社,2012年1月第一版.10姚國章.中國企業電子商務發展戰略M.北京:北京大學出版社,2011.11黃平 數據庫技術 北京:機械工業出版社,2012.12袁玫網絡數據庫應用教程北京:人民郵電出版社,2013.13郭瑞軍、李杰、初曉璐JS琳據庫開發精粹電子工業出版社,2010年2月第一版.14耿祥義,張躍平.JSP實用教程M.北京:清華大學出版社,2003.15張海藩.軟件工程導論M.北京:清華大學出版社,2007.5.16王珊.數據庫系統概論(第四版) M.高等教育出版社,2007.11.17趙

58、亮,張維.基于Android技術的界面設計與研究D.徐州:徐州建筑職業技術學院,200118陳璟,陳平華,李文亮.Android內核分析J.廣東工業大學計算機學院實踐 與經驗,200919韓超.Android經典應用程序開發J.人力資源出版社,2011: 5-18 4吳亞峰,索依娜.Android核心技術與實例講解.北京:電子工業出版社,201020 劉高原,張國平.基于MVCI式的WEB理系統的實現J.華東交通大學學報.第30頁(共46頁)致謝致謝大學四年學習生涯,讓我有了質的蛻變,專業技能、個人處世能力、人生目標和 信仰加強提高和具體化,但每一次的突破自我成長都是心酸的,因此我要感謝在我成

59、 長過程中支持、關心、幫助過我的人,也要感謝培育我的四川農業大學以及黨和國家 對貧困生的支持。首先,感謝我的導師張佳老師,在論文的寫作過程中,給予我悉心的指導,屈老師一直以他嚴謹、一絲不茍的工作態度指導我、鼓勵我,讓我對論文充 滿了信心,幫助我克服一個又一個的技術難題。他深厚的計算機理論基礎和他在計算 機新技術方面的造詣,以及不斷探索的工作作風給我留下了深刻的印象。此外 ,張老 師還在專業發展,職業規劃和人生目標完善等方面都給予我傾力指導和幫助,再次表示衷心的感謝!其次,要感謝我的同學和朋友老師,在我困難的時候,是他們的理解關心和支持讓我渡過一次次難關,沒有他們的幫助,我不可能讀完大學,對我給

60、他們帶 來的麻煩表示深深的歉意和真誠的感謝。 最后,也要感謝軟庫公司的關心和培訓,大四 實習,鄢權接受了我這個一無經驗,二無相關技能的實習生的加入,還給予了培養,在 公司期間,我詳細地了解了公司的運作方式,管理員工辦法,公司的完善的制度和“以 人為本”企業精神深深的感染了我,但成立的時間短,使它的信息管理還停留在紙質化 改變這種落后的方式就是本文寫作的初衷。謝謝關心、支持和幫助我的同學老師父母和朋友,同時也感謝論文答辯組的老師們,你們辛苦了,祝愿你們身體健康,萬事 如意!第31頁(共46頁)基于Android的電影播放系統附錄服務器部分代碼:(1) DBManager.javapackage

溫馨提示

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

最新文檔

評論

0/150

提交評論