expo-audio
# install expo audio npx expo install expo-audio npx expo uninstall expo-audio
Minimal setup in React:
import { useAudioRecorder, AudioModule, RecordingPresets } from "expo-audio"; const audioRecorder = useAudioRecorder(RecordingPresets.HIGH_QUALITY); const record = async () => { await audioRecorder.prepareToRecordAsync(); audioRecorder.record(); console.log("Recording started"); setIsListening(true); }; const stopRecording = async () => { setIsListening(false); console.log("Recording stopped"); await audioRecorder.stop(); const audioFileUri = audioRecorder.uri; setAudioBlobUri(audioFileUri || ""); return audioFileUri; }; useEffect(() => { (async () => { const status = await AudioModule.requestRecordingPermissionsAsync(); if (!status.granted) { Alert.alert("Permission to access microphone was denied"); } })(); }, []);