使用来自 firebase 存储的 react-native-video 播放视频

Posted

技术标签:

【中文标题】使用来自 firebase 存储的 react-native-video 播放视频【英文标题】:Play video with react-native-video from firebase storage 【发布时间】:2020-06-10 10:49:09 【问题描述】:

我使用“react-native-video”库,它使用外部链接,例如:https://www.w3schools.com/tags/movie.mp4

当我添加一个 Firebase 存储的 URL 时,它没有显示出来。有没有人可以帮我解决这个问题?火力基地视频的链接是: https://firebasestorage.googleapis.com/v0/b/ukkepuk-7d9dc.appspot.com/o/movie.mp4?alt=media&token=13ab1963-be1e-4974-9c5f-111d2d8256c5

这是有效的代码:

   <Video 
source= uri: 'https://www.w3schools.com/tags/movie.mp4' 
style=styles.backgroundVideo
rate=1 volume=1 muted=true
repeat=true
resizeMode='cover' key="video1" 

/>

不是这个:

   <Video 
source= uri: 'https://firebasestorage.googleapis.com/v0/b/ukkepuk-7d9dc.appspot.com/o/movie.mp4?alt=media&token=13ab1963-be1e-4974-9c5f-111d2d8256c5' 
style=styles.backgroundVideo
rate=1 volume=1 muted=true
repeat=true
resizeMode='cover' key="video1" 

/>

这是同一个视频。在这两种情况下,只有 1 个位于 Firebase 存储以外的远程位置。我没有收到错误,只是应用停止了。

【问题讨论】:

【参考方案1】:

您现在通过将 URI 直接传递到 react-native-video 的操作被解释为尝试从给定 URI 流式传输视频。 Firebase 存储不支持视频流,所以这是行不通的。从 URI 流式传输要求另一端的服务器能够流式传输给定资源。

如果你想从 Storage 播放视频,你必须先下载完整(获取视频),保存到本地文件,然后将 react-native-video 指向本地文件进行播放。

【讨论】:

您知道如何从 Firestore 获取视频并将其存储在本地存储中吗?我真的卡在atm 嗨@JoppeMeijers。您是否能够获取视频并将其存储在本地?【参考方案2】:

如果您只关心播放视频。我找到了一种使用 react-native-webview 播放来自 Firebase 存储的视频的方法。

【讨论】:

请在答案中添加链接的相关部分

以上是关于使用来自 firebase 存储的 react-native-video 播放视频的主要内容,如果未能解决你的问题,请参考以下文章

在 Angular 11 网站上使用 Firestore 和 Firebase 存储进行图像上传功能导致来自 Firebase 的不安全规则通知

如何在反应js中显示来自firebase存储的所有图像

Vue 显示来自 firebase 云存储 blob 的图像

成功上传文件后,来自 Firebase 存储的 downloadURL 为零

如何在来自 Firebase 存储的片段 ImageView 中显示图像

来自firebase存储URL的toDataURL显示空白图像[重复]