react-native-urtc
Version:
ucloud rtc native sdk for react-native
105 lines (90 loc) • 2.19 kB
Markdown
# react-native-urtc
## 安装使用
install with yarn:
```
yarn add react-native-urtc
```
Either way, then link with:
```
react-native link react-native-urtc
```
run in android
```
react-native run-android
```
upgrade
```
yarn upgrade
```
## React-Native 调用
```
import UCloudRtc from 'react-native-urtc';
import UCloudView from './component/videoView/UCloudView';
```
## API
#### 初始化 initWithAppid
```
appid: appid,
appKey: appKey,
sdkMode: 0正式模式 1测试模式
autoPub: true 开启自动发布 false 关闭
autoSub:true 开启自动订阅 false 关闭
UCloudRtc.initWithAppid(appid, appKey, sdkMode, autoPub,autoSub).then(res => {
console.log('收到回调', res);
}).catch(err => {
console.log('捕获异常', err);
});
```
#### 加入房间 joinRoomWithRoomid
```
UCloudRtc.joinRoomWithRoomid(roomId, userId, token).then(res => {
console.log('收到回调', res);
}).catch(err => {
console.log('捕获异常', err);
});
```
#### 离开房间
```
UCloudRtc.leaveRoom();
```
#### 订阅远程流
```
UCloudRtc.subscribeRemoteStream()
```
#### 取消订阅远程流
```
UCloudRtc.unSubscribeRemoteStream()
```
#### 发布本地流
```
flag: 是否开启摄像头 true-推送音视频流 false-仅推送音频
UCloudRtc.publishLocalStreamWithCameraEnable(flag)
```
#### 取消发布本地流
```
UCloudRtc.unPublishLocalStream()
```
#### 录制音视频
```
UCloudRtc.startRecordLocalStreamWithType()
```
#### 停止录制
```
UCloudRtc.stopRecordLocalStream()
```
### 事件监听
```
//事件列表 0.1.7
EVENT_JOIN_ROOM = "event_joinRoom";
EVENT_LEAVE_ROOM = "event_leaveRoom";
EVENT_PUBLISH = "event_publish";
EVENT_UN_PUBLISH = "event_unPublish";
EVENT_SUB = "event_subscribe";
EVENT_UN_SUB = "event_unSubscribe";
EVENT_REMOTE_PUBLISH = "event_remotePublish";
EVENT_REMOTE_UN_PUBLISH = "event_remoteUnPublish";
const UCloudRtcEventEmitter = new NativeEventEmitter(UCloudRtc);
UCloudRtcEventEmitter.addListener('event_joinRoom', args => {
console.log('事件event_joinRoom', args);
});
```