私の場合は MediaRecorder である、メモリからオブジェクトを取得する方法を知りたいです。これが私のクラスです:
ミミッククラス:
public class MyMic {
MediaRecorder recorder2;
File file;
private Context c;
public MyMic(Context context){
this.c=context;
recorder2= new MediaRecorder();
}
private void stopRecord() throws IOException {
recorder2.stop();
recorder2.reset();
recorder2.release();
}
private void startRecord() {
recorder2.setAudioSource(MediaRecorder.AudioSource.MIC);
recorder2.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
recorder2.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
recorder2.setOutputFile(file.getPath());
try {
recorder2.prepare();
recorder2.start();
} catch (IllegalStateException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
私のレシーバークラス:
public class MyReceiver extends BroadcastReceiver {
private Context c;
private MyMic myMic;
@Override
public void onReceive(Context context, Intent intent) {
this.c=context;
myMic = new MyMic(c);
if(my condition = true){
myMic.startRecord();
}else
myMic.stopRecord();
}
}
したがって、それを呼び出しstartRecord()
ているときに新しいものを作成しMediaRecorder
ますが、クラスを2回インスタンス化すると、オブジェクトを取得できません。MediaRecorder
彼の住所で私のものを取り戻せますか.