Azure媒体播放器Xamarin WebView丑陋播放图标背景图像

时间:2018-10-04 07:43:31

标签: android html azure xamarin.forms azure-media-services

我已经尝试了几乎所有的东西来尝试解决这个问题,但是碰壁了。

大多数示例都要求您在注入的HTML中使用css,如下所示:

video::-webkit-media-controls-overlay-play-button {
  display: none;
}

video::-webkit-media-controls-overlay-play-button

video::-webkit-media-controls

video::--webkit-media-controls-play-button

我在这里看到了大多数问题,但是我的情况有所不同,因为在创建新的WebChromeClient时,我注入HTML Azure媒体播放器的xaml中的WebView的默认海报返回了null。将默认海报返回为位图:

enter image description here

我的代码段如下:(xaml和注入的HTML)

<WebView HorizontalOptions="FillAndExpand" WidthRequest="600" HeightRequest="300">
    <WebView.Source>
        <HtmlWebViewSource Html="{Binding LatestVideoUrl}"/>
    </WebView.Source>
</WebView>

HTML字符串:

<html>
    <head>
        <link href=""https://amp.azure.net/libs/amp/2.2.0/skins/amp-default/azuremediaplayer.min.css"" rel=""stylesheet"">
        <script src=""https://amp.azure.net/libs/amp/2.2.0/azuremediaplayer.min.js""></script>
    </head>
    <body>
        <video id=""azuremediaplayer"" style=""background-color: black !important; font-size: 12px !important;"" class=""azuremediaplayer amp-default-skin amp-big-play-centered"" type=""video/webm"" tabindex=""0""></video>
        <script>
            var myOptions = {
                ""nativeControlsForTouch"": false,
                ""logo"": { ""enabled"": false },
                controls: true,
                autoplay: true,
                width: ""100%"",
                height: ""100%"",
                poster: ""{Binding ThumbnailUrl}"",
                hotKeys: { ""enableFullscreen"": true }
            };
            myPlayer = amp(""azuremediaplayer"", myOptions);
            myPlayer.src([
                {
                    src: ""{Binding LatestVideoUrl}"",
                    type: ""application/vnd.ms-sstr+xml""
                }
            ]);
        </script>
    </body>
</html>

我已尝试禁用视频标签的视频标签,以使默认视频播放器控件无效,以便Azure Media Play可以具有优先权,但是没有运气。

我也出于兴趣而尝试了Content-Security-Policy元标记,但这并不是正确的方法,因为它非常hacky: 它确实可以工作,但是当我将其构建并部署到我的设备时,这使视频变得非常缓慢,并且Azure Media Play控件没有显示。

<meta http-equiv="Content-Security-Policy"
  content="default-src *;
  style-src 'self' http://* 'unsafe-inline' ;
  media-src * ;
  img-src * 'self' http://* 'unsafe-inline';
  script-src 'self' http://* https://* 'unsafe-inline' 'unsafe-eval'"/>

任何帮助将不胜感激。

0 个答案:

没有答案