




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、嵌入式高級(jí)編程大作業(yè)HIHEIMUSIC學(xué)院:計(jì)算機(jī)與信息工程學(xué)院班級(jí):計(jì)算機(jī)與科學(xué)技術(shù)系學(xué)號(hào):1姓名:楊建利HIHEIMUSIC摘要使用Java語言,利用Eclipse和Android SDK 開發(fā)工具,完成對(duì)Android版本的音樂播放器的開發(fā)。開發(fā)中使用ContentProvider獲取音樂信息,利用Service+MediaPlayer完成音樂的播放,最后在界面中使用intent完成界面的跳轉(zhuǎn)中的信息傳遞。主要實(shí)現(xiàn)歌曲的播放,進(jìn)度控制以及來去電話時(shí)候?qū)Ω枨淖詣?dòng)暫停操作功能,最后使用自定義歌詞組件完成歌詞對(duì)歌曲的同步顯示。關(guān)鍵詞:Android 、Service、MediaPlayer
2、、ContentProvider 目錄1. 引言41.1 項(xiàng)目介紹41.2 開發(fā)環(huán)境42. 系統(tǒng)需求分析42.1 用戶需求42.2 功能需求43. 系統(tǒng)總體設(shè)計(jì)43.1 功能劃分(系統(tǒng)總體框架)53.2 功能說明53.3 系統(tǒng)數(shù)據(jù)流程圖63.4 數(shù)據(jù)流程說明73.5 界面布局設(shè)計(jì)83.6 界面切換描述94. 系統(tǒng)詳細(xì)設(shè)計(jì)104.1 結(jié)構(gòu)設(shè)計(jì)10 4.2 函數(shù)設(shè)計(jì)115. 系統(tǒng)實(shí)現(xiàn)195.1 運(yùn)行結(jié)果196. 結(jié)論217. 參考文獻(xiàn)211. 引言 1.1 項(xiàng)目介紹由于學(xué)習(xí)Android中的各種控件,機(jī)制以及完成課程設(shè)計(jì)的要求。所以,制作該音樂播放器。 1.2 開發(fā)環(huán)境Windows7系統(tǒng)下,使用
3、Eclipse+ADT(Android4.2.2)+Java JDK開發(fā)環(huán)境。2. 系統(tǒng)需求分析 2.1 用戶需求(1)查看手機(jī)上的歌曲(2)點(diǎn)擊播放歌曲 (3)對(duì)歌曲進(jìn)行播放/暫停/上一曲/下一曲/播放模式以及進(jìn)度實(shí)時(shí)顯示以及控制(4)播放歌曲同時(shí)同步滾動(dòng)顯示歌詞 2.2 功能需求(1) 一共有兩個(gè)界面,歌曲信息界面和歌詞界面。(2) 歌曲信息界面有標(biāo)題(本地歌曲),中部有歌曲信息(歌曲圖標(biāo)、歌曲名稱、時(shí)長(zhǎng),歌手名稱),底部簡(jiǎn)單歌曲控制(進(jìn)度條(允許拖拉控制歌曲進(jìn)度)、當(dāng)前歌曲名稱、播放/暫停按鈕、下一曲)(3) 點(diǎn)擊當(dāng)前歌曲名稱(底部簡(jiǎn)單歌曲控制中)跳轉(zhuǎn)到歌詞界面(4) 歌詞界面頂部當(dāng)前歌
4、曲名稱,中部歌詞顯示,底部控制選項(xiàng)(5) 歌詞顯示要求能夠?qū)崟r(shí)同步滾動(dòng)顯示歌詞,即演唱到哪句就哪句變?yōu)楦吡粒⑶覒?yīng)當(dāng)在屏幕可見位置,歌詞應(yīng)該有滾動(dòng)效果,允許用戶上下拖拉去查看歌詞,并且不會(huì)影響歌曲正常播放,最后歌詞應(yīng)該可以自己調(diào)整位置,保證用戶歌詞查看方便。(6) 底部控制要求具有播放模式選擇(進(jìn)度條(實(shí)時(shí)顯示歌曲進(jìn)度,允許用戶通過進(jìn)度條控制歌曲播放進(jìn)度)、全部循環(huán)/單曲循環(huán)(共用一個(gè)按鈕)、上一曲、播放/暫停(共用一個(gè)按鈕)、下一曲,返回歌曲列表) 2.3 性能需求獲取本地歌曲的時(shí)間小于2s,做到歌曲的控制可以實(shí)時(shí)響應(yīng)(小于0.5s)。3. 系統(tǒng)總體設(shè)計(jì) 3.1 功能劃分(系統(tǒng)總體框架)3.
5、2 功能說明3.2.1 歌曲信息獲取從手機(jī)的數(shù)據(jù)庫(kù)中找到歌曲的信息,然后封裝好。以供其他組件調(diào)取。3.2.2 歌曲基本控制l 進(jìn)度條(SeekBar)進(jìn)度條保證實(shí)時(shí)顯示(10次/s),更新歌曲播放的進(jìn)度。通過拖拽進(jìn)度條可以完成對(duì)歌曲的進(jìn)度的控制。l 當(dāng)前歌曲顯示當(dāng)前歌曲的名稱(歌曲名太長(zhǎng)時(shí)自動(dòng)滾動(dòng)顯示)。點(diǎn)擊直接跳轉(zhuǎn)至歌詞界面l 播放/暫??刂瓢粹o對(duì)當(dāng)前歌曲進(jìn)行播放/暫??刂?。并且要求當(dāng)播放狀態(tài)時(shí),點(diǎn)擊暫停,并且按鈕圖標(biāo)進(jìn)行變化,暫停轉(zhuǎn)向播發(fā)狀態(tài)時(shí)也是如此。l 下一曲按鈕點(diǎn)擊即播放下一曲,最后一首歌時(shí)自動(dòng)播放第一首。3.2.3歌曲信息顯示將獲取的歌曲信息,將歌名,時(shí)間,歌手的關(guān)鍵信息顯示在手機(jī)
6、界面上,并且當(dāng)屏幕裝不下時(shí)可以滑動(dòng)手機(jī)顯示,當(dāng)點(diǎn)擊歌曲所屬行時(shí),歌曲播放。3.2.4音樂播放服務(wù)實(shí)現(xiàn)歌曲的后臺(tái)播放服務(wù),能夠?qū)崟r(shí)相應(yīng)各種控件對(duì)于歌曲播放的控制,并且當(dāng)界面不可見或者界面切換時(shí)不會(huì)影響歌曲的播放,播放器退出時(shí),歌曲自動(dòng)停止。3.2.5 歌曲名稱顯示顯示當(dāng)前正在播放的歌曲名稱3.2.6 控制組件l 進(jìn)度條(SeekBar)進(jìn)度條保證實(shí)時(shí)顯示(10次/s),更新歌曲播放的進(jìn)度。通過拖拽進(jìn)度條可以完成對(duì)歌曲的進(jìn)度的控制。l 播放模式按鈕點(diǎn)擊轉(zhuǎn)換播放模式,并且圖標(biāo)改變,并伴隨著提示。一共兩種播放模式,全部循環(huán)以及單曲循環(huán)。l 上一曲按鈕點(diǎn)擊播放上一曲歌曲,如果當(dāng)前是第一曲,則自動(dòng)播放最后
7、一曲。l 播放/暫停按鈕對(duì)當(dāng)前歌曲進(jìn)行播放/暫??刂啤2⑶乙螽?dāng)播放狀態(tài)時(shí),點(diǎn)擊暫停,并且按鈕圖標(biāo)進(jìn)行變化,暫停轉(zhuǎn)向播發(fā)狀態(tài)時(shí)也是如此。l 下一曲按鈕點(diǎn)擊即播放下一曲,最后一首歌時(shí)自動(dòng)播放第一首。l 返回列表按鈕點(diǎn)擊返回到歌曲信息界面(跟當(dāng)前界面的back鍵功能相同)。3.2.7歌詞顯示能夠同步滾動(dòng)顯示當(dāng)前的歌詞。并且可以拖動(dòng)歌詞,從而查看其他的歌詞。3.2.8 電話狀態(tài)監(jiān)聽檢測(cè)當(dāng)前電話狀態(tài),如果是要撥打/接聽電話的時(shí)候,音樂自動(dòng)暫停,當(dāng)電話掛斷之后,重新播放歌曲。3.3 系統(tǒng)數(shù)據(jù)流程圖3.4 數(shù)據(jù)流程說明 在流程圖中出現(xiàn)的所有的模塊,一共分為兩類(1) 可見的控制模塊(2) 不可見的服務(wù)控制
8、模塊可見的控制模塊與用戶進(jìn)行交互,調(diào)取相應(yīng)的不可見的服務(wù)控制模塊,從而實(shí)現(xiàn)對(duì)整個(gè)音樂服務(wù)的控制。數(shù)據(jù)流前提要求:每次進(jìn)入新界面,需要對(duì)當(dāng)前可見的模塊的狀態(tài)的更新,信息從Application的全局類中獲取。每次通過控件去控制服務(wù)時(shí)都需要去更新全局變量。每個(gè)控件都處于等待用戶操作狀態(tài)歌詞與進(jìn)度條以及時(shí)間顯示標(biāo)簽屬于實(shí)時(shí)更新,全部屬于一個(gè)線程當(dāng)中。主要數(shù)據(jù)流程如下:進(jìn)入軟件主界面(歌曲信息界面)對(duì)當(dāng)前各種組件進(jìn)行更新根據(jù)用戶操作完成對(duì)音樂播放服務(wù)的基本控制點(diǎn)擊到歌詞名組件時(shí)進(jìn)入歌詞界面對(duì)界面各種組件進(jìn)行更新各種組件等待用戶進(jìn)行控制點(diǎn)擊返回按鈕返回上層進(jìn)入軟件主界面(歌曲信息界面)對(duì)當(dāng)前各種組件進(jìn)行
9、更新點(diǎn)擊退出(back)彈出對(duì)話框殺死服務(wù)進(jìn)程退出軟件 3.5 界面布局設(shè)計(jì)布局1:軟件主界面布局2: 歌詞界面 3.6 界面切換描述點(diǎn)擊在界面1下方的播放按鈕旁邊的歌詞的顯示,然后直接會(huì)跳轉(zhuǎn)到歌詞界面。4. 系統(tǒng)詳細(xì)設(shè)計(jì) 4.1 結(jié)構(gòu)設(shè)計(jì)l 文件結(jié)構(gòu)1No.文件夾描述1src存放本軟件的所有源代碼appclass.java全局變量類AudioUtils.java音樂文件獲取類LyricObject.java歌詞類LyricView.java歌詞顯示組件類MainActivity.java主界面類MediaInfomation.java歌曲信息抽象類MusicService.java歌曲播放服
10、務(wù)類Play_Activity.java歌詞界面類Play_Menu_Layout.java主界面中的控制組件類2genADT插件自動(dòng)生成的代碼文件保存路徑以及資源IDBuildConfig.javaR.java3Android.4.2.2安卓版本4assert大型資源文件(暫無)5res本項(xiàng)目中所有的資源文件6res/drawable-hdpi所有的圖標(biāo)文件all.png 全部循環(huán)標(biāo)志file.png返回歌單front.png上一曲icon0.png播放歌曲旁邊的logolone.png單曲循環(huán)music_icon.png歌曲l圖標(biāo)next.png下一曲pause.png暫停play.png
11、播放7AndroidManifest軟件信息以及各種權(quán)限的添加記錄 4.2 函數(shù)設(shè)計(jì)4.2.1自定義抽象類l MediaInfomation類類名:MediaInfomation功能:將歌曲的各種信息封裝成一個(gè)歌曲信息的抽象類。歌曲信息需要擁有的變量:參數(shù)類型解釋filenameString文件名稱titleString歌曲名稱durationint總時(shí)長(zhǎng)singerString歌手albumString專輯yearString年份typeString類型sizeString大小fileUrlString文件路徑isMusicboolean是否是音樂l LyricObject類 類名:Lyri
12、cObject 功能:將每一行歌詞封裝成一個(gè)對(duì)象,方便引用 變量:參數(shù)類型解釋begintimeint開始時(shí)間endtimeint結(jié)束時(shí)間timelineint單句用時(shí)lrclrc單句歌詞l play_menu_Layout類3 類名:play_menu_Layout 功能:將歌曲列表的信息下面的功能條封裝成了一個(gè)功能條,實(shí)現(xiàn)多個(gè)界面調(diào)用時(shí)可以重復(fù)使用。 該信息需要的變量:1 布局樣式2 變量參數(shù)類型解釋seekbarSeekBar顯示歌曲進(jìn)度以及控制歌曲進(jìn)度play_menu_nameTextView當(dāng)前選中歌曲的名稱(具有跑馬燈效果,點(diǎn)擊可跳轉(zhuǎn)界面)play_b_playButton播放/
13、暫停按鈕play_b_nextButton下一曲3 具體功能函數(shù)函數(shù)名功能public void setTextView(String name)設(shè)置當(dāng)前播放歌曲的名稱,并使之獲得焦點(diǎn)4.2.2 appclass類4類名:appclass功能:(1) 存儲(chǔ)整個(gè)播放器中的一些全局變量,用于各個(gè)界面的初始化以及更新組件使用。(2) 獲得歌曲信息,并且將其封裝以便于其他組件調(diào)用主要信息包含:參數(shù)類型解釋mediainfomationMediainfomation歌曲列表LENGTH int當(dāng)前歌曲時(shí)長(zhǎng)(毫秒)CURENT int當(dāng)前播放進(jìn)度(毫秒)NOWACTIVITY int 當(dāng)前顯示的Activ
14、ityPOSITION int當(dāng)前歌曲在歌曲列表中位置PLAYSTATE int當(dāng)前播放狀態(tài)(未播放/正在播放/暫停)PLAYMODEL int 播放模式(全部循環(huán)播放/單曲循環(huán)播放)具體函數(shù)功能:函數(shù)名功能public void onCreate()Activity創(chuàng)造函數(shù),進(jìn)行全部功能的調(diào)取,安排public void init()初始化,獲取歌曲信息4.2.3 AudioUtils類2類名:AudioUtils功能:利用Content Provider機(jī)制從android的媒體庫(kù)中獲取所有歌曲的信息,并將其封裝成一個(gè)ArrayList,以供調(diào)用。變量:參數(shù)類型解釋MediaInfomat
15、ionsArrayList歌曲列表具體函數(shù)功能:函數(shù)名返回值功能publicstaticArrayListgetAllMediaInfomations(Context context)MediaInfomations從媒體庫(kù)中讀取出所有的歌曲信息,并封裝成為MediaInfomations4.2.4 LyricView類類名:LyricView功能:從外界讀取歌詞文件,將其解析,同時(shí)配合外界的刷新函數(shù),完成對(duì)歌詞界面的同步顯示,以及完成用戶上下滑動(dòng)查看歌詞。變量:參數(shù)類型解釋lrc_mapTreeMap 歌詞的存儲(chǔ)方式mxfloat屏幕x軸中點(diǎn)offsetYfloat歌詞在Y軸的偏移量,隨著歌
16、詞的滾動(dòng)變小blLrcstatic boolean判讀是否有歌詞文件touchXfloat按下時(shí)候的橫坐標(biāo)touchYfloat按下時(shí)候的縱坐標(biāo)lrcIndexint保存歌詞TreeMap的下標(biāo)SIZEWORDint文字大小INTERVALint歌詞間隔paintPaint普通歌詞的畫筆paintHLPaint正在播放的歌詞的畫筆具體函數(shù)功能函數(shù)名返回值功能public LyricView(Context context)無構(gòu)造函數(shù)public LyricView(Context context, AttributeSet attrs)無構(gòu)造函數(shù)protected void onDraw(Ca
17、nvas canvas)無覆寫的onDraw()用于刷新viewpublic void init()無初始化函數(shù),完成對(duì)歌詞樹的創(chuàng)建意見畫筆的屬性設(shè)置public void SetTextSize()無設(shè)置歌詞的字體大?。J(rèn)40)protected void onSizeChanged(int w, int h, int oldw, int oldh)無覆寫view自帶的字體改變函數(shù)public boolean onTouchEvent(MotionEvent event)boolean完成用于用手指操控view組件時(shí)的操作(可以上下滑動(dòng),獲得最新的touchY,用于下一次更新view時(shí)使用
18、)public int SelectIndex(int time)int查找當(dāng)前時(shí)間所對(duì)應(yīng)的歌詞在TreeMap中的下標(biāo)public Float SpeedLrc()Float滾動(dòng)速度,當(dāng)前正在播放的歌詞所對(duì)應(yīng)的位置超過屏幕的1/2時(shí),2s內(nèi)滑動(dòng)到屏幕正中央。public static void read(String file)無讀取歌曲文件,構(gòu)建Tree_Map樹。public static boolean isBlLrc() boolean返回是否有歌詞文件public float getOffsetY()float得到當(dāng)前的offsetYpublic void setOffsetY(f
19、loat offsetY)float設(shè)置當(dāng)前的offsetYpublic int getSIZEWORD()int返回歌詞文字大小public void setSIZEWORD(int sIZEWORD)int設(shè)置歌詞文字大小public int getINTERVAL()int得到當(dāng)前歌詞間隔4.2.5 MusicService類類名:MusicService功能:將MediaPlayer類封裝到其中,然后實(shí)現(xiàn)整個(gè)歌曲的播放,暫停,下一曲,上一曲,播放模式的設(shè)置,以及進(jìn)度的獲取,對(duì)外界進(jìn)度組件的設(shè)置等。同時(shí)實(shí)現(xiàn)接打電話時(shí)候歌曲的自動(dòng)暫停以及再播放。變量:參數(shù)類型解釋TAGstatic fin
20、al String調(diào)試使用的標(biāo)記ACTIONstatic final String啟動(dòng)的ActionBIDint啟動(dòng)本服務(wù)的按鈕的IDSTATEint播放狀態(tài)的碼(0,1,-1)PLAYOVERint播放模式(0,1)mediaMediaPlayer播放的歌曲LENGTHint當(dāng)前播放的歌曲的長(zhǎng)度具體函數(shù)功能:函數(shù)名返回值功能public void onCreate()無Service的創(chuàng)建函數(shù),完成Service初始化public void init()無初始化操作,meida以及其他功能的初始化操作public void onDestroy()無Service的銷毀以及Media的銷毀工作
21、public void onStart(Intent intent, int startId)無每次開啟Service時(shí)的操作函數(shù),在此完成各個(gè)控件對(duì)該服務(wù)各個(gè)函數(shù)的調(diào)用public void playButton()無按下播放鍵時(shí)候的操作函數(shù)public void playMusic()無播放音樂的功能,包括對(duì)一些系統(tǒng)控件和全局變量的更新以及完成音樂的準(zhǔn)備,播放音樂public void pauseMusic()無音樂播放的暫停狀態(tài)轉(zhuǎn)為播放狀態(tài)public void tpauseMusic()無音樂播放轉(zhuǎn)為暫停狀態(tài)public void nextMusic()無下一曲 最后一曲時(shí)轉(zhuǎn)到第一區(qū)p
22、ublic void frontMusic()無上一曲 第一曲時(shí)轉(zhuǎn)到最后一曲public void modleMusic()無播放模式選擇public void changeActivity()無在界面切換之時(shí)完成對(duì)當(dāng)前界面的布局控件進(jìn)行初始化(狀態(tài)的保留)public String DealtimeFormat(int time)String工具函數(shù),完成對(duì)時(shí)間的格式處理,始終保證是兩位數(shù)本類的工具類設(shè)計(jì)l 類名:UpdateSeekBar1功能:異步處理類,開啟一個(gè)新線程,在該線程中完成對(duì)歌曲播放時(shí)候其他需要同步更新的組件進(jìn)行更新。例如:隨著歌曲播放,進(jìn)度條組件隨著歌曲進(jìn)度而實(shí)時(shí)更新。具體
23、函數(shù)功能:函數(shù)名返回值功能protected String doInBackground(Integer. params)null調(diào)用該類時(shí)候在后臺(tái)進(jìn)行操作的函數(shù)。完成刷新的定時(shí)操作(params代表時(shí)間),以及向下一函數(shù)(publishProgress)傳遞當(dāng)前歌曲進(jìn)度protected void onProgressUpdate(Integer. values)無根據(jù)參數(shù)(values-進(jìn)度)對(duì)各個(gè)組件的更新操作,包括,時(shí)間標(biāo)簽,進(jìn)度條進(jìn)度歌詞的刷新l 類名:MyReceiver3功能:廣播接收器,完成對(duì)通話狀態(tài)的監(jiān)聽,如果當(dāng)前是撥出電話或者接聽電話,則暫停歌曲(如果正在播放),掛斷狀態(tài)重
24、新播放歌曲(如果是因?yàn)樵擃悓?duì)歌曲進(jìn)行的暫停)。變量:參數(shù)類型解釋flagboolean標(biāo)記是否是要進(jìn)行暫停歌曲false表示需要isflagboolean標(biāo)記是否原來是播放狀態(tài),true表示是函數(shù)功能函數(shù)名返回值功能public void onReceive(Context context, Intent intent)無通過接受廣播,判定是否是通話廣播,然后對(duì)其狀態(tài)進(jìn)行監(jiān)聽,完成函數(shù)調(diào)用4.2.6界面類l 類名:MainActivity功能:從全局中獲取出所有歌曲信息,將整個(gè)界面進(jìn)行填充,并且調(diào)取簡(jiǎn)單控制組件(play_menu_layout),實(shí)現(xiàn)點(diǎn)擊歌單上的歌曲,歌曲播放,通過簡(jiǎn)單控制組
25、件完成對(duì)后臺(tái)服務(wù)的簡(jiǎn)單控制。變量:參數(shù)類型解釋appappclass 獲取全局變量all_music_listListView全部音樂的信息列表布局控件littleplaycom.example.hihei.play_menu_Layout自定義的簡(jiǎn)單控制組件實(shí)例化allmusicsimpleadapterSimpleAdapter對(duì)列表的適配器listListmap列表中所有信息的存儲(chǔ)函數(shù)功能:函數(shù)名返回值功能protected void onCreate(Bundle savedInstanceState)無第一次進(jìn)入該界面時(shí)候的函數(shù),完成一些初始化的操作protected void on
26、Start()無每次進(jìn)入該界面都會(huì)啟動(dòng)該函數(shù),完成對(duì)該界面一些布局或者控件狀態(tài)的更新操作private void startbar()無進(jìn)入新界面時(shí),讓歌曲服務(wù)更新當(dāng)前進(jìn)度條的最大值以及完成對(duì)不同界面的進(jìn)度條的狀態(tài)進(jìn)行更新。private void init()無對(duì)littleplay的實(shí)例化以及控制功能的實(shí)現(xiàn)public void changetose()無跳轉(zhuǎn)到歌詞界面private void allsetlist()無對(duì)整個(gè)listview完成信息的填充,以及點(diǎn)擊監(jiān)聽的實(shí)現(xiàn)public String DealtimeFormat(int time)String時(shí)間格式化函數(shù),完成時(shí)間標(biāo)簽
27、的占據(jù)兩位的設(shè)計(jì)。列入3分表示為03private void exitDialog()無退出時(shí)的對(duì)話框設(shè)計(jì),當(dāng)退出后,直接停止音樂服務(wù)以及銷毀該Activitypublic boolean onKeyDown(int keyCode, KeyEvent event)無對(duì)返回鍵的覆寫監(jiān)聽類:類名:OnItemClickListenerImpl功能:完成點(diǎn)擊任意選項(xiàng),便播放該歌曲函數(shù)設(shè)計(jì): 函數(shù)名返回值功能public void onItemClick(AdapterView parent, View view, int position,long id)無點(diǎn)擊選項(xiàng)后,設(shè)置當(dāng)前播放歌曲名字,以及通
28、過音樂服務(wù),完成播放本歌曲的功能l 類名:play_Activity功能:完成對(duì)歌詞界面的布局初始化,以及每次進(jìn)入該界面時(shí)更新當(dāng)前各個(gè)組件的狀態(tài),同時(shí)在該界面,用戶可以查看歌詞,以及對(duì)歌曲完成上一曲,下一曲,播放/暫停,進(jìn)度選擇,以及播放模式的選擇的操作,并且用戶可以查看當(dāng)前播放時(shí)間以及總時(shí)長(zhǎng)。變量:參數(shù)類型解釋songnameString正在播放的歌曲名稱play_nameTextView顯示歌曲名稱的組件seekbarSeekBar進(jìn)度條playoverButton播放模式的按鈕lyricLyricView歌詞組件playfrontButton上一曲按鈕playplayButton播放/暫
29、停按鈕playnextButton下一曲按鈕menuButton返回歌單按鈕nowtimeTextView當(dāng)前歌曲播放時(shí)間sumtimeTextView歌曲總時(shí)間appappclass全局變量獲取函數(shù)功能:函數(shù)名返回值功能protected void onCreate(Bundle savedInstanceState)無第一次創(chuàng)建該界面時(shí)完成對(duì)整個(gè)界面的初始化protected void onStart()無每次進(jìn)入該界面時(shí)對(duì)該界面的一些控件,比如進(jìn)度條狀態(tài),播放模式以及當(dāng)前歌曲時(shí)間,總時(shí)長(zhǎng),歌曲名稱以及歌曲狀態(tài)的更新。String DealtimeFormat(int time)String時(shí)間格式化函數(shù),完成時(shí)間標(biāo)簽的占據(jù)兩位的設(shè)計(jì)。列入3分表示為03private void startbar()無進(jìn)入新界面時(shí),讓歌曲服務(wù)更新當(dāng)前進(jìn)度條的最大值以及完成對(duì)不同界面的進(jìn)度條的狀態(tài)進(jìn)行更新。public void init()無更新當(dāng)前的Activity標(biāo)號(hào)以及啟動(dòng)Servicepublic void getIntentMessage()無得到上個(gè)界面?zhèn)鱽淼母枨Q,并且設(shè)置在對(duì)應(yīng)組件上public void SerchLrc(int position)無在歌曲所在目錄完成對(duì)其對(duì)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 護(hù)理技能培訓(xùn)專題報(bào)告范文
- 零售業(yè)2025年采購(gòu)趨勢(shì)與市場(chǎng)分析報(bào)告
- 光感聯(lián)動(dòng)的市場(chǎng)驅(qū)動(dòng)因素及解決方案探討
- 智能配電網(wǎng)絡(luò)優(yōu)化與可持續(xù)發(fā)展策略研究報(bào)告
- 體育設(shè)施建設(shè)項(xiàng)目成效報(bào)告
- 氫燃料電池船舶設(shè)計(jì)服務(wù)行業(yè)分析報(bào)告:技術(shù)革新與市場(chǎng)機(jī)遇
- 寵物口腔連鎖診所行業(yè)趨勢(shì)洞察報(bào)告
- 健康體檢套餐行業(yè)市場(chǎng)調(diào)研報(bào)告:未來趨勢(shì)分析與選擇建議
- 生物醫(yī)藥領(lǐng)域股權(quán)轉(zhuǎn)讓意向金協(xié)議范本
- 二手裝修房購(gòu)置與裝修施工及材料供應(yīng)合同
- 小學(xué)生預(yù)防拐騙教育課件
- 床上用品采購(gòu) 投標(biāo)方案
- 口腔工藝管理課件
- 2025-2030年中國(guó)基于細(xì)胞的人源化小鼠模型行業(yè)市場(chǎng)現(xiàn)狀供需分析及投資評(píng)估規(guī)劃分析研究報(bào)告
- 2025至2030中國(guó)無線通訊檢測(cè)行業(yè)市場(chǎng)發(fā)展分析及競(jìng)爭(zhēng)格局與投資機(jī)會(huì)報(bào)告
- 2025年上海徐匯區(qū)高一(下)信息技術(shù)合格考試題及答案
- 4輸變電工程施工質(zhì)量驗(yàn)收統(tǒng)一表式(電纜工程電氣專業(yè))-2024年版
- 2025至2030年中國(guó)鐵電存儲(chǔ)器行業(yè)市場(chǎng)深度評(píng)估及投資機(jī)會(huì)預(yù)測(cè)報(bào)告
- 醫(yī)院醫(yī)保醫(yī)療管理制度
- 危急重癥救治管理制度
- CJ/T 123-2016給水用鋼骨架聚乙烯塑料復(fù)合管
評(píng)論
0/150
提交評(píng)論