javascript - opentok-react-native 订阅者使 android 应用程序崩溃
问题描述
我正在尝试为 react-native 实现 OpenTok Lib,但我遇到了一些我还无法解决的问题。第一个,我认为最重要的是,我无法以订阅者的身份连接到会话而不会使应用程序崩溃,这仅发生在 android 设备上,因此我看不到它是否正在工作两个之间的连接电话。
我究竟做错了什么?
预约
import React, { Component } from 'react';
import { OTSession } from 'opentok-react-native';
import { TokBox } from '../../../helpers/constants';
import PublisherStream from './PublisherStream';
import SubscriberStream from './SubscriberStream';
class Appointment extends Component {
static navigationOptions = {
header: null
};
render() {
const { navigation: { navigate, state: { params } } } = this.props;
return (
<OTSession style={{ flex: 1 }}
apiKey={TokBox.API_KEY}
sessionId={params.sessionId}
token={params.token}
eventHandlers={this.sessionEventHandlers}>
<PublisherStream style={{ borderColor: 'red', borderWidth: 3, height: '50%' }} />
<SubscriberStream style={{ borderColor: 'blue', borderWidth: 3, height: '50%' }} />
</OTSession>
);
}
}
export default Appointment;
发布者流
import React, { Component } from 'react';
import { OTPublisher } from 'opentok-react-native';
class PublisherStream extends Component {
publisherEventHandlers = {
streamCreated: (event) => {
console.log('Publisher stream created!', event);
},
streamDestroyed: (event) => {
console.log('Publisher stream destroyed!', event);
}
};
render() {
return (
<OTPublisher style={this.props.style} eventHandlers={this.publisherEventHandlers} />
);
}
}
export default PublisherStream;
订阅者流
import React, { Component } from 'react';
import { OTSubscriber } from 'opentok-react-native';
class SubscriberStream extends Component {
subscriberProperties = {
subscribeToAudio: true,
subscribeToVideo: true,
};
subscriberEventHandler = {
connected(event) {
console.log('connected', event);
},
disconnected(event) {
console.log('disconnected', event);
},
videoDataReceived(event) {
console.log('videoDataReceived', event);
},
videoEnabled(event) {
console.log('videoEnabled', event);
},
videoNetworkStats(event) {
console.log('videoNetworkStats', event);
}
};
render() {
return (
<OTSubscriber
properties={this.subscriberProperties}
eventHandlers={this.subscriberEventHandler}
style={this.props.style}
/>
);
}
}
export default SubscriberStream;
包.json
{
{...omitted}
"dependencies": {
"opentok-react-native": "^0.9.5",
"react": "^16.8.1",
"react-native": "0.58.4",
},
{...omitted}
}
解决方案
实际上,问题在于我试图从订阅者那里流式传输视频,而这不能以这种方式完成......
答案在这里:https ://github.com/opentok/opentok-react-native/issues/239
推荐阅读
- android - 在 Kotlin 中将一个片段转发到另一个片段
- python - 通过 GridSearchCV 使用多指标评估
- java - 如何减小从图库中选取的图像的大小(mb)
- python - 你如何从中心(垂直)分割屏幕来制作两人游戏?
- javascript - html5 视频上的 Firefox onlick 事件
- cassandra - 完全复制的 Cassandra 集群上的非主键查询的性能
- javascript - 命运之轮。如何仅向右旋转和
- php - 为什么我无法正确登录
- python - Python:TypeError:'int'对象不可下标蒙特卡洛
- python - 带和不带 setuptools 构建的模块导入