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

如何在React Native Agora UIKit中默认禁用视频或发起音频通话?

问题1:在React Native Agora UIKit中默认禁用视频功能

要默认禁用本地视频,直接在UIKit的初始化配置里设置相关参数即可:

  • 初始化AgoraUIKit时,在config对象中添加videoEnabled: false,这会让本地视频轨道默认处于关闭状态
  • 如果需要完全隐藏视频相关的UI控件(比如视频开关按钮),可以额外设置showVideoButton: false

代码示例:

import { AgoraUIKit } from 'react-native-agora-uikit';

const YourComponent = () => {
  const agoraConfig = {
    appId: '你的Agora App ID',
    channel: '测试频道',
    videoEnabled: false, // 默认禁用本地视频
    showVideoButton: false, // 隐藏视频开关按钮(可选)
  };

  return <AgoraUIKit config={agoraConfig} />;
};

如果需要确保加入频道后视频不会意外开启,还可以在onJoinChannelSuccess回调中显式调用禁用视频的方法:

const handleJoinSuccess = async (agoraEngine) => {
  await agoraEngine.disableVideo();
};

// 在AgoraUIKit中传入回调
<AgoraUIKit config={agoraConfig} onJoinChannelSuccess={handleJoinSuccess} />

问题2:使用React Native Agora UIKit发起音频通话

发起纯音频通话的核心是配置UIKit为音频优先模式,同时屏蔽所有视频相关功能:

  1. 配置基础参数时,禁用视频并隐藏视频相关UI控件
  2. 可选配置音频场景和音质,优化通话体验
  3. 通过Agora引擎的joinChannel方法发起通话

代码示例:

import { AgoraUIKit, useAgora } from 'react-native-agora-uikit';

const AudioCallScreen = () => {
  const { agoraEngine } = useAgora();

  const audioCallConfig = {
    appId: '你的Agora App ID',
    channel: '音频通话频道',
    mode: 'rtc', // 实时通话模式
    videoEnabled: false, // 禁用本地视频
    showVideoButton: false, // 隐藏视频开关按钮
    showCameraButton: false, // 隐藏摄像头切换按钮
    audioConfig: {
      audioScenario: 'communication', // 适配语音通话场景
      audioProfile: 'speech_standard', // 标准语音音质
    },
  };

  // 发起音频通话
  const startAudioCall = async () => {
    try {
      await agoraEngine.joinChannel(audioCallConfig.token, audioCallConfig.channel, null, audioCallConfig.uid);
    } catch (err) {
      console.error('发起通话失败:', err);
    }
  };

  return (
    <>
      <button onPress={startAudioCall}>发起音频通话</button>
      <AgoraUIKit config={audioCallConfig} />
    </>
  );
};

注意事项:

  • 确保已在项目中配置好音频权限:安卓需添加RECORD_AUDIO权限,iOS需在Info.plist中添加NSMicrophoneUsageDescription说明
  • 如果使用Token鉴权,记得在audioCallConfig中传入有效的token参数

内容的提问来源于stack exchange,提问作者Muhammad Muaz

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.23 12:54:17