如何使用 flutter_webview_plugin 播放视频
Posted
技术标签:
【中文标题】如何使用 flutter_webview_plugin 播放视频【英文标题】:How to play video using flutter_webview_plugin 【发布时间】:2019-07-29 12:06:16 【问题描述】:我正在尝试在颤振应用中播放存储在谷歌驱动器中的视频。我嵌入了视频,我得到了网址。当我尝试播放视频时,它在 android 中不起作用,而在 ios 中它运行良好。是插件在android中不起作用还是我使用插件的方式不对?
flutter_webview_plugin: ^0.3.0+2
Widget build(BuildContext context)
return WebviewScaffold(
appBar: AppBar(
title: Text("play video"),
),
url: "https://drive.google.com/file/d/1O8WF2MsdyoKpQZE2973IFPRpqwKUjm_q/preview",
initialChild: Center(
child: CircularProgressIndicator(),
),
);
【问题讨论】:
【参考方案1】:我之前遇到过这个问题,视频不能在安卓的任何模拟器上播放(只有音频),但在真实设备上可以正常工作。
在 Flutter 上原生播放视频的另一种方法是使用 video_player 包,它可以在不使用 webview 的情况下直接播放视频。使用它,您可以以更简单的方式播放网络视频。
_controller = VideoPlayerController.network(
'http://yourvideo.com/videolink')
..initialize().then((_)
setState(() );
);
完整示例和指南here。
【讨论】:
我尝试将此插件与谷歌驱动器 URL 一起使用,但不起作用。我得到了白页[我在真实设备中测试它]。我不知道是什么问题 尝试同样的事情,但这次从 firebase(云存储)加载视频。我认为这将是一个更好的方法。您的 Google Drive 链接可能不会直接返回视频文件。而是返回一个包含该文件的页面。 基本上,想法是将其托管在将返回直接文件的位置。当您将其存储在 Google Drive 中时 - 这不会发生。如果您有任何托管,那也可以!首先用这个link 测试它,看看它是否有效。如果是这样,那么您只需要像这样托管您的视频。react-native-webview
有类似或内部相关的问题尚未修复:github.com/react-native-community/react-native-webview/issues/…github.com/react-native-community/react-native-webview/issues/…
原生Android Java WebView中似乎存在类似问题:***.com/questions/19031908/…***.com/questions/19246615/…【参考方案2】:
这里是解决方案*** link你可以使用flutter_inappwebview
【讨论】:
【参考方案3】:你应该像https://i.stack.imgur.com/5J6JN.png这样激活Android Manifest中的加速选项
【讨论】:
以上是关于如何使用 flutter_webview_plugin 播放视频的主要内容,如果未能解决你的问题,请参考以下文章
如何在自动布局中使用约束标识符以及如何使用标识符更改约束? [迅速]
如何使用 AngularJS 的 ng-model 创建一个数组以及如何使用 jquery 提交?