title: Recording and playing, but the sound is not coming?
body: <pre><code>package com.Project_recording;
  
  import java.io.File;
  import java.io.IOException;
  
  import android.app.Activity;
  import android.media.MediaPlayer;
  import android.media.MediaRecorder;
  import android.os.Bundle;
  import android.os.Environment;
  import android.util.Log;
  import android.view.View;
  import android.view.View.OnClickListener;
  import android.widget.Button;
  import android.widget.TextView;
  
  public class Project_recordingActivity extends Activity {
      private static final String APP_TAG = "com.hascode.android.soundrecorder";
  
      private MediaRecorder recorder = new MediaRecorder();
      private MediaPlayer player = new MediaPlayer();
  
      private Button btRecord;
      private Button btPlay;
      private TextView resultView;
  
      private boolean recording = false;
      private boolean playing = false;
      private File outfile = null;
  
      @Override
      public void onCreate(Bundle savedInstanceState) {
          super.onCreate(savedInstanceState);
          setContentView(R.layout.main);
          resultView = (TextView) findViewById(R.id.output);
  
          try {
              // the soundfile
              File storageDir = new File(Environment
                      .getExternalStorageDirectory(), "com.hascode.recorder");
              storageDir.mkdir();
              Log.d(APP_TAG, "Storage directory set to " + storageDir);
              outfile = File.createTempFile("hascode", ".3gp", storageDir);
  
              // init recorder
              recorder.setAudioSource(MediaRecorder.AudioSource.MIC);
              recorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
              recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
              recorder.setOutputFile(outfile.getAbsolutePath());
  
              // init player
              player.setDataSource(outfile.getAbsolutePath());
          } catch (IOException e) {
              Log.w(APP_TAG, "File not accessible ", e);
          } catch (IllegalArgumentException e) {
              Log.w(APP_TAG, "Illegal argument ", e);
          } catch (IllegalStateException e) {
              Log.w(APP_TAG, "Illegal state, call reset/restore", e);
          }
  
          btRecord = (Button) findViewById(R.id.btRecord);
          btRecord.setOnClickListener(handleRecordClick);
  
          btPlay = (Button) findViewById(R.id.btPlay);
          btPlay.setOnClickListener(handlePlayClick);
  
      }
  
      private final OnClickListener handleRecordClick = new OnClickListener() {
          @Override
          public void onClick(View view) {
              if (!recording) {
                  startRecord();
              } else {
                  stopRecord();
              }
          }
      };
  
      private final OnClickListener handlePlayClick = new OnClickListener() {
          @Override
          public void onClick(View view) {
              if (!playing) {
                  startPlay();
              } else {
                  stopPlay();
              }
          }
      };
  
      private void startRecord() {
          Log.d(APP_TAG, "start recording..");
          printResult("start recording..");
          try {
              recorder.prepare();
              recorder.start();
              recording = true;
          } catch (IllegalStateException e) {
              Log
                      .w(APP_TAG,
                              "Invalid recorder state .. reset/release should have been called");
          } catch (IOException e) {
              Log.w(APP_TAG, "Could not write to sd card");
          }
      }
  
      private void stopRecord() {
          Log.d(APP_TAG, "stop recording..");
          printResult("stop recording..");
          recorder.stop();
          recorder.reset();
          recorder.release();
          recording = false;
      }
  
      private void startPlay() {
          Log.d(APP_TAG, "starting playback..");
          printResult("start playing..");
          try {
              playing = true;
              player.prepare();
              player.start();
          } catch (IllegalStateException e) {
              Log.w(APP_TAG, "illegal state .. player should be reset");
          } catch (IOException e) {
              Log.w(APP_TAG, "Could not write to sd card");
          }
      }
  
      private void stopPlay() {
          Log.d(APP_TAG, "stopping playback..");
          printResult("stop playing..");
          player.stop();
          player.reset();
          player.release();
          playing = false;
      }
  
      private void printResult(String result) {
          resultView.setText(result);
      }
  }
  </code></pre>
  
  <p>When I press the record button, Is starts recording. When I press the play button, It starting playing. When I again press the play button, I stops playing. The important issue which I am facing is the sound is not heared..? Please do me a needful. I am new to android..</p>