You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Expo AV麦克风权限无弹窗且录音启动失败问题求助

音频录制权限自动拒绝问题(Expo开发)

我用Expo开发应用时碰到了音频录制权限的问题。点击应用内的录音按钮后,控制台输出如下错误:

LOG  Requesting permissions..
LOG  Starting recording..
ERROR  Failed to start recording [Error: Missing audio recording permissions.]

权限申请弹窗根本没弹出来,后来修改startRecording的权限申请逻辑,加了.then和.catch后直接进入catch分支,说明权限被自动拒绝了。

我已经尝试了以下解决步骤:

  • 在app.json里配置了expo-av插件,并且添加了microphonePermission权限声明
  • 确认app.json里的麦克风权限提示语是"Allow Anonimia to access your microphone."
  • 移除了expo-image-picker插件配置中值为false的microphonePermission项
  • 重建了开发客户端,并且确保用了最新版的expo-cli和expo sdk

但问题仍未解决,无法启动音频录制。以下是相关的函数代码和app.json配置,恳请提供解决思路:

startRecording函数

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

app.json配置

{
  "expo": {
    "userInterfaceStyle": "automatic",
    "name": "Anonimia",
    "slug": "anonymous-chat",
    "description": "Anonymous chat app",
    "version": "1.0.0",
    "orientation": "portrait",
    "icon": "./assets/icon.png",
    "userInterfaceStyle": "light",
    "splash": {
      "image": "./assets/splash.png",
      "resizeMode": "contain",
      "backgroundColor": "#ffffff"
    },
    "assetBundlePatterns": ["**/*"],
    "ios": {
      "supportsTablet": true,
      "bundleIdentifier": "app.anonimia.messenger"
    },
    "plugins": [
      "@react-native-firebase/app",
      [
        "expo-image-picker",
        {
          "photosPermission": "Allow Anonimia to open photos",
          "cameraPermission": "Allow Anonimia to open the camera"
        }
      ],
      [
        "expo-av",
        {
          "microphonePermission": "Allow Anonimia to access your microphone."
        }
      ]
    ],
    "android": {
      "backgroundColor": "#222831",
      "package": "app.anonimia.messenger",
      "adaptiveIcon": {
        "foregroundImage": "./assets/adaptive-icon.png",
        "backgroundColor": "#ffffff"
      },
      "googleServicesFile": "./google-services.json"
    },
    "web": {
      "favicon": "./assets/favicon.png"
    },
    "extra": {
      "eas": {
        "projectId": "682e0444-81fd-45b2-8bec-aecdd8b4e48d"
      }
    }
  }
}

内容的提问来源于stack exchange,提问作者Web Crop

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.21 20:34:55