Android 撥放音檔需要使用到一個類別如下:

import android.media.SoundPool;

 

private SoundPool soundPool;//宣告
private int soundID;

// 聲音池的最大音頻流數目為10, 聲音品質為5
soundPool = new SoundPool(10, AudioManager.STREAM_SYSTEM,5 );
// 載入聲音
soundID = soundPool.load(MainActivity.this, R.raw.bi_2, 1);//載入音頻檔案

 

// 聲音來源, 左聲道音量, 右聲道音量, 優先級, 循環次數, 速率...速率最低0.5, 最高為2, 1代表正常速度
soundPool.play(soundID, 1, 1, 0, 0, 1);

 

音檔要放在下述資料夾中:

1.jpg

 

如果把上述的程式碼擺在onCreate中,那麼APP剛開啟就會進行播放,不過有可能會遇到下述錯誤造成無法播放音檔:

Android SoundPool sample 1 not ready

 

上述是代表Android還沒來得及把音檔讀進來,這時候我會選擇使用sleep方式讓App開啟慢一點點。

 

完整程式碼如下:

 

 

其中line20我就是讓app慢了五秒,確保音檔載入成功進行播放。

 

arrow
arrow

    葛瑞斯肯 發表在 痞客邦 留言(0) 人氣()