Video_player 找不到 exoplayer,错误 Gradle
Video_player could not find exoplayer, error with Gradle
我是 Flutter 的新手,正在尝试对 Video_Player 包进行简单测试。但是,当我尝试 运行 在 Android 模拟器上设置此设置时,以及当我 运行 在 Android 设备上设置它时(在 IOS 上工作正常)失败并显示此错误消息:
失败:构建失败,出现异常。
* 什么地方出了错:
无法解析配置“:app:debugRuntimeClasspath”的所有文件。
Could not find com.google.android.exoplayer:exoplayer-core:2.8.0.
编辑:我注意到此错误发生在 Gradle 构建期间:
2 秒内构建失败
Gradle 任务 assembleDebug 失败,退出代码为 1
这是我从 Flutter Youtube 演示中获取的代码:
import 'package:flutter/material.dart';
import 'package:video_player/video_player.dart';
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Video Example',
home: VideoExample(),
);
}
}
class VideoExample extends StatefulWidget {
VideoState createState() => VideoState();
}
class VideoState extends State<VideoExample> {
VideoPlayerController playerController;
VoidCallback listener;
@override
void initState() {
super.initState();
listener = () {
setState(() {});
};
}
void createVideo() {
if (playerController == null) {
playerController =
VideoPlayerController.asset('assets/videos/PilatesTestOverview.mp4')
..addListener(listener)
..setVolume(1.0)
..initialize();
}
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('Video Example'),
),
body: Center(
child: AspectRatio(
aspectRatio: 16 / 9,
child: Container(
child: (playerController != null
? VideoPlayer(playerController)
: Container()),
),
),
),
floatingActionButton: FloatingActionButton(
onPressed: () {
createVideo();
playerController.play();
},
child: Icon(Icons.play_arrow),
),
);
}
}
还有我的 Pubsepc.Yaml 包依赖项:
video_player: ^0.7.2
如果我在这里遗漏了什么,请告诉我。非常感谢任何帮助,因为我无法在线找到任何修复程序。
干杯
由于@Günter 已经添加了依赖问题的详细信息,我可以建议的另一个 解决方法 我已经测试过修改对 pubspec 中工作版本的依赖(我已经测试过,似乎没问题):
dependencies:
flutter:
sdk: flutter
video_player: ^0.5.1
为了完整起见,我想附加 github 问题页面的解决方案(致谢:github 用户 pupali,https://github.com/flutter/flutter/issues/25145#issuecomment-445854570)
将 android 文件夹中的 build.gradle 更新为:
allprojects {
repositories {
google()
jcenter()
maven {
url 'https://google.bintray.com/exoplayer/'
}
}
}
我是 Flutter 的新手,正在尝试对 Video_Player 包进行简单测试。但是,当我尝试 运行 在 Android 模拟器上设置此设置时,以及当我 运行 在 Android 设备上设置它时(在 IOS 上工作正常)失败并显示此错误消息:
失败:构建失败,出现异常。 * 什么地方出了错: 无法解析配置“:app:debugRuntimeClasspath”的所有文件。
Could not find com.google.android.exoplayer:exoplayer-core:2.8.0.
编辑:我注意到此错误发生在 Gradle 构建期间: 2 秒内构建失败 Gradle 任务 assembleDebug 失败,退出代码为 1
这是我从 Flutter Youtube 演示中获取的代码:
import 'package:flutter/material.dart';
import 'package:video_player/video_player.dart';
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Video Example',
home: VideoExample(),
);
}
}
class VideoExample extends StatefulWidget {
VideoState createState() => VideoState();
}
class VideoState extends State<VideoExample> {
VideoPlayerController playerController;
VoidCallback listener;
@override
void initState() {
super.initState();
listener = () {
setState(() {});
};
}
void createVideo() {
if (playerController == null) {
playerController =
VideoPlayerController.asset('assets/videos/PilatesTestOverview.mp4')
..addListener(listener)
..setVolume(1.0)
..initialize();
}
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('Video Example'),
),
body: Center(
child: AspectRatio(
aspectRatio: 16 / 9,
child: Container(
child: (playerController != null
? VideoPlayer(playerController)
: Container()),
),
),
),
floatingActionButton: FloatingActionButton(
onPressed: () {
createVideo();
playerController.play();
},
child: Icon(Icons.play_arrow),
),
);
}
}
还有我的 Pubsepc.Yaml 包依赖项:
video_player: ^0.7.2
如果我在这里遗漏了什么,请告诉我。非常感谢任何帮助,因为我无法在线找到任何修复程序。 干杯
由于@Günter 已经添加了依赖问题的详细信息,我可以建议的另一个 解决方法 我已经测试过修改对 pubspec 中工作版本的依赖(我已经测试过,似乎没问题):
dependencies:
flutter:
sdk: flutter
video_player: ^0.5.1
为了完整起见,我想附加 github 问题页面的解决方案(致谢:github 用户 pupali,https://github.com/flutter/flutter/issues/25145#issuecomment-445854570)
将 android 文件夹中的 build.gradle 更新为:
allprojects {
repositories {
google()
jcenter()
maven {
url 'https://google.bintray.com/exoplayer/'
}
}
}