React Native 是一个使用React和应用平台的原生功能来构建 Android 和 iOS 应用的开源框架。通过 React Native,您可以使用 JavaScript 来访问移动平台的 API,以及使用 React 组件来描述 UI 的外观和行为:一系列可重用、可嵌套的代码。
TRTC React Native SDK 是基于腾讯云 iOS/Android 平台的 TRTC SDK 进行封装的,架构图整体跟Flutter类似。
ReactNative SDK 已经发布到 npm (https://www.npmjs.com/package/trtc-react-native),您可以通过配置 package.json 安装。
1. 在项目的 package.json 中写如下依赖:
"dependencies": { "trtc-react-native": "^2.0.0"},
2. 配置摄像头和麦克风的权限,即可开启音视频通话功能。
1.初始化
// 创建 TRTCCloud 单例const trtcCloud = TRTCCloud.sharedInstance();// 获取设备管理模块const txDeviceManager = trtcCloud.getDeviceManager();// 获取音效管理类const txAudioManager = trtcCloud.getAudioEffectManager();// 获取美颜管理类const txBeautyManager = trtcCloud.getBeautyManager();
2.进退房
const params = new TRTCParams({ sdkAppId: SDKAPPID,//应用id userId,//用户id userSig,//用户签名 roomId: 2366,//房间Id });//进房trtcCloud.enterRoom(params, TRTCCloudDef.TRTC_APP_SCENE_VIDEOCALL);//退房trtcCloud.exitRoom();
3.事件监听
//设置事件监听trtcCloud.registerListener(onRtcListener);
function onRtcListener((type: TRTCCloudListener, params: any) => { //进房回调事件 if (type === TRTCCloudListener.onEnterRoom) { if (params['result'] > 0) { showToast('进房成功'); } } // 远端用户进房 if (type === TRTCCloudListener.onRemoteUserEnterRoom) { //params['userId']参数为远端用户userId } //远端用户是否打开麦克风 if (type === TRTCCloudListener.onUserAudioAvailable) { //param['userId']表示远端用户id //param['visible'] true表示打开麦克风 }});//移除事件监听trtcCloud.unRegisterListener(onRtcListener);
4.显示本地视频
<TXVideoView.LocalView />
5.显示远端视频
<TXVideoView.RemoteView userId={remoteUserId} streamType={TRTCCloudDef.TRTC_VIDEO_STREAM_TYPE_BIG}/>
6.显示远端屏幕分享
<TXVideoView.RemoteView userId={remoteUserId} streamType={TRTCCloudDef.TRTC_VIDEO_STREAM_TYPE_SUB}/>
如果您是一个前端发烧友,那TRTC React Native SDK是您实现音视频通话的不二之选,快来集成我们的SDK吧。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。