Я хотел бы отобразить индикатор прогресса во время записи звука в моем приложении.Количество времени, выделенное для записи, предварительно определено.Я установил это в коде, скажем, максимальное время записи 10 секунд, но пользователь может остановить запись за меньшее время, и, конечно, индикатор прогресса остановится и перезагрузится.
Я пытался сделать этоработать правильно, не могли бы вы дать несколько советов.Примечание. Я использую пакет nuget NateRickard AudioRecorder.
if (!recorder.IsRecording)
{
buttonRecord.IsEnabled = false;
buttonPlay.IsEnabled = false;
DependencyService.Get<IAudioService>().PrepareRecording();
// start recording
var recordTask = await recorder.StartRecording();
// set up progress bar
//progressBarRecordTime.Progress = 1.0;
//await progressBarRecordTime.ProgressTo(1.0, 10000, Easing.Linear);
buttonRecord.Text = "Stop Recording";
buttonRecord.IsEnabled = true;
// get the recorded file
var recordedAudioFile = await recordTask;
buttonRecord.Text = "Record";
buttonPlay.IsEnabled = true;
if (recordedAudioFile != null)
{
var recordingFileDestinationPath = Path.Combine(FileSystem.AppDataDirectory, AppConstants.CUSTOM_ALERT_FILENAME);
if (File.Exists(recordingFileDestinationPath))
{
File.Delete(recordingFileDestinationPath);
}
File.Copy(recordedAudioFile, recordingFileDestinationPath);
}
}