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

正文內(nèi)容

基于android系統(tǒng)的midi音樂(lè)播放器的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文(參考版)

2025-07-07 11:19本頁(yè)面
  

【正文】 程序中數(shù)據(jù)庫(kù)類為 Database。 Android 是利用 ContentProvider 作為內(nèi)容提供商, SQLiteOpenHelper 數(shù)據(jù)庫(kù)幫助類來(lái)進(jìn)行對(duì)數(shù)據(jù)庫(kù)的創(chuàng)建和操作。 } 歌曲列表模塊 實(shí)現(xiàn) 數(shù)據(jù)庫(kù)創(chuàng)建和連接實(shí)現(xiàn) 本節(jié) 介紹 MIDI 播放器 如何進(jìn)行 Android 數(shù)據(jù)庫(kù)連接, Android 中 自帶 SQLite 數(shù)據(jù)庫(kù),這是一個(gè)十分小型的數(shù)據(jù)庫(kù), 第二章已經(jīng)做過(guò)介紹 。 (musiclist hava loaded!!)。 內(nèi)蒙古科技大學(xué)畢業(yè)設(shè)計(jì)說(shuō)明書(畢業(yè)論文) 27 ((MiDiMusicActivity) context).overridePendingTransition(, )。 (bundle)。 bundle=new Bundle()。 } private Handler mHandler = new Handler() { public void handleMessage(Message message) { Intent intent = new Intent()。 return musicDatasList。 ()。 (())。 ((musicPath))。 ((musicTime))。 ((musicID))。 i musicCount。 musicDatasList=new ArrayListMusicData() 。 int musicALBUM_ID=()。 int musicArtist=()。 int musicTitle=()。 if(cursor!=null){ ()。初始化過(guò)程中,獲取音樂(lè)的操作做在了一個(gè)線程 Thread 內(nèi),后臺(tái)進(jìn)行查詢數(shù)據(jù)庫(kù)操作,線程實(shí)現(xiàn)代碼如下所示。 內(nèi)蒙古科技大學(xué)畢業(yè)設(shè)計(jì)說(shuō)明書(畢業(yè)論文) 24 圖 播放控制界面 播放控制界面中的重點(diǎn)布局 就是自定義的 SeekBar(拖動(dòng)條)這個(gè)控件的實(shí)現(xiàn),如圖 所示,實(shí)現(xiàn)的方法就是修改 android:progressDrawable 和 android:thumb 這兩個(gè)屬性,這兩個(gè)屬性自己編寫,配置在 和 這兩個(gè)文件中, 實(shí)現(xiàn)代碼如下所示 。 } Override public boolean onTouchEvent(MotionEvent event) { return (event)。 } }else{ return false。 Rect rect = getRectOnScreen(view)。amp。 } } return true。 if (()) { Rect rect = getRectOnScreen(view)。 y += location[1]。 (location)。 int x = (int)()。 return rect。 (rect)。 if(() instanceof View){ parent = (View)()。 int[] location = new int[2]。 android:id=+id/slidingDrawer android:layout_width=fill_parent android:layout_height=fill_parent android:handle=+id/handle android:content=+id/content android:topOffset=10dp include layout=layout/sliderdrawer_handle_layout/include include layout=layout/sliderdrawer_content_layout/include / 有時(shí) Android自帶的 SlidingDrawer控件 不能滿足開發(fā)者的需求, 重寫 SlidingDrawer這個(gè)控件, 將會(huì)為整個(gè) 系統(tǒng)的 界面布局增色不少 ,重寫實(shí)現(xiàn)代碼如下所示。 圖 歌曲列表界面 歌曲列表界面實(shí)現(xiàn)了 線性布局 ( Linear Layout) 和 相對(duì)布局 ( Relative Layout) 的相互嵌套,歌曲信息通過(guò) ListView 控件顯示, 它以列表的形式展示具體內(nèi)容,并且能夠根據(jù)數(shù)據(jù)的長(zhǎng)度自適應(yīng)顯示 ,實(shí)現(xiàn)代碼如下所示 。 下面我 詳細(xì)介紹播放器中的幾個(gè)重要布局配置文件的設(shè)計(jì)和實(shí)現(xiàn)。 雖然 Android 生成屏幕的方有三種(第二章已介紹),但是一般使用 xml文件配置生成,這里有必要說(shuō)一下,其實(shí) Android 界面的代碼編寫有點(diǎn)像 HTML,添加框架 , 編寫 代碼 ,生成控件。在 MIDI 播放器的設(shè)計(jì)過(guò)程中,也是對(duì)設(shè)計(jì)的方法進(jìn)行反復(fù)的推敲、琢磨,才能使其達(dá)到完美的境界 , MIDI 播放器 界面的整體風(fēng)格為經(jīng)典的黑白色調(diào),界面設(shè)計(jì)更簡(jiǎn)潔,更大方 。 開 始播 放 模 式 選 擇循 環(huán) 播 放隨 機(jī) 播 放順 序 播 放單 曲 循 環(huán) 開 啟單 曲 循 環(huán) 關(guān) 閉結(jié) 束 圖 播放模式流程圖 內(nèi)蒙古科技大學(xué)畢業(yè)設(shè)計(jì)說(shuō)明書(畢業(yè)論文) 20 第五章 詳細(xì)設(shè) 計(jì) MIDI 播放器 UI 設(shè)計(jì) 對(duì)于 Android 來(lái)說(shuō),一個(gè)好的應(yīng)用界面的必備條件是:內(nèi)容清晰、指示明白、屏幕美觀和有親切感。 如果 數(shù)據(jù)庫(kù) 中有數(shù)據(jù),就可以對(duì) 數(shù)據(jù)庫(kù) 進(jìn)行 查詢 、添加和刪除操作,然后刷新列表信息,這一模塊的流程 如圖 所示。 內(nèi)蒙古科技大學(xué)畢業(yè)設(shè)計(jì)說(shuō)明書(畢業(yè)論文) 18 開 始從 列 表 選 擇 歌 曲歌 曲 播 放U I 同 步 線 程 開 啟暫 停 、 上 / 下 首 和拖 動(dòng) 條 控 制U I 同 步 刷 新退 出 ?線 程 關(guān) 閉 , 程 序 退出YN結(jié) 束 圖 播放控制模塊流程圖 歌曲列表流程設(shè)計(jì) MIDI 音樂(lè)播放器在初始化界面時(shí),從系統(tǒng)數(shù)據(jù)庫(kù)獲得 SD 內(nèi)所有音樂(lè)信息;從數(shù)據(jù)庫(kù) 數(shù)據(jù)庫(kù)獲取用戶添加的音樂(lè)的信息,將這些得到的信息構(gòu)建到列表呈現(xiàn)給用戶 ,如果這是用戶第一次運(yùn)行 MIDI 音樂(lè)播放器,程序?qū)⑿陆? 數(shù)據(jù)庫(kù) 。 表 我的音樂(lè)表( favourite) 字段名稱 數(shù)據(jù)類型 允許空 說(shuō)明 _Id INTEGER Not null 主鍵 Music_id INTEGER Not null 歌曲 ID Music_name TEXT Not null 歌曲名字 Music_arist TEXT 演唱者 Music_path TEXT Not null 路徑 Music_ablum INTEGER 專輯封面 ID Music_time INTEGER Not null 歌曲長(zhǎng)度 內(nèi)蒙古科技大學(xué)畢業(yè)設(shè)計(jì)說(shuō)明書(畢業(yè)論文) 17 基本流程設(shè)計(jì) 整體流程 設(shè)計(jì) MIDI 音樂(lè)播放器整體流程,如圖 所示。 MIDI 音樂(lè)播放器數(shù)據(jù)庫(kù)設(shè)計(jì)階段,只需要兩張表,第一張表存放所有的歌曲信息(即MediaStore 類,只需 通過(guò) Uri: EXTERNAL_CONTENT_URI 來(lái)訪問(wèn) ,就可以得到 想要的歌曲信息字段 , MIDI 音樂(lè)播放器用到的字段有: _ID(歌曲 ID)、 TITLE(標(biāo)題 )、 ARTIST(藝術(shù)家) 、 DATA( 路徑 )、 ALBUM(專輯 封面 ) 、 DURATION(歌曲時(shí)間)和 ALBUM_ID(專輯封面 ID) 。這個(gè) MediaStore 包括了多媒體數(shù)據(jù)庫(kù)的所有信息,包括音頻,視頻和圖像 等。 內(nèi)蒙古科技大學(xué)畢業(yè)設(shè)計(jì)說(shuō)明書(畢業(yè)論文) 16 第四章 總體 設(shè)計(jì) 數(shù)據(jù)庫(kù)設(shè)計(jì) MIDI 音樂(lè)播放器使用的是 Android 系統(tǒng)內(nèi)置的 SQLite 數(shù)據(jù)庫(kù),對(duì)于 SQLite 數(shù)據(jù)庫(kù)的介紹詳見 節(jié) 。 ? 當(dāng)要求歌曲上 /下一首時(shí),程序響應(yīng)時(shí)間最長(zhǎng)不能超過(guò) 5 秒 。 ? 當(dāng)要求歌曲暫停時(shí),程序響應(yīng)時(shí)間最長(zhǎng)不能超過(guò) 5 秒 。 內(nèi)蒙古科技大學(xué)畢業(yè)設(shè)計(jì)說(shuō)明書(畢業(yè)論文) 14 用 戶歌 曲 列 表 模 塊添 加 歌 曲刪 除 歌 曲搜 索 歌 曲播 放 列 表 歌 曲操 作 數(shù) 據(jù) 庫(kù) 圖 歌曲列表模塊用例圖 播放模式模塊分析 MIDI 音樂(lè)播放器播放模式模塊應(yīng)有的需求:循環(huán)播放、隨機(jī)播放、順序播放和單曲循環(huán)的開啟與關(guān)閉,如圖 所示。 3) 搜索音樂(lè)功能:用戶對(duì)兩個(gè)列表中的歌曲進(jìn)行搜索操作 。 內(nèi)蒙古科技大學(xué)畢業(yè)設(shè)計(jì)說(shuō)明書(畢業(yè)論文) 13 用戶播放器基本控制模塊播放暫停播放時(shí)間同步顯示下一首上一首退出程序選擇播放列表歌詞同步顯示進(jìn)度條同步和控制圖 播放器的基本控制功能用例圖 歌曲列表 模塊分析 MIDI 音樂(lè)播放器設(shè)計(jì)兩個(gè)歌曲列表,一個(gè)列表顯示所有音樂(lè),另外一個(gè)列表顯示用戶自己喜歡并且自己添加的音樂(lè),如圖 所示,應(yīng)有的需求有: 1) 添加音樂(lè)功能:用戶可以添加自己喜歡的音樂(lè)于另外一個(gè)列表。 基 于 A n d r o i d 平 臺(tái) 的 M I D I 音 樂(lè) 播 放 器播 放 控 制 模 塊歌 曲 列 表 模 塊 播 放 模 式 模 塊播放控制歌詞同步顯示進(jìn)度條同步控制播放暫停上、下首歌曲搜索添加喜愛的歌曲刪除列表歌曲循環(huán)播放播放時(shí)間同步單曲循環(huán)隨機(jī)播放順序播放 圖 MIDI 播放器功能 結(jié)構(gòu)圖 播放 控制模塊 分析 音樂(lè)播放器對(duì)于大家來(lái) 說(shuō)可以說(shuō)是不陌生了,對(duì)于播放器的控制要求大家也是更加熟悉了。 MIDI 音樂(lè) 播放器 的另外一個(gè)設(shè)計(jì)目標(biāo)就是讓自己更加系統(tǒng)的去 熟悉和 學(xué)習(xí) Android 開發(fā)技術(shù)的相關(guān)知識(shí),為以后開發(fā) Android 程序打下良 好的基礎(chǔ)。 在國(guó)內(nèi)三大運(yùn)營(yíng)商如火如荼的 3G 營(yíng)銷戰(zhàn)持續(xù)升溫,再加上 3G 的推出對(duì)整個(gè)行業(yè)的巨大推動(dòng)作用,無(wú)疑將引爆 3G手機(jī)開發(fā)工程師這個(gè)黃金職位。 內(nèi)蒙古科技大學(xué)畢業(yè)設(shè)計(jì)說(shuō)明書(畢業(yè)論文) 11 圖 模擬器( AVD) 設(shè)計(jì)目標(biāo) 現(xiàn)今社會(huì)生活緊張,而欣賞音樂(lè)是其中最好的舒緩壓力的方式之一 ,本項(xiàng)目的目的是開發(fā)一個(gè)可以播放主流音樂(lè)文件格式的播放器, MIDI 音樂(lè)播放器 的實(shí)現(xiàn)的這主要功能是播放 主流 格式的音樂(lè)文件,并且能夠控制播放 、 暫停 、 上一曲 、 下一曲 、進(jìn)度條控制 ,視覺外觀,播放列表和歌曲 列表 的操作等多種播放控制功能,界面簡(jiǎn)明,操作簡(jiǎn)單。 本應(yīng)用選擇 Eclipse,配合 Android 開發(fā)插件 ADT, 只需運(yùn)行一個(gè) Android Virtual Device( AVD) ,就可以進(jìn)行 開發(fā)和調(diào)試的 工作,如圖 所示,這是一個(gè) Android Virtual Device( AVD) 。 只需搭建 Android 開發(fā)必要的開發(fā)環(huán)境就可以了,本應(yīng)用選擇的開發(fā)工具 Eclispe+JDK+Android插件 ADT。 技術(shù)可行性 Android 作為第一個(gè)完整、開放、免費(fèi)的手機(jī)平臺(tái), Android 也為開發(fā)者提供了完整的 API, 使開發(fā)者在為其開發(fā)程序時(shí)擁有更大的自由。其開發(fā)軟件在目前來(lái)說(shuō)全部都是免費(fèi)的。對(duì)于本應(yīng)用而言,操作方面不對(duì)存在障礙,簡(jiǎn)潔大方的用戶界面設(shè)計(jì),只需用戶輕輕點(diǎn)擊, 即可完成所有的對(duì)音樂(lè)播放的控制等操作??紤]到 Java 虛擬機(jī)的效率和資源占用, Google 重新設(shè)計(jì)了 Android 的 Java,以便能提高效率和減少資源占用 。 Google 已經(jīng)可以利用 Eclipse 為軟件研發(fā)人員提供一個(gè)成熟的編寫 Android 應(yīng)用的開發(fā)環(huán)境。這個(gè)選擇在整個(gè)件研發(fā)人員的社區(qū)中引起了新的關(guān)注。這樣的平臺(tái)目前非常流行,因此微軟公司推出了與之競(jìng)爭(zhēng)的 .NET 平臺(tái)以及模仿 Java 的 C語(yǔ)言。 Sun 公司對(duì) Java 編程語(yǔ)言的解釋是: Java 編程語(yǔ)言是個(gè)簡(jiǎn)單、面向?qū)ο?、分布式、解釋性、健壯、安全與系統(tǒng)無(wú)關(guān)、可移植、高性能、多線程和動(dòng)態(tài)的語(yǔ)言。 “Java 語(yǔ)言靠群體的力量而非公司的力量 ”是 Sun 公司的口號(hào)之一,并
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1