您好我正在尝试使用React Native的视频并遇到了Expo Video Component(请参阅https://docs.expo.io/versions/v14.0.0/sdk/video.html),当我使用create-react-native-app设置我的应用时,我认为这将是一个不错的选择选项。但是当我向我的视频组件添加" useNativeControl时,它会导致我的应用程序崩溃。
以下是一些带有useNativeControl的代码://只显示一秒钟的控件,然后说"世博会停止"在退出应用程序之前
import React, { Component } from 'react';
import { StyleSheet, Text, View, Image, Button } from 'react-native';
import { Video } from 'expo';
export default class App extends Component {
render() {
return (
<View style={styles.app}>
<Video source={{ uri: 'http://d23dyxeqlo5psv.cloudfront.net/big_buck_bunny.mp4' }} rate={1.0} volume={1.0} useNativeControls muted={false} resizeMode="cover" shouldPlay isLooping style={{ width: 300, height: 300 }} />
</View>
);
}
}
以下是没有它的代码:
import React, { Component } from 'react';
import { StyleSheet, Text, View, Image, Button } from 'react-native';
import { Video } from 'expo';
export default class App extends Component {
render() {
return (
<View style={styles.app}>
<Header />
<Topics />
<Video source={{ uri: 'http://d23dyxeqlo5psv.cloudfront.net/big_buck_bunny.mp4' }} rate={1.0} volume={1.0} muted={false} resizeMode="cover" shouldPlay isLooping style={{ width: 300, height: 300 }} />
</View>
);
}
因为你可以看到唯一的区别是&#34; useNativeControls&#34;,没有usenativecontrols应用程序工作正常,我只是没有对视频进行任何控制。
主要问题:如何使用原生控件而不是让我的应用程序崩溃?
旁注/问题: 或者,还有另一个视频播放器,它很容易用于本地反应的初学者吗?我已经花了几个小时在这上面但尚未提出解决方案。我最初尝试使用react-native-video(https://www.npmjs.com/package/react-native-video),但这对我不起作用(从文档判断它需要你对java代码进行更改,这不是我想做的事情)。因此,如果有一个替代expo的视频组件,它具有控制和工作,没有任何我正在寻找的java / swift知识。
编辑:
package.json依赖项:
"dependencies": {
"expo": "^20.0.0",
"link": "^0.1.5",
"react": "16.0.0-alpha.12",
"react-native": "^0.46.4",
"react-native-video": "^2.0.0",
}
答案 0 :(得分:0)
您是否已弹出/分离您的应用?该库需要将一些本机代码添加到项目中。您不能将它与即插即用方法一起使用。阅读更多关于在此处分离的信息:https://docs.expo.io/versions/latest/guides/detach.html
一旦你开始为自己构建应用程序,请注意它是一个狂野的世界。我现在就在那里而且非常奇妙。我怀疑你能找到任何不需要添加本机代码的视频播放器。