反应原生加载Delight VR视频播放器

时间:2019-03-25 13:57:21

标签: react-native virtual-reality 360-virtual-reality delightvr

我正在将Cordova应用程序迁移到React-Native。

我们在应用程序上提供了一个VR播放器,可与VR耳机(Google Cardboard,Samsung Gear等)配合使用,但也可以将其作为普通的360 2D视频播放。 Delight VR通过内置的控件提供了我们所需的一切,并且在Cordova上运行得很好。

在迁移到React-Native时,我们找不到适合它的本机播放器,最接近的是ViroMedia,但是它不提供任何内置控件,不支持其他投影比360(我们的视频可以采用不同的投影方式,例如:180 LR,360 UD等)。

Delight VR的支持团队答复我们,确认我们可以使用React Native Webview加载其播放器。 这不是理想的解决方案,但它是我们可以找到的最佳解决方案。

然后,我正在尝试使用react-native-webview来实现它,但是现在我没有任何成功。

The video source is stored in an S3 bucket and it is public accessible

我尝试加载本地网页

    <WebView style={styles.container}
      originWhitelist={['*']}
      source={{ html: mypage }}
    />

没有工作,收到了一些有关原产地的消息,并且播放器永远保持加载状态。 经过一番测试,我发现delight vr需要运行Web服务器,原始源不能是文件,不确定这是否是失败的原因。 无论如何,我已经设置了一个Web服务器,一个公共URL,并在浏览器上对其进行了测试,并且运行良好。 所以我更改了代码以指向该URL

    <WebView style={styles.container}
      source={{ uri: 'https://myurl.com/' }}
    />

现在,当我尝试播放视频时,收到消息

  

内容问题

     

找不到可播放的视频源

当我在Safari中转到url上下文调试问题时,我看到对视频的请求没有返回错误,但是,如果我转到“预览”标签,则会看到消息An error occurred trying to load the resource

我也尝试了不同的选择 即:mixedContentMode='always' allowFileAccess={true} allowUniversalAccessFromFileURLs={true}

任何可能导致此问题的想法? 如果您知道有其他替代方法可以在具有类似Delight VR功能的React-Native上加载VR(和常规)视频,也可以选择切换到该视频。

0 个答案:

没有答案