본문 바로가기

코드조각모음

[android009] 배경음을 위한 MediaPlayer 예제

import java.io.*;
import android.app.*;
import android.content.res.*;
import android.media.*;
import android.os.*;
import android.widget.*;

public class MediaPlayerTest extends Activity
{
    MediaPlayer mediaPlayer;
   
    @Override
    public void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
       
        TextView textView = new TextView(this);
        setContentView(textView);
        setVolumeControlStream(AudioManager.STREAM_MUSIC);
       
        mediaPlayer = new MediaPlayer();
        try
        {
            AssetManager assetManager = getAssets();
            AssetFileDescriptor descriptor = assetManager.openFd("music.ogg");
            mediaPlayer.setDataSource(
                    descriptor.getFileDescriptor(),
                    descriptor.getStartOffset(),
                    descriptor.getLength());
            mediaPlayer.prepare();
            mediaPlayer.setLooping(true);
        }
        catch(IOException e)
        {
            textView.setText("Can not load music file." + e.getMessage());
            mediaPlayer = null;
        }
    }
   
    @Override
    protected void onResume()
    {
        super.onResume();
        if(mediaPlayer!=null)
        {
            mediaPlayer.start();
        }
    }
   
    @Override
    protected void onPause()
    {
        super.onPause();
        if(mediaPlayer!=null)
        {
            mediaPlayer.pause();
            if(isFinishing())
            {
                mediaPlayer.stop();
                mediaPlayer.release();
            }
        }
    }
}