如何集成我的android语音记录器代码以同时显示用户';现在在哪里?

如何集成我的android语音记录器代码以同时显示用户';现在在哪里?,android,textbox,location,position,recorder,Android,Textbox,Location,Position,Recorder,为了制作一个简单的语音记录器应用程序,我通读了很多代码。它工作得非常好,非常简单,但是现在我想把它和一些额外的功能集成起来,使用一个简单的实用工具,比如文本框,来显示用户的当前位置。我非常了解java编程,但我仍在学习Android,所以我对如何操作有些不确定。我已经阅读了许多教程和示例,我也尝试了许多不同的方法,但似乎没有任何效果。我正在使用Eclipse和Android SDK开发版本8。我还有一部android手机来测试这个应用程序,事实证明它非常有用 这是我的代码,这是一个可以作为录音机

为了制作一个简单的语音记录器应用程序,我通读了很多代码。它工作得非常好,非常简单,但是现在我想把它和一些额外的功能集成起来,使用一个简单的实用工具,比如文本框,来显示用户的当前位置。我非常了解java编程,但我仍在学习Android,所以我对如何操作有些不确定。我已经阅读了许多教程和示例,我也尝试了许多不同的方法,但似乎没有任何效果。我正在使用Eclipse和Android SDK开发版本8。我还有一部android手机来测试这个应用程序,事实证明它非常有用

这是我的代码,这是一个可以作为录音机使用的应用程序。如有任何帮助,将不胜感激:

import android.app.Activity;
import android.widget.LinearLayout;
import android.os.Bundle;
import android.os.Environment;
import android.view.ViewGroup;
import android.widget.Button;
import android.view.View;
import android.view.View.OnClickListener;
import android.content.Context;
import android.content.Intent;
import android.util.Log;
import android.location.Location;
import android.location.LocationListener;
import android.location.LocationManager;
import android.media.MediaRecorder;
import android.media.MediaPlayer;
import java.io.IOException;


public class AndroidVoiceActivity extends Activity{
private static final String LOG_TAG = "AudioRecordTest";
private static String mFileName = null;

private RecordButton mRecordButton = null;
private MediaRecorder mRecorder = null;

private PlayButton   mPlayButton = null;
private MediaPlayer   mPlayer = null;

/***************** Record Button ********************/
private void onRecord(boolean start) {
    if (start) {
        startRecording();
    } else {
        stopRecording();
    }
}

private void startRecording() {
    mRecorder = new MediaRecorder();
    mRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
    mRecorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
    mRecorder.setOutputFile(mFileName);
    mRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);

    try {
        mRecorder.prepare();
    } catch (IOException e) {
        Log.e(LOG_TAG, "prepare() failed");
    }

    mRecorder.start();
}

private void stopRecording() {
    mRecorder.stop();
    mRecorder.release();
    mRecorder = null;
}

class RecordButton extends Button {
    boolean mStartRecording = true;

    OnClickListener clicker = new OnClickListener() {
        public void onClick(View v) {
            onRecord(mStartRecording);
            if (mStartRecording) {
                setText("Stop recording");
            } else {
                setText("Start recording");
            }
            mStartRecording = !mStartRecording;
        }
    };

    public RecordButton(Context ctx) {
        super(ctx);
        setText("Start recording");
        setOnClickListener(clicker);
    }
}

/***************** Play Button ********************/
private void startPlaying() {
    mPlayer = new MediaPlayer();
    try {
        mPlayer.setDataSource(mFileName);
        mPlayer.prepare();
        mPlayer.start();
    } catch (IOException e) {
        Log.e(LOG_TAG, "prepare() failed");
    }
}

private void stopPlaying() {
    mPlayer.release();
    mPlayer = null;
}

private void onPlay(boolean start) {
    if (start) {
        startPlaying();
    } else {
        stopPlaying();
    }
}

class PlayButton extends Button {
    boolean mStartPlaying = true;

    OnClickListener clicker = new OnClickListener() {
        public void onClick(View v) {
            onPlay(mStartPlaying);
            if (mStartPlaying) {
                setText("Stop playing");
            } else {
                setText("Start playing");
            }
            mStartPlaying = !mStartPlaying;
        }
    };

    public PlayButton(Context ctx) {
        super(ctx);
        setText("Start playing");
        setOnClickListener(clicker);
    }
}
/***************** File Saver ********************/

public AndroidVoiceActivity() {
    mFileName = Environment.getExternalStorageDirectory().getAbsolutePath();
    mFileName += "/audiorecordtest.3gp";
}

/***************** On Create ********************/
@Override
public void onCreate(Bundle icicle) {
    super.onCreate(icicle);
    //preparing linear layout
    LinearLayout ll = new LinearLayout(this);

    //record button
    mRecordButton = new RecordButton(this);
    ll.addView(mRecordButton,
        new LinearLayout.LayoutParams(
            ViewGroup.LayoutParams.WRAP_CONTENT,
            ViewGroup.LayoutParams.WRAP_CONTENT,
            0));

    //play button
    mPlayButton = new PlayButton(this);
    ll.addView(mPlayButton,
        new LinearLayout.LayoutParams(
            ViewGroup.LayoutParams.WRAP_CONTENT,
            ViewGroup.LayoutParams.WRAP_CONTENT,
            0));

    //setting linear layout
    setContentView(ll);
}

@Override
public void onPause() {
    super.onPause();
    if (mRecorder != null) {
        mRecorder.release();
        mRecorder = null;
    }

    if (mPlayer != null) {
        mPlayer.release();
        mPlayer = null;
    }
}

}

您应该先看看Android开发者文档

如果要显示当前地址,请查看地理编码器:


嘿,Craigy,我已经阅读了这些文件,但我相信我只是用一种不正确的方式来处理这个问题。。。我可能离我的答案不远,但有些东西不起作用。我是stackoverflow的新用户,所以我需要等待至少5个小时才能回答我自己的问题,但这是我开发的代码,提供了一个可能的解决方案。在此期间,我将继续开发,但如果您或任何人可以帮助提供一些代码示例或一些代码答案或教程,将不胜感激。