亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

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

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

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

河西区| 安乡县| 连江县| 乐都县| 金秀| 资兴市| 松原市| 莆田市| 威信县| 台东县| 铜鼓县| 鸡西市| 革吉县| 穆棱市| 遂平县| 施秉县| 北安市| 习水县| 南充市| 黄冈市| 梧州市| 陈巴尔虎旗| 惠安县| 贵港市| 洮南市| 芜湖市| 德惠市| 共和县| 尼木县| 上蔡县| 南涧| 荣昌县| 莒南县| 兰西县| 贵州省| 嘉鱼县| 吉木乃县| 安仁县| 台南县| 驻马店市| 昭苏县|