如何使用react-native-video播放Google Drive中的视频
问题原因
你现在传入的uri是Google Drive的文件夹浏览网页地址,返回的是HTML页面内容,不是可直接解码播放的视频资源,react-native-video只能识别标准视频直链或者流媒体地址,所以无法正常加载。
解决步骤
- 先找到你要播放的单个视频文件,不要用文件夹的分享链接,把该视频的分享权限设置为「知道链接的所有人可查看」
- 从视频的分享链接中提取文件ID,常规分享链接格式为
https://drive.google.com/file/d/【这里是文件ID】/view,把中间的文件ID复制下来 - 把source里的uri替换为拼接后的直链:
https://drive.google.com/uc?export=download&id=替换为你复制的文件ID - 如果你的视频文件大小超过100MB,谷歌会弹出病毒扫描提示,此时需要把uri调整为
https://drive.google.com/uc?export=download&confirm=t&id=替换为你复制的文件ID
修改后的代码示例
<Video controls={true} source={{ uri:'https://drive.google.com/uc?export=download&id=你自己的视频文件ID' }} resizeMode={'contain'} style={styles.backgroundVideo} />
注意事项
- 必须保证视频的分享权限是公开可查看,否则直链也会返回403无法访问
- 谷歌网盘的直链有访问频率限制,仅适合测试使用,不要用在正式的生产环境
- 不要传入文件夹链接、view结尾的网页分享链接,只有上述拼接的直链格式可以被识别
内容的提问来源于stack exchange,提问作者Ho Narola
相关产品推荐
相关产品推荐

