react-native-webrtc2
Version:
WebRTC for React Native
30 lines (25 loc) • 1.03 kB
JavaScript
//--新增文件
import { NativeModules } from 'react-native';
import RTCRtpTransceiver from './RTCRtpTransceiver';
import MediaStreamTrack from './MediaStreamTrack';
const {WebRTCModule} = NativeModules;
export default class RTCRtpSender {
_transceiver: RTCRtpTransceiver;
_mergeState: Function;
constructor(_transceiver: RTCRtpTransceiver, mergeState: Function) {
this._transceiver = _transceiver;
this._mergeState = mergeState;
}
replaceTrack = (track: MediaStreamTrack | null) => {
return new Promise((resolve, reject) => {
WebRTCModule.peerConnectionTransceiverReplaceTrack(this._transceiver._peerConnectionId, this._transceiver.id, track ? track.id : null, (successful, data) => {
if (successful) {
this._transceiver._mergeState(data.state);
resolve();
} else {
reject(new Error(data));
}
});
});
}
}