
First of all, copy a mp3 file in /res/raw folder.
(You have to create the folder "raw" under "res", and copy a mp3 file named "music.mp3" into it.)
main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello"
/>
<Button
android:id="@+id/playpause"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Play"
/>
<Button
android:id="@+id/quit"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Quit!"
/>
<TextView
android:id="@+id/state"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
</LinearLayout>
AndroidMediaPlayer.java
package com.exercise.AndroidMediaPlayer;
import android.app.Activity;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
public class AndroidMediaPlayer extends Activity {
MediaPlayer mediaPlayer;
Button buttonPlayPause, buttonQuit;
TextView textState;
private int stateMediaPlayer;
private final int stateMP_NotStarter = 0;
private final int stateMP_Playing = 1;
private final int stateMP_Pausing = 2;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    buttonPlayPause = (Button)findViewById(R.id.playpause);
    buttonQuit = (Button)findViewById(R.id.quit);
    textState = (TextView)findViewById(R.id.state);
    buttonPlayPause.setOnClickListener(buttonPlayPauseOnClickListener);
    buttonQuit.setOnClickListener(buttonQuitOnClickListener);
    initMediaPlayer();
}
private void initMediaPlayer()
{
 mediaPlayer = new  MediaPlayer();
    mediaPlayer = MediaPlayer.create(AndroidMediaPlayer.this, R.raw.music);
    stateMediaPlayer = stateMP_NotStarter;
    textState.setText("- IDLE -");
}
Button.OnClickListener buttonPlayPauseOnClickListener
 = new Button.OnClickListener(){
 @Override
 public void onClick(View v) {
  // TODO Auto-generated method stub
  switch(stateMediaPlayer){
  case stateMP_NotStarter:
   mediaPlayer.start();
   buttonPlayPause.setText("Pause");
   textState.setText("- PLAYING -");
   stateMediaPlayer = stateMP_Playing;
   break;
  case stateMP_Playing:
   mediaPlayer.pause();
   buttonPlayPause.setText("Play");
   textState.setText("- PAUSING -");
   stateMediaPlayer = stateMP_Pausing;
   break;
  case stateMP_Pausing:
   mediaPlayer.start();
   buttonPlayPause.setText("Pause");
   textState.setText("- PLAYING -");
   stateMediaPlayer = stateMP_Playing;
   break;
  }
 }
};
Button.OnClickListener buttonQuitOnClickListener
= new Button.OnClickListener(){
@Override
public void onClick(View v) {
 // TODO Auto-generated method stub
 mediaPlayer.stop();
 mediaPlayer.release();
 finish();
}
};
}
next: Play mp3 in SD Card, using Android's MediaPlayer
No comments:
Post a Comment