На данный момент у меня есть код с этого сайта ( текст ссылки ), который отлично работает.В примере на сайте он начинает запись на 10 секунд, а затем сразу же воспроизводит звук в обратном порядке.Я изменил код, чтобы начать запись при нажатии кнопки, но могу заставить его записывать только 10 секунд, а затем сохранить этот файл.Я хочу иметь возможность начать запись, нажав кнопку, а затем остановить запись нажатием другой кнопки.У меня есть идея, что это может быть прерывание для метода wait () объекта потока, но я не знаю, как это реализовать.Мой код выглядит следующим образом:
public void onClickRecord(View v){
text.setText("Recording");
Thread thread = new Thread(new Runnable() {
public void run() {
record();
}
});
thread.start();
synchronized(this) {
try {
wait(10000); //This is the 10 second waiting period while recording
}
catch (InterruptedException e) {
}
}
isRecording = false;
try {
thread.join();
} catch (InterruptedException e) {
}
}
public void onClickStop(View v){
//Here is what needs to be implemented to stop the recording.
}
Код довольно большой, поэтому я разместил только те фрагменты, которые я считаю актуальными.Если что-то еще нужно, просто спросите.
Спасибо.