package me.chayan.mediaplayerdemo;
import android.content.Context;
import android.content.res.AssetFileDescriptor;
import android.content.res.Resources;
import android.media.AudioFormat;
import android.media.AudioManager;
import android.media.AudioTrack;
import android.media.MediaPlayer;
import android.net.Uri;
import android.util.Log;
import java.io.FileInputStream;
import java.io.IOException;
public class AudioPlayer {
static final String TAG = AudioPlayer.class.getSimpleName();
private final Context mContext;
private MediaPlayer mPlayer;
public AudioPlayer(Context context) {
this.mContext = context.getApplicationContext();
}
public void playRingtone() {
AudioManager audioManager = (AudioManager) mContext.getSystemService(Context.AUDIO_SERVICE);
AssetFileDescriptor afd = mContext.getResources().openRawResourceFd(R.raw.phone_loud);
// Honour silent mode
if (audioManager.getRingerMode() == AudioManager.RINGER_MODE_NORMAL) {
mPlayer = new MediaPlayer();
mPlayer.setAudioStreamType(AudioManager.STREAM_RING);
try {
mPlayer.setDataSource(afd.getFileDescriptor(), afd.getStartOffset(), afd.getLength());
mPlayer.prepare();
} catch (IOException ex) {
Log.e(TAG, "create failed:", ex);
mPlayer = null;
return;
}
mPlayer.setLooping(true);
mPlayer.start();
}
}
public void stopRingtone() {
if (mPlayer != null) {
mPlayer.stop();
mPlayer.release();
mPlayer = null;
}
}
}
Created
December 25, 2021 04:32
-
-
Save chayanforyou/ccd4c3f83a3941daeb90b4bdcbf6a489 to your computer and use it in GitHub Desktop.
Simplified example of Android MediaPlayer
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment