中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

android應用開發:音樂播放器(2)--技術細節

發布時間:2020-07-12 22:07:26 來源:網絡 閱讀:546 作者:wxmgcs 欄目:移動開發

1)共享數據類:

使用android系統提供的MediaStore.Audio.Media.EXTERNAL_CONTENT_URI獲取本地所有音頻文件,將獲取到的音頻文件封裝到MusicInfoController類中,將該類交給繼承自Application的MusicPlayerApp類來管理,這樣就可以實現通過MusicInfoController類來共享程序中的數據。
cursorMusic = musicInfoControl.getAllMusic();
2)定義常量:
由于程序中多處用到BroadCastReceiver和Intent中key的傳遞,所以有必要將key定義在Contants類中,并且將不同的key封裝到內部類中,便于管理
Contants(MusicPlayerMsg、MusicInfoBySharedPreference、ReceiverByBroadcast、MsgByBroadcast);
3)保存程序退出數據:
將程序的退出信息寫到SharedPreference中,方便程序下次運行的時候,找到可用的資源。
setMusicInfoToSP(String musicName, String musicPath);
getMusicInfoBySP();
4)播放暫停控制:
設置標志位
5)上一曲/下一曲:
當前的歌曲id加1/減一后,將該值發給musicInfoControl,從musicInfoControl中獲取歌曲的上一首/下一首信息
6)播放進度的字符顯示:
在Service中創建進程,該進程每隔1秒將當前的播放狀態(mplayer.getCurrentPosition())發送給主界面,主界面對接收到的數據進行格式化
SimpleDateFormat mSimpleDateFormat = new SimpleDateFormat("mm:ss");
musicEndTime.setText(mSimpleDateFormat.format(durationTime));
7)進度條的實時更新:
設置當前值:musicProgressBar.setProgress(currentTime);
設置最大值:musicProgressBar.setMax(durationTime);
8)實時更新播放界面的歌曲標題:
在播放列表界面的時候,通過廣播將listview中被選擇的歌曲信息發給播放主界面。
9)監聽播放結束信息

setOnCompletionListener

10)點擊Menu按鍵就無法彈出菜單

覆寫activity的onKeyUp方法,并調用監聽KeyEvent.KEYCODE_MENU,super.openOptionsMenu();



向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

壶关县| 进贤县| 嫩江县| 宜君县| 马鞍山市| 西乌珠穆沁旗| 通道| 城步| 龙川县| 建湖县| 海淀区| 紫阳县| 安化县| 房产| 甘洛县| 普兰店市| 石泉县| 山东| 呼玛县| 莱州市| 曲水县| 宝坻区| 来安县| 十堰市| 云霄县| 浦县| 巴中市| 资中县| 嘉鱼县| 威海市| 蕲春县| 鄂托克旗| 灌南县| 张掖市| 连平县| 通化县| 景泰县| 黄梅县| 高平市| 桃江县| 密云县|