真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

android中怎么實現(xiàn)小音頻頻繁播放-創(chuàng)新互聯(lián)

本篇文章為大家展示了android中怎么實現(xiàn)小音頻頻繁播放,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

成都創(chuàng)新互聯(lián)公司是一家專業(yè)提供西夏企業(yè)網(wǎng)站建設,專注與網(wǎng)站建設、成都網(wǎng)站設計、H5建站、小程序制作等業(yè)務。10年已為西夏眾多企業(yè)、政府機構等服務。創(chuàng)新互聯(lián)專業(yè)網(wǎng)絡公司優(yōu)惠進行中。

第一步:放置目標音頻文件

將音頻文件放在res/raw目錄下,這樣就可以通過R來引用它了。如果想放在Assert目錄下也是可以的,這里先放在raw下。

第二步:編寫音頻播放的類

public class MusicPlayer {  private Context mContext ;  private static MusicPlayer sInstance ;  static class Type{    public final static int MUSIC_CLICK = 1 ;    public final static int MUSIC_FOCUSED = 2 ;  }  private SoundPool mSp ;  private Map sSpMap ;  private MusicPlayer(Context context){    mContext = context ;    sSpMap = new TreeMap() ;    mSp = new SoundPool(10 ,AudioManager.STREAM_MUSIC ,100) ;    sSpMap.put(Type.MUSIC_CLICK, mSp.load(mContext, R.raw.click, 1)) ;    sSpMap.put(Type.MUSIC_FOCUSED, mSp.load(mContext, R.raw.focused, 1)) ;  }     public static MusicPlayer getInstance(Context context){    if(sInstance == null)      sInstance = new MusicPlayer(context) ;    return sInstance ;  }     public void play(int type){    if(sSpMap.get(type) == null) return ;    mSp.play(sSpMap.get(type), 1, 1, 0, 0, 1) ;  }}

第三步:調用接口,播放音頻

// 在界面上需要這樣調用// 初始化mMusic = MusicPlayer.getInstance(MainActivity.this) ;// 在onClick中播放click時的聲音mMusic.play(MusicPlayer.Type.MUSIC_CLICK) ;// 在onFocusChange中聚焦狀態(tài)播放聚焦的聲音mMusic.play(MusicPlayer.Type.MUSIC_FOCUSED) ;

如果想放在Assert中的話,要注意在引用音頻文件時要用AssetFileDescriptor,具體方式如下:

MediaPlayer mMediaPlayer = new MediaPlayer() ;   AssetFileDescriptor fd = mContext.getAssets().openFd(“music/click.pm3”) ; // assert目錄下的music目錄  mMediaPlayer.setDataSource(fd.getFileDescriptor() ,fd.getStartOffset() ,fd.getLength()) ;  mMediaPlayer.prepare() ;  mMediaPlayer.setOnCompletionListener(new OnCompletionListener() {    @Override    public void onCompletion(MediaPlayer arg0) {      mMediaPlayer.release() ;    }  }) ;  mMediaPlayer.setOnErrorListener(new OnErrorListener() {    @Override    public boolean onError(MediaPlayer arg0, int arg1, int arg2) {      mMediaPlayer.release() ;      return false;    }  }) ;mMediaPlayer.start() ;

上述內(nèi)容就是android中怎么實現(xiàn)小音頻頻繁播放,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道。


網(wǎng)站欄目:android中怎么實現(xiàn)小音頻頻繁播放-創(chuàng)新互聯(lián)
標題路徑:http://weahome.cn/article/cceedd.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部