Flutter 视频播放器在发布版(网络)中无法工作

问题描述 投票:0回答:1

当我在本地主机上使用视频播放器时,它工作得很好,但当我发布它时,它不起作用。我应该怎么办?可能是什么问题? (它也适用于 Android 和 iOS)小部件 url 是来自 firebase 存储的下载 url。

import 'package:flutter/material.dart';
import 'package:video_player/video_player.dart';


class Video_player_Widget extends StatefulWidget {
  const Video_player_Widget({Key? key, required this.url}) : super(key: key);

  final String url;

  @override
  State<Video_player_Widget> createState() => _video_playerWidget();
}

@override
class _video_playerWidget extends State<Video_player_Widget> {

  late VideoPlayerController controller;

  @override
  void initState() {
    super.initState();

    controller =
    VideoPlayerController.network(widget.url)
      ..initialize().then((_) {
        setState(() {
          controller.setVolume(0);
          controller.play();
          controller.setLooping(false);
        });
      });

  }

  @override
  void dispose() {
    controller.dispose();
    super.dispose();
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      extendBodyBehindAppBar: true,
      extendBody: true,
      backgroundColor: Colors.black,
      appBar: AppBar(
        iconTheme: IconThemeData(
          color: Colors.white,
        ),
        title: Text(""),
        shadowColor: Colors.transparent,
        backgroundColor: Colors.transparent,
        centerTitle: true,
      ),
      body: Center(child: ListView(
          padding: const EdgeInsets.all(0),
          shrinkWrap: true,
          children: <Widget>[
            Stack(
                alignment: Alignment.topLeft,
                children: <Widget>[
                  Center(
                    child: AspectRatio(
                      aspectRatio: controller.value.aspectRatio,
                      child: Stack(
                        alignment: Alignment.bottomCenter,
                        children: <Widget>[
                          VideoPlayer(controller),
                          _ControlsOverlay(controller: controller),
                          VideoProgressIndicator(controller, allowScrubbing: true, colors: VideoProgressColors(playedColor: Colors.lightBlue[900]!),),
                        ],
                      ),
                    ),
                  ),
                ])
          ]
      ),
      )
    );
  }
}

我尝试将音量设置为 0,但这对我不起作用。

flutter dart web video-streaming release
1个回答
0
投票

这是您对代码所做的唯一更改吗?我问这个问题是因为我现在面临同样的问题,并且从“晚”更改为“?”在这里不适合我。您还可以提供您部署应用程序时使用的命令吗?我在这里使用 html 渲染器。

谢谢你。

© www.soinside.com 2019 - 2024. All rights reserved.