我试图使用video_player
插件在flatter应用程序中播放vimeo视频,但没有成功,它抛出了大量错误。请帮助我如何在Flatter应用程序中实现这一点?使用webview或任何插件等?也许一段代码片段对我会有很大帮助!
这是我的代码片段
import 'package:video_player/video_player.dart';
import 'package:flutter/material.dart';
void main() => runApp(VideoApp());
class VideoApp extends StatefulWidget {
@override
_VideoAppState createState() => _VideoAppState();
}
class _VideoAppState extends State<VideoApp> {
VideoPlayerController _controller;
@override
void initState() {
super.initState();
_controller = VideoPlayerController.network(
'https://vimeo.com/{some-video-id}')
..initialize().then((_) {
// Ensure the first frame is shown after the video is initialized, even before the play button has been pressed.
setState(() {});
});
}
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Video Demo',
home: Scaffold(
body: Center(
child: _controller.value.initialized
? AspectRatio(
aspectRatio: _controller.value.aspectRatio,
child: VideoPlayer(_controller),
)
: Container(),
),
floatingActionButton: FloatingActionButton(
onPressed: () {
setState(() {
_controller.value.isPlaying
? _controller.pause()
: _controller.play();
});
},
child: Icon(
_controller.value.isPlaying ? Icons.pause : Icons.play_arrow,
),
),
),
);
}
@override
void dispose() {
super.dispose();
_controller.dispose();
}
}
调试控制台中的错误-
E/AccessibilityBridge(28662):VirtualView节点不能是根节点。E/ExoPlayerImplInternal(28662):源错误。E/ExoPlayerImplInternal(28662):com.google.Androidexoplayer2。上游HttpDataSource$InvalidResponseCodeException:响应代码:404 E/ExoPlayerImplInternal(28662):位于com.google.Androidexoplayer2。上游DefaultHttpDataSource。打开(DefaultHttpDataSource.java:300)E/ExoPlayerImplInternal(28662):在com上。谷歌。Androidexoplayer2。上游StatsDataSource。open(StatsDataSource.java:83)E/ExoPlayerImplInternal(28662):在com上。谷歌。Androidexoplayer2。来源ExtractormDiaperiod$ExtractingLoadable。加载(extractoremipperiod.java:885)E/ExoPlayerImplInternal(28662):在com上。谷歌。Androidexoplayer2。上游Loader$LoadTask。运行(Loader.java:381)E/ExoPlayerImplInternal(28662):在java上运行。util。同时发生的线程池执行器。runWorker(ThreadPoolExecutor.java:1167)E/ExoPlayerImplInternal(28662):在java。util。同时发生的ThreadPoolExecutor$Worker。运行(ThreadPoolExecutor.java:641)E/ExoPlayerImplInternal(28662):在java上运行。朗。丝线。运行(Thread.java:919)
在pubspec上安装vimeoplayer:^0.1.8
return Scaffold(
appBar: AppBar(title: Text('Video EasyRider')),
body: ListView(children: <Widget>[
VimeoPlayer(id: '123456789', autoPlay: false),
]));
}
你不能使用Vimeo URLhttps://vimeo.com/{一些视频id}VideoPlayerController
需要可流化的视频URL。
解决方案1
Vimeo所需的保费账户
>
解决方案2
视频链接每15分钟就会过期一次
解决方案3
webivew
给这个urlhttps://vimeo.com/{thin-Video-id}...启用javascript,视频将在webview中播放。我在一个回收视图中有几张卡片。每张卡都有一个自定义视频视图。单击视频视图,视频应开始。然而,在我的例子中,它只显示蓝色边框,视频没有运行。代码如下所示, 自定义卡视图。xml: 自定义视频视图: 主要活动: activity\u main。xml: 我希望每张卡最初只显示一个缩略图。单击视频后,相关卡应启动视频(不是全部)。视频启动时,VideoView应占据整个屏幕。我怎样才能做到这一点? 谢谢
问题内容: 我在android中实现了视频播放,这对android来说是全新的,这是我到目前为止收集的部分代码。 根据逻辑,它应该播放视频。不知道我在哪里做错了。 问题答案:
我正在尝试创建弹出与Vimeo视频在里面。我的页面上有divideid=“showvideo”。单击要打开弹出窗口的div(带有id=“Opened-Video”的新div)。id=“open-video”的Div有如下所示的Viemo视频的iframe 使用src URL中的?autoplay=1参数将此iframe设置为自动播放。 这是我的JavaScript 这就管用了。 您将注意到html
每当我加载html文件时,它都会给我一个错误 每当我按下播放按钮时,就会出现以下错误 我能够加载任何远程视频并运行,但问题是当我从资产文件夹代码加载本地视频以加载文件并设置web视图时 干杯,Saurav
我正在使用视频标签播放我的项目中的视频,我想它只播放mp4。它在chrome中播放有一点滞后,但在ie或Firefox中不播放。我想知道是否有一个简单的修复或更好的嵌入vlc播放器。 并在后端为源设置src。