Android開(kāi)發(fā)之MediaPlayer多媒體(音頻,視頻)播放工具類
本文實(shí)例講述了Android開(kāi)發(fā)之MediaPlayer多媒體(音頻,視頻)播放工具類。分享給大家供大家參考,具體如下:
package com.android.imooc.chat; import java.io.IOException; import android.media.AudioManager; import android.media.MediaPlayer; import android.media.MediaPlayer.OnCompletionListener; import android.media.MediaPlayer.OnErrorListener; /** * @描述 聲音控制類 * @項(xiàng)目名稱 App_imooc * @包名 com.android.imooc.chat * @類名 MediaHelper * @author chenlin * @date 2013年6月17日 下午10:46:01 * @version 1.0 */ public class MediaHelper { private static MediaPlayer mPlayer; private static boolean isPause = false; public static void playSound(String filePath, OnCompletionListener listener) { if (mPlayer == null) { mPlayer = new MediaPlayer(); } else { mPlayer.reset(); } mPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC); mPlayer.setOnCompletionListener(listener); mPlayer.setOnErrorListener(new OnErrorListener() { @Override public boolean onError(MediaPlayer mp, int what, int extra) { mPlayer.reset(); return false; } }); try { mPlayer.setDataSource(filePath); mPlayer.prepare(); } catch (IllegalArgumentException e) { e.printStackTrace(); } catch (SecurityException e) { e.printStackTrace(); } catch (IllegalStateException e) { e.printStackTrace(); } catch (IOException e) { throw new RuntimeException("讀取文件異常:" + e.getMessage()); } mPlayer.start(); isPause = false; } public static void pause() { if (mPlayer != null && mPlayer.isPlaying()) { mPlayer.pause(); isPause = true; } } // 繼續(xù) public static void resume() { if (mPlayer != null && isPause) { mPlayer.start(); isPause = false; } } public static void release() { if (mPlayer != null) { mPlayer.release(); mPlayer = null; } } }
更多關(guān)于Android相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Android開(kāi)發(fā)入門與進(jìn)階教程》、《Android多媒體操作技巧匯總(音頻,視頻,錄音等)》、《Android視圖View技巧總結(jié)》、《Android編程之a(chǎn)ctivity操作技巧總結(jié)》、《Android操作json格式數(shù)據(jù)技巧總結(jié)》、《Android資源操作技巧匯總》及《Android控件用法總結(jié)》
希望本文所述對(duì)大家Android程序設(shè)計(jì)有所幫助。
相關(guān)文章
Android ViewPager循環(huán)播放廣告實(shí)例詳解
這篇文章主要介紹了Android ViewPager循環(huán)播放廣告條實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下2017-03-03Android自定義wheelview實(shí)現(xiàn)滾動(dòng)日期選擇器
這篇文章主要為大家詳細(xì)介紹了Android自定義wheelview實(shí)現(xiàn)滾動(dòng)日期選擇器,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-07-07Android開(kāi)發(fā)之資源目錄assets與res/raw的區(qū)別分析
這篇文章主要介紹了Android開(kāi)發(fā)之資源目錄assets與res/raw的區(qū)別,結(jié)合實(shí)例形式分析了Android開(kāi)發(fā)中資源目錄assets與res/raw的具體功能、使用方法與區(qū)別,需要的朋友可以參考下2016-01-01Android開(kāi)發(fā)中Looper.prepare()和Looper.loop()
Looper用于封裝了android線程中的消息循環(huán),默認(rèn)情況下一個(gè)線程是不存在消息循環(huán)(message loop)的,具體調(diào)用方法大家可以通過(guò)本文學(xué)習(xí)2016-11-11Android實(shí)現(xiàn)橫屏切換科學(xué)計(jì)算器
這篇文章主要為大家詳細(xì)介紹了Android實(shí)現(xiàn)橫屏切換科學(xué)計(jì)算器,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-06-06ListView的Adapter使用 之 初學(xué)ArrayAdapter String
ListView是Android中經(jīng)常會(huì)使用的東西,綁定數(shù)據(jù)對(duì)于初學(xué)者來(lái)說(shuō),尤其是剛接觸編程的人來(lái)說(shuō),往往會(huì)覺(jué)得很難理解,我上大二的時(shí)候?qū)W的java,但是基本上相當(dāng)于沒(méi)有學(xué),什么都沒(méi)寫(xiě)過(guò),真正接觸編程就是開(kāi)始上手學(xué)android,把這些記錄下來(lái),自己可以回頭看下,也可以讓新手更好的理解2013-06-06