Как сохранить аудиофайл после записи голоса в Xamarin.Forms - PullRequest
0 голосов
/ 09 ноября 2018

Мне интересно, как сохранить аудиофайл в формах Xamarin. Я могу получить место, где сохранить в AppDataDirectory, используя Xamarin.Essentials:

var mainDir = FileSystem.AppDataDirectory;

Но я не уверен, как сохранить его в коде, сразу после записи с помощью плагина NateRickard AudioRecorder:

var recordTask = await recorder.StartRecording();
var audioFile = await recordTastk;  //audioFile is of string datatype

Это так же, как сохранение / создание любого двоичного файла в C #? Скажите, как сохранить файл изображения? И дополнительно мне нужно использовать Dependency Injection, чтобы сохранить его с помощью кода, специфичного для платформы, или я могу сделать это только из кода PCL?

1 Ответ

0 голосов
/ 09 ноября 2018

Документы явно обсуждают это:

Доступ к записанному файлу

Существует несколько способов доступа к записанному пути аудиофайла:

  • API на основе задач вернет путь к файлу после завершения задачи. Задача может быть ожидаемой или использовать стандартную задачу API продолжения.
  • API на основе событий вернет полный путь к записанному аудиофайлу в параметре audioFile события AudioInputReceived
    обработчик.
  • Метод GetAudioFilePath () класса AudioRecorderService возвращает путь к записанному аудиофайлу.

Все они возвращают ноль, если звук не записан еще или ни один звук не был записан / обнаружен в последнем сеансе записи.

Если у вас есть путь к записанному аудиофайлу, вы можете использовать стандартные файловые операции (для родного / .NET Standard) и / или кросс абстракция файловой системы платформы, такая как PCLStorage, чтобы получить поток к данные файла.

...