freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于android系統(tǒng)的音樂播放器設(shè)計(jì)與實(shí)現(xiàn)(存儲(chǔ)版)

  

【正文】 系統(tǒng)性能需求 根據(jù) Android 手機(jī)系統(tǒng)要求無響應(yīng)時(shí)間為 5秒,所有就有如下性能要求: 當(dāng)要求歌曲播放時(shí),程序響應(yīng)時(shí)間最長(zhǎng)不能超過 5 秒 當(dāng)要求歌曲 暫停 時(shí),程序響應(yīng)時(shí)間最長(zhǎng)不能超過 5 秒 當(dāng)要求歌曲停止 時(shí),程序響應(yīng)時(shí)間最長(zhǎng)不能超過 5 秒 當(dāng)要求歌曲上 /下一首 時(shí),程序響應(yīng)時(shí)間最長(zhǎng)不能超過 5 秒 歌詞同步顯示誤差不應(yīng)超過 2秒 界面切換響應(yīng)時(shí)間最長(zhǎng)不能超過 3 秒 運(yùn)行環(huán)境需求 操作系統(tǒng): Windows xp 支持環(huán)境: Android 版本 開發(fā)環(huán)境: Eclipse ADT 3 Android 應(yīng)用軟件 開發(fā)基礎(chǔ) Android 簡(jiǎn)介 Android 一詞的本義指 “ 機(jī)器人 ” ,同時(shí)也是 Google 于 2021 年 11 月 5 日宣布的基于 Linux 平臺(tái) 的開源手機(jī)操作系統(tǒng)的名稱,該平臺(tái)由操作系統(tǒng)、中間件、用戶界面和應(yīng)用軟件組 成,號(hào)稱是首個(gè)為移動(dòng)終端打造的真正開放和完整的移動(dòng)軟件。例如假設(shè)我們需要編寫一個(gè)內(nèi)嵌有網(wǎng)頁(yè)的程序,那么我們無需親自編寫瀏覽器,而是可以直接調(diào)用系統(tǒng)自帶的 Chrome Lite 瀏覽器組件。 每個(gè) activity 都有一個(gè)默認(rèn)的窗口用于繪制界面,一般情況下,它是充滿全屏的,但是我們可以通過程序控制它,使其小于屏幕大小,也可以控制其浮動(dòng)于其它窗口之上(如 Android 中的 Toast 信息), Activity 中顯示出來的內(nèi)容其實(shí)是由 view 堆疊形成的, view 是由 View 基類派生出來的各種形式的界面元素,如 ListView,GridView 等等,通過組合這些 view ,就形成了一個(gè)可見的 activity 。 Broadcast receiver 則是程序中專門用來接收廣播消息的組件,它沒有界面顯示,只負(fù)責(zé)監(jiān)聽、接收廣播消息,然后根據(jù)程序邏輯,啟動(dòng)其它組件去處理廣播消息。 只要需要某個(gè)組件, Android 就會(huì)盡力保證它的可用:如果該組件還沒啟動(dòng),就啟動(dòng)它,如果該組件所屬的 應(yīng)用程序還沒擁有一個(gè)進(jìn)程,則為它啟動(dòng)一個(gè)進(jìn)程,如果系統(tǒng)資源不足以容納一個(gè)新的進(jìn)程,則將后臺(tái)的某個(gè)進(jìn)程殺死為新進(jìn)程騰出資源。我們通過 manifest 描述程序的信息, Android 系統(tǒng)就能讀取出來并產(chǎn)生相應(yīng)的行為。 ADT 是目前開發(fā) Android 應(yīng)用最有效的工具,它是一個(gè) Eclipse 插件,支持 Eclipse 及 以上的版本。 Eclipse。在命令行中輸入:mksdcard 1024M D:\android\ 【這個(gè) 1024M 就是我們要?jiǎng)?chuàng)建的 SD 卡的大小,還是根據(jù)自 己的需要來輸入,最后面的那個(gè) D:\android\ 就是我們所設(shè)置的 SD 存放路徑,這里也可以根據(jù)我們自己的需要改變路徑的,但要注意路徑中不能有空格出現(xiàn)】 eclipse 里面創(chuàng)建模擬器,并以該 sd 卡來創(chuàng)建 ,啟動(dòng)該模擬器。 異常二 : Failed to push the item(s). 出現(xiàn)這個(gè)異常是因?yàn)?,傳輸超時(shí)造成的。 第二步:傳入歌曲數(shù)據(jù)源,這里也是一個(gè)數(shù)據(jù)源 (String path);參數(shù)需要傳一個(gè)路徑,該接口類在收到路徑后將其轉(zhuǎn)化為數(shù)據(jù)源。 } //得到位于 position處的對(duì)象 public Object getItem(int position) { return position。 //獲得用于顯示持續(xù)時(shí)間的 TextView TextView durationView = (TextView) convertView .findViewById()。 public Cursor query (String table, String[] columns, String selection, String[] selectionArgs, String groupBy, String having, String orderBy)。 setListAdapter(adapter)。 //改變按鈕背景 ()。 監(jiān)聽按鈕點(diǎn)擊事件: (new ())。 //傳遞參數(shù) (currentTime, currentTime)。 String data = 。 } catch (FileNotFoundException e) { ()。.39。 } //取出時(shí)間部分 進(jìn)行拆分 String lrcTime[] = lrc[0].split(:)。 (begintime,lrcbean)。 while (()){ Object ob = ()。 oldval = val。 圖 44 音量控制代碼截圖 7 結(jié)論 通過對(duì) Android 手機(jī)平臺(tái)的音樂播放器的開發(fā),使我對(duì) Android 系統(tǒng)從零進(jìn)入到了一個(gè)比較高 的層次的了解, Android 功能是如此強(qiáng)大,令人不得不佩服。 致 謝 近三個(gè)月時(shí)間的畢業(yè)課題設(shè)計(jì)是我大學(xué)生活中忙碌而又充實(shí)一段時(shí)光。在這段時(shí)間里,我從 他 們身上,不僅學(xué)到了許多的專業(yè)知識(shí),更感受到了她們工作中的兢兢業(yè)業(yè),生活中的平易近人的精神。 總之,在以后的學(xué)習(xí)、工作、生活中我將更加努力,用自己的行動(dòng)回報(bào)社會(huì)、學(xué)校、老師及同學(xué)。 import 。 import 。 private static final int MUSIC_STOP = 3。 private int ids[]。 /** * 注冊(cè)來電接收器 */ IntentFilter filter = new IntentFilter()。 } mp = new MediaPlayer()。 private int flag。 private static final int MUSIC_PLAY = 1。 import 。 import 。同時(shí)感謝我的大學(xué),感謝計(jì)算機(jī)學(xué)院。本論文是在 老師耐心指導(dǎo)下多次修改完成的。后來我查資料,發(fā)現(xiàn)要實(shí)現(xiàn)后 臺(tái)播放,保持同一個(gè)進(jìn)程,就需要使用 Service,于是就采用了Service,使 Activity 與 Service 間不斷傳數(shù)據(jù),然后真正業(yè)務(wù)在 Service 中執(zhí)行,而 Activity 只起到控制作用,感覺這種方式就好多了,既解決了播放 2種聲音的問題,又實(shí)現(xiàn)了后臺(tái)播放,還使播放器的反應(yīng)速度提高了許多,歌詞顯示的誤差也沒原來那么大了。 圖 43 掃描 Sdcard 代碼截圖 音量調(diào)節(jié) 在設(shè)計(jì)當(dāng)初,本來還以為要 在播放器中加個(gè)調(diào)節(jié)音量的滑動(dòng)條, 但是想到手機(jī)自己本身就有控制音量的鍵, 于是就沒加。 (new Integer(i), item1)。 LRCbean oldval = null。 //設(shè)置歌詞的主體 (begintime)。 //如果拆分結(jié)果長(zhǎng)度為 2,說明有歌詞,則將歌詞內(nèi)容存入對(duì)象中 if (==2){ lrcContent = lrc[]。amp。 try { //使用 文件 流開始讀取文件 stream = new FileInputStream(file)。 核心算法如下: private void readLrc(String path){ //首先清空保存歌詞的 Map ()。 //判斷 handler是否為空 ,使用 handler對(duì)象能發(fā)送廣播 if (handler == null) { //初始化 handler對(duì)象 handler = new Handler() { Override //重寫 handleMessage方法,對(duì)發(fā)送的消息進(jìn)行處理 public void handleMessage(Message msg) { (msg)。 其他功能如暫停、停止、上一首、下一首都用的相同原理,將具體播放的操作放到 Musicservice 中,而 PlayMusic 這個(gè) Activity 只是起到了控制的作用。 Service 與 Activity 通信 : Service 后端的數(shù)據(jù)最終還是要呈現(xiàn)在前端 Activity 之上的,因?yàn)閱?dòng)Service 時(shí),系統(tǒng)會(huì)重新開啟一個(gè)新的進(jìn)程,這就涉及到不同進(jìn)程間通信的問題了 (AIDL)這一節(jié)我不作過多描述,當(dāng)我們想獲取啟動(dòng)的 Service 實(shí)例時(shí),我們可以用到 bindService和 onBindService方法,它們分別執(zhí)行了 Service中 IBinder()和 onUnbind()方法。 MusicAdapter adapter = new MusicAdapter(this, c)。 } 在模擬器開機(jī)時(shí),會(huì)將 sdcard 中的媒體信息掃描出來,然后存入data/data/ 中,可 以將這個(gè)文件從 FileExplorer 中導(dǎo) 出來,用 FireFox 的SQliteManager 插件查看。 //從游標(biāo)中取出歌曲名,然后將名稱顯示出來 ((0).trim())。 Adapter相當(dāng)于前臺(tái)列表顯示與后臺(tái)交互的橋梁。 TextView android:layout_height=wrap_content android:layout_width=fill_parent android:layout_y=250dp android:id=+id/currentProgress / 此 TextView用于顯示當(dāng)前進(jìn)度 ,長(zhǎng)填充父容器,高覆蓋內(nèi)容, y坐標(biāo)為 250dp TextView android:layout_height=wrap_content android:layout_width=fill_parent android:layout_y=300dp android:id=+id/curtimeandtotaltime / 此 TextView用于顯示總時(shí)間, y坐標(biāo)為 300dp /AbsoluteLayout Android 的媒體播放原理: Android 源程序 已經(jīng)為我們封裝了一個(gè)接口類,叫 MediaPlayer。還有就是觀察自己的操作權(quán)限是不是不夠,如果是:drwxrx 那就是可以的。 sd 卡的創(chuàng)建 : 通過 Android 的 Tools 來創(chuàng)建 sd 卡并導(dǎo)入進(jìn)來 dos , windows+R 鍵打開。) Available Software 窗口后,就能看到列表中出現(xiàn)了 Developer Tools ,選中它前面的復(fù)選框,再點(diǎn)擊 “Next” ,就會(huì)開始下載安裝 ADT 的各種組件了。 (SDK 的下載地址為 ,本來官方網(wǎng)站為,但是經(jīng)常被封鎖,該鏈接更為穩(wěn)定。 文件是一個(gè)結(jié)構(gòu)化的 XML 文件,它除了包含有各個(gè)組件的信息,還包括許多其它的信息,如聲明該程序所需要用到的庫(kù)、聲明所需 要的權(quán)限等。其它應(yīng)用程序在需要使用這些數(shù)據(jù)時(shí),可以用ContentResolver對(duì)象,使用其中的方法。 Android 允許 activity連接到或者綁定到 service 上,這樣就可以讓用戶在界面上控制后臺(tái) service的行為。一個(gè)應(yīng)用程序也可 能有不止一個(gè) activity。 Android 應(yīng)用程序組件 Android 應(yīng)用程序最大的一個(gè)特點(diǎn)就是每個(gè)應(yīng)用都由若干組件構(gòu)成。 能實(shí)現(xiàn)要求的功能,但又不重復(fù) 。使人們的生活更加多樣化。Android 的開放性就優(yōu)于其它封閉式的手機(jī)系統(tǒng),因此,任何人都可以根據(jù)自己的愛好將手機(jī)系統(tǒng)中的所有功能重新編寫。 Android 應(yīng)用程序介紹 ....................... 錯(cuò)誤 !未定義書簽。 計(jì)算機(jī)配置 ........................... 錯(cuò)誤 !未定義書簽。 關(guān)鍵字 : Android,音樂播放器, MP3, java, Eclipse ABSTRACT Today39。 本文主要是 在 Android 系統(tǒng)上對(duì) 音樂播放器應(yīng)用程序的設(shè)計(jì)與實(shí)現(xiàn)進(jìn)行討論 ,通過這一過程來 進(jìn)一步學(xué)習(xí)與應(yīng)用 Android 平臺(tái) ,這樣對(duì)個(gè)人的未來發(fā)展也很有意義 。 .................................. 錯(cuò)誤 !未定義書簽。 配置 Android sdk ..................... 錯(cuò)誤 !未定義書簽。 Intent 介紹 ................................ 錯(cuò)誤 !未定義書簽。 那么能否在
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1