Android 颤振视频播放器无法在一个页面中加载多个视频
我想创建一个页面在颤振与多个循环视频。在我的手机(三星Galaxy Note 10 Plus)上,所有视频都可以完美加载,但当我在其他手机上运行相同的应用程序时(我在三星Galaxy S6和Galaxy A71上试过),有2个视频正在加载,而其他视频则被替换为 这是我的Android 颤振视频播放器无法在一个页面中加载多个视频,android,flutter,dart,android-video-player,video-player,Android,Flutter,Dart,Android Video Player,Video Player,我想创建一个页面在颤振与多个循环视频。在我的手机(三星Galaxy Note 10 Plus)上,所有视频都可以完美加载,但当我在其他手机上运行相同的应用程序时(我在三星Galaxy S6和Galaxy A71上试过),有2个视频正在加载,而其他视频则被替换为 这是我的颤振医生-v跑步: [√] Flutter (Channel stable, 1.22.4, on Microsoft Windows [Version 10.0.19042.630], locale en-US) • F
颤振医生-v
跑步:
[√] Flutter (Channel stable, 1.22.4, on Microsoft Windows [Version 10.0.19042.630], locale en-US)
• Flutter version 1.22.4 at C:\src\flutter
• Framework revision 1aafb3a8b9 (2 weeks ago), 2020-11-13 09:59:28 -0800
• Engine revision 2c956a31c0
• Dart version 2.10.4
[√] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
• Android SDK at C:\Users\myName\AppData\Local\Android\sdk
• Platform android-30, build-tools 30.0.2
• Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
• Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)
• All Android licenses accepted.
[!] Android Studio (version 4.1.0)
• Android Studio at C:\Program Files\Android\Android Studio
X Flutter plugin not installed; this adds Flutter specific functionality.
X Dart plugin not installed; this adds Dart specific functionality.
• Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)
[√] VS Code (version 1.51.1)
• VS Code at C:\Users\myName\AppData\Local\Programs\Microsoft VS Code
• Flutter extension version 3.16.0
[√] Connected device (1 available)
• SM A715F (mobile) • R58N70XS23W • android-arm64 • Android 10 (API 29)
(我用Visual Studio代码编写代码)
我没有在应用程序的调试版本中得到任何错误,但是视频仍然没有加载
这是视频播放器控制器的配置:
class clipVideo扩展StatefulWidget{
最终字符串路径;
clipVideo(this.path);
@凌驾
_clipVideo createState();
}
类_clipVideo扩展状态{
字符串路径;
视频播放控制器\u控制器;
未来(Future)初始设定未来玩家;;
@凌驾
void initState(){
_path=widget.path;
_控制器=VideoPlayerController.asset(路径);
//_控制器=VideoPlayerController.network(
// 'https://flutter.github.io/assets-for-api-docs/assets/videos/butterfly.mp4');
_initializeVideoPlayerFuture=_controller.initialize();
_controller.play();
_控制器。设置音量(0.0);
_控制器。设置循环(真);
super.initState();
}
@凌驾
无效处置(){
_controller.dispose();
super.dispose();
}
@凌驾
小部件构建(构建上下文){
返回容器(
孩子:未来建设者(
未来:_initializevideoplayer未来,
生成器:(上下文,快照){
if(snapshot.connectionState==connectionState.done){
返回中心(
孩子:AspectRatio(
aspectRatio:_controller.value.aspectRatio,
子项:视频播放器(_控制器),
),
);
}否则{
返回中心(
子对象:CircularProgressIndicator(),
);
}
},
),
);
}
}
这是我想要呈现多个循环视频的页面脚手架的内容:
主体:安全区域(
子:容器(
子:ListView(
儿童:[
尺寸箱(高度:30.0),
纵队(
儿童:[
形象(
image:AssetImage('assets/images/logoecomed.png'),
宽度:200.0),
大小盒子(
身高:50.0,
),
划船(
儿童:[
尺寸箱(宽度:20.0),
灵活的(
子:文本(
“文本”,
textAlign:textAlign.start,
样式:TextStyle(
颜色:颜色(0xff40514e),
字体大小:25.0,
fontFamily:“努鲁姆”,
fontWeight:fontWeight.w800),
)),
尺寸框(宽度:15.0)
],
),
大小盒子(
身高:15.0,
),
划船(
儿童:[
尺寸箱(宽度:20.0),
灵活的(
子:文本(
“文本”,
textAlign:textAlign.start,
样式:TextStyle(
颜色:颜色(0xff40514e),
字体大小:18.0,
fontFamily:“Helvetica”,
fontWeight:fontWeight.w200,
),
)),
尺寸框(宽度:30.0)
],
),
大小盒子(
身高:20,
),
容器(
身高:550,
子项:clipVideo('assets/videos/record1.mp4'),
),
大小盒子(
身高:60,
),
划船(
儿童:[
尺寸箱(宽度:20.0),
灵活的(
子:文本(
“文本”,
textAlign:textAlign.start,
样式:TextStyle(
颜色:颜色(0xff40514e),
字体大小:25.0,
fontFamily:“努鲁姆”,
fontWeight:fontWeight.w800),
))
],
),
大小盒子(
身高:20.0,
),
划船(
儿童:[
尺寸箱(宽度:20.0),
灵活的(
子:文本(
“文本”,
textAlign:textAlign.start,
样式:TextStyle(
颜色:颜色(0xff40514e),
字体大小:18.0,
fontFamily:“Helvetica”,
fontWeight:fontWeight.w200,
),
)),
尺寸框(宽度:40.0)
],
),
大小盒子(
身高:20,
),
容器(
身高:550,
子项:clipVideo('assets/videos/record3.mp4'),
),
大小盒子(
身高:20,
),
划船(
儿童:[
尺寸箱(宽度:20.0),
灵活的(
子:文本(
“文本”,
textAlign:textAlign.start,
样式:TextStyle(
颜色:颜色(0xff40514e),
字体大小:18.0,
flutter:
assets:
- assets/
- assets/images/logoecomed.png
- assets/videos/record1.mp4
- assets/videos/record2.mp4
- assets/videos/record3.mp4
- assets/videos/record4.mp4
- assets/videos/record5.mp4
- assets/videos/record6.mp4
D/MediaCodecInfo(18771): AssumedSupport [sizeAndRate.rotated, 1080x2280x60.19792938232422] [OMX.Exynos.avc.dec, video/avc] [zeroflte, SM-G920F, samsung, 24]
D/MediaCodecInfo(18771): NoSupport [sizeAndRate.support, 1080x2280x60.19792938232422] [OMX.SEC.avc.sw.dec, video/avc] [zeroflte, SM-G920F, samsung, 24]
D/MediaCodecInfo(18771): NoSupport [sizeAndRate.support, 1080x2280x60.19792938232422] [OMX.SEC.avc.sw.dec, video/avc] [zeroflte, SM-G920F, samsung, 24]
D/MediaCodecInfo(18771): NoSupport [sizeAndRate.support, 1080x2280x60.19792938232422] [OMX.google.h264.decoder, video/avc] [zeroflte, SM-G920F, samsung, 24]
D/MediaCodecInfo(18771): AssumedSupport [sizeAndRate.rotated, 1080x2280x60.19792938232422] [OMX.Exynos.avc.dec, video/avc] [zeroflte, SM-G920F, samsung, 24]
D/MediaCodecInfo(18771): AssumedSupport [sizeAndRate.rotated, 1080x2280x60.19792938232422] [OMX.Exynos.avc.dec, video/avc] [zeroflte, SM-G920F, samsung, 24]
D/MediaCodecInfo(18771): NoSupport [sizeAndRate.support, 1080x2280x60.19792938232422] [OMX.SEC.avc.sw.dec, video/avc] [zeroflte, SM-G920F, samsung, 24]
D/MediaCodecInfo(18771): NoSupport [sizeAndRate.support, 1080x2280x60.19792938232422] [OMX.SEC.avc.sw.dec, video/avc] [zeroflte, SM-G920F, samsung, 24]
D/MediaCodecInfo(18771): NoSupport [sizeAndRate.support, 1080x2280x60.19792938232422] [OMX.google.h264.decoder, video/avc] [zeroflte, SM-G920F, samsung, 24]
D/MediaCodecInfo(18771): AssumedSupport [sizeAndRate.rotated, 1080x2280x60.19792938232422] [OMX.Exynos.avc.dec, video/avc] [zeroflte, SM-G920F, samsung, 24]
flutter:
assets:
- assets/images/
- assets/videos/
flutter upgrade
flutter config --android-studio-dir="C:\Program Files\Android\Android Studio"
flutter doctor -v
flutter channel stable
flutter upgrade
[!] Android Studio (version 4.1.0)
• Android Studio at C:\Program Files\Android\Android Studio
X Flutter plugin not installed; this adds Flutter specific functionality.
X Dart plugin not installed; this adds Dart specific functionality.
• Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)