【问题标题】:Saving audio files in mobile with expo Audio使用 expo Audio 将音频文件保存在移动设备中
【发布时间】:2021-03-15 15:00:33
【问题描述】:

我想将我的用户录制的音频消息保存在他的手机中,因为我需要访问他的手机以将音频保存在任何文件中,以后我可以从中检索但我不知道该怎么做?我看到的一个可能的解决方案是存储在 Firebase 存储或 AWS 存储桶中并将 URL 存储在数据库中,但我想将该音频文件存储在用户手机中。

async function startRecording() {
 try {
    console.log("Requesting permissions..");
    await Audio.requestPermissionsAsync();
    await Audio.setAudioModeAsync({
    allowsRecordingIOS: true,
    playsInSilentModeIOS: true,
  });
  console.log("Starting recording..");
  const recording = new Audio.Recording();
  await recording.prepareToRecordAsync(
    Audio.RECORDING_OPTIONS_PRESET_HIGH_QUALITY
  );
  await recording.startAsync();
  setRecording(recording);
  console.log("Recording started");
} catch (err) {
  console.error("Failed to start recording", err);
  }
 }


 async function stopRecording() {
   console.log("Stopping recording..");
   setRecording(undefined);
   await recording.stopAndUnloadAsync();
   const uri = recording.getURI();
   handleStoringFilesInPhone(uri)
   console.log("Recording stopped and stored at", uri);
   console.error("URI", uri);
}

我想将从 expo 音频返回的 URI 存储在用户的手机中,我该怎么做?

【问题讨论】:

    标签: android ios reactjs react-native audio


    【解决方案1】:

    文件默认保存在手机中。您拥有的 uri 是本地 uri

    【讨论】:

    • 如果默认保存,那么它的位置在哪里?
    • 这里有 uri => console.log("记录停止并存储在", uri);您可以将其存储在某个地方并随时在 expo 应用程序中使用。你可以使用docs.expo.dev/versions/latest/sdk/async-storage
    猜你喜欢
    • 2021-09-22
    • 2014-10-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多