Android play local audio file

Prepare

Audio files are placed in the res/raw folder:

 

accomplish

/**

 * Monitoring system silent mode

 * @param mContext

 */

private void modeIndicater(Context mContext){

AudioManager am = (AudioManager)mContext.getSystemService(Context.AUDIO_SERVICE);

final int ringerMode = am.getRingerMode();

switch (ringerMode) {

case AudioManager.RINGER_MODE_NORMAL:// normal mode

playFromRawFile(mContext);

break;

case AudioManager.RINGER_MODE_VIBRATE:// silent mode

break;

case AudioManager.RINGER_MODE_SILENT:// vibration mode

break;

}

}

/**

 * Beep

 * @param mContext

 */

private void playFromRawFile(Context mContext) {

try {

MediaPlayer player = new MediaPlayer();

AssetFileDescriptor file = mContext.getResources().openRawResourceFd(R.raw.notice3);

try {

player.setDataSource(file.getFileDescriptor(), file.getStartOffset(), file.getLength());

file.close();

if (!player.isPlaying()){

player.prepare();

player.start();

}

} catch (IOException e) {

player = null;

}

} catch (Exception e) {

e.printStackTrace ();

}

}

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=324441356&siteId=291194637