【正文】
本科畢業(yè)設計(論文)題 目: 基于Android系統(tǒng)的音樂播放器設計與實現(xiàn)院 系: 計算機科學系 專 業(yè): 計算機科學與技術 姓 名: 學 號: 指導教師: 教師職稱: 填寫日期: 2012年 月 日 貴陽學院畢業(yè)設計(論文)摘 要當今社會的生活節(jié)奏越來越快,隨著硬件移動設備的越來越先進,人們對移動設備的要求也越來越高,從以前的追求技術到現(xiàn)在的追求視覺效果及用戶體驗,因此,也逐步的提高了對系統(tǒng)的要求。本文主要是在Android系統(tǒng)上對音樂播放器應用程序的設計與實現(xiàn)進行討論,通過這一過程來進一步學習與應用Android平臺,這樣對個人的未來發(fā)展也很有意義。本論文的音樂播放器采用了Android開源系統(tǒng)技術,利用Java語言和Eclipse開發(fā)工具對播放器代碼進行編寫。同時給出了詳細的系統(tǒng)設計過程、部分界面截圖及主要的功能流程圖,本文還對開發(fā)過程中遇到的問題和解決方法進行了詳細的討論,該音樂播放器集下載、播放、暫停、停止等功能于一體,性能良好,在Android系統(tǒng)中能獨立運行。MP3是一種聲音文件的壓縮格式,由于本播放器只限于應用層程序的探討,所以對具體的壓縮算法不做深究。實驗證明,基于Android平臺的軟件開發(fā)簡單,使用方便簡潔,必將成為未來幾年的發(fā)展方向,具有普遍意義。關鍵詞::Android,音樂播放器,MP3AbstractToday39。s increasingly fast pace of life in society, with the hardware of mobile devices bee increasingly sophisticated, people demand more and more mobile devices, high technology from the past to the present pursuit of the pursuit of visual and user experience, therefore, also gradually increased the system requirements. This article is in the Android system, music player application on the design and implementation to discuss the process through which to further study and application of Android, so the future development of personal sense. Music player of this paper uses Android opensource system technology, the use of Java language and Eclipse development tools for the preparation of the player code. At the same time gives a detailed system design process, some interface screenshots and the major function of flow, the paper also encountered in the process of development problems and solutions were discussed in detail, the music player, set download,play, pause, stop and other functions, good performance, in the Android system can run independently. MP3 is a pressed audio file format, as the player is limited to the application layer of the program, so not to go into the specific pression algorithm. Experiments show that, based on the Android platform, software development is simple, concise and easy to use, will bee the development direction of the next few years, have universal significance. Keywords: Android, music player, MP3 目 錄摘 要 IAbstract II第一章 引 言 1 項目背景 1 編寫目的 1第二章 Android應用軟件開發(fā)基礎 3 Android簡介 3 Android應用軟件開發(fā)的核心技術 4 Android 應用開發(fā)語言 4 Android應用程序組件 4 Intent 介紹 6 文件 6第三章 搭建Android開發(fā)環(huán)境 8 計算機配置 8 安裝JDK 8 安裝Eclipse 8 安裝SDK 9 安裝ADT 9 設置Eclipse 9 創(chuàng)建AVD 10第四章 系統(tǒng)需求分析 11 11 11 12 13 13 14第五章 音樂播放器詳細設計與實現(xiàn) 15 15 17 19 21第六章 結(jié) 論 24致 謝 25參考文獻 26附 錄 2733第一章 引 言 項目背景自2007年Google公司推出Android以來,一直受到人們的熱捧。Android是基于Linux內(nèi)核的軟件平臺和操作系統(tǒng),它包括移動電話工作所需的全部軟件,而且不存在任何以往羈絆移動產(chǎn)業(yè)創(chuàng)新的專有權(quán)障礙,并迅速發(fā)展成為智能移動終端的操作系統(tǒng)。由于手機市場發(fā)展迅速,使得手機操作系統(tǒng)也出現(xiàn)了不同種類,現(xiàn)在的市場上主要有三個手機操作系統(tǒng),Windows mobile,symbian,以及谷歌的Android操作系統(tǒng),其中占有開源代碼優(yōu)勢的Android系統(tǒng)有最大的發(fā)展前景。Android的開放性就優(yōu)于其它封閉式的手機系統(tǒng),因此,任何人都可以根據(jù)自己的愛好將手機系統(tǒng)中的所有功能重新編寫。這使得越來越多的人關注這個操作系統(tǒng)。計算機應用越來越廣泛,手機市場也日新月異,各種音頻、視頻資源在網(wǎng)上廣為流傳,這些資源看似平凡,但是已經(jīng)成為了人們生活中不可缺少的一部分了,于是各種手機播放器也緊跟著發(fā)展起來,但是很多播放器都是一味追求外觀花哨,功能龐大,對用戶的手機造成了很多資源浪費,在用戶需要多任務操作時,受到不少影響,帶來了許多不便。 那么能否在手機上擁有自己編寫的個性音樂播放器呢?谷歌的Android系統(tǒng)就能做到。本文的音樂播放器就是基于谷歌Android手機平臺的播放器。要研究了各種市場上流行的手機播放器,了解它們各自的插件及編碼方式,還有各種播放器播放的特別文件格式,分析各種編碼方式的優(yōu)缺點,以及各種播放器本身的缺點和特點,編寫出功能實用,使用方便快捷的播放器。 編寫目的現(xiàn)今社會生活緊張,而欣賞音樂是其中最好的舒緩壓力的方式之一,本項目的目的是開發(fā)一個可以播放MP3文件格式的播放器,并且可以從服務器下載歌曲,控制播放,暫停,停止,音量調(diào)節(jié),播放列表和歌曲文件的管理操作等多種播放控制功能,界面簡明,操作簡單。本項目是一款基于Android手機平臺的音樂播放器,使Android手機擁有個性的多媒體播放器,使手機顯得更加生動靈活化,與人們更為接近,讓手機主人隨時隨地處于音樂旋律之中。使人們的生活更加多樣化,也使設計者更加熟悉基于Android平臺的應用布局及開發(fā)模式的特點,為以后實現(xiàn)更復雜的應用打好基礎。第二章 Android應用軟件開發(fā)基礎 Android簡介Android是一種以Linux為基礎的開放源碼操作系統(tǒng),主要使用于便攜設備。目前尚未有統(tǒng)一中文名稱,中國大陸地區(qū)較多人使用“安卓”或“安致”。Android操作系統(tǒng)最初由Andy Rubin開發(fā),最初主要支持手機。2005年由Google收購注資,并組建開放手機聯(lián)盟開發(fā)改良,逐漸擴展到平板電腦及其他領域上。Android平臺五大優(yōu)勢特色:開放性掙脫運營商的束縛豐富的硬件選擇不受任何限制的開發(fā)商無縫結(jié)合的Google應用 圖21 Android 軟件體系結(jié)構(gòu)圖Android作為一個移動設備的平臺,其軟件層次結(jié)構(gòu)包括了一個操作系統(tǒng)(OS),中間件(MiddleWare)和應用程序(Application)。根據(jù)Android的軟件框圖,其軟件層次結(jié)構(gòu)自下而上分為以下幾個層次:第一、操作系統(tǒng)層(OS)第二、各種庫(Libraries)和Android 運行環(huán)境(RunTime)第三、應用程序框架(Application Framework)第四、應用程序(Application) Android應用軟件開發(fā)的核心技術 Android應用開發(fā)語言Java是Android上的主流開發(fā)語言,各種支持也最完善。Android發(fā)布的API和SDK也都主要是面向Java開發(fā)人員的。我們的播放器實例也是用Java開發(fā)的。 Android應用程序組件Android應用程序最大的一個特點就是每個應用都由若干組件構(gòu)成。而且各個應用程序的組件還可以相互調(diào)用(需要在代碼中設置相應權(quán)限)。例如假設我們需要編寫一個內(nèi)嵌有網(wǎng)頁的程序,那么我們無需親自編寫瀏覽器,而是可以直接調(diào)用系統(tǒng)自帶的Chrome Lite瀏覽器組件。又如假設我們編寫了兩個應用程序,其中一個程序中有列表顯示圖片的組件,那么我們在另外一個應用程序中就可以使用該組件,而不需要再編寫該功能。也就是說,不同于我們平常編寫的程序,Android的應用程序不是單一入口,而是可以從代碼的不同位置啟動。這就要依靠組件來實現(xiàn)。Android應用程序的組件有以下四種:1. Activity一個activity實際上表現(xiàn)出來的就是一個程序的界面。這個界面可能有許多種不同的形式,比如有列表形式,有文字形式,有圖像格子等形式。一個應用程序也可能有不止一個activity。比如一個短消息的程序,需要有列表顯示所有消息的activity,還至少需要一個編輯短消息的activity(界面),還可能需要設置、菜單等界面。每個activity都有一個默認的窗口用于繪制界面,一般情況下,它是充滿全屏的,但是我們可以通過程序控制它,使其小于屏幕大小,也可以控制其浮動于其它窗口之上(如Android中的Toast信息),Activity中顯示出來的內(nèi)容其實是由view堆疊形成的,view是由View基類派生出來的各種形式的界面元素,如ListView,GridView等等,通過組合這些view,就形成了一個可見的activity。()方法來設置一個activity中所要顯示的view。2. Serviceservice是一種沒有界面的組件,同我們平常在Windows或Linux系統(tǒng)中所理解的“服務”一樣,Android上的service也是運行在后臺的,運行時間可以從系統(tǒng)啟動到系統(tǒng)關閉為止。對于許多應用程序來說,service組件是至關重要的。以下載管理器為例,用戶肯定希望能夠在切換到其它程序時仍然在后臺進行下載,這就需要用到service完成下載工作。而顯示下載進度、已下載文件等信息則由activity完成,同時我們還希望能控制下載過程,如停止、繼續(xù)等,這就需要activity與service之間進行通信。 Android允許activity連接到或者綁定到service上,這樣就可以讓用戶在界面上控制后臺service的行為。3. Broadcast receiverBroadcast意為廣播消息,Android系統(tǒng)自身會發(fā)出許多廣播消息,如電量不足,用戶修改了全局設置等,各個應用程序也以向整個系統(tǒng)廣播消息,如文件下載完畢等。Broadcast receiver則是程序中專門用來接收廣播消息的組件,它沒有界面顯示,只負責監(jiān)聽、接收廣播消息,然后根據(jù)程序邏輯,啟動其它組件去處理廣播消息。它可以啟動一個activity來同用戶交互,也可以使用NotificationManager向用戶發(fā)出通知。NitificationManager的通知形式有許多種,比如說振動、響