Android Azure媒体播放器Xamarin WebView丑陋播放图标背景图像
我尝试了几乎所有的方法来解决这个问题,但是遇到了麻烦 大多数示例都要求在注入的HTML中使用css,如下所示:Android Azure媒体播放器Xamarin WebView丑陋播放图标背景图像,android,html,azure,xamarin.forms,azure-media-services,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-butt
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
我在这里看到了大部分问题,但我的问题有点不同,因为在我注入HTML Azure media player的xaml中,WebView的默认海报在我创建新WebChromeClient并以位图形式返回默认海报时返回为空:
我的代码片段如下:(xaml和注入的HTML)
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>
变量myOptions={
“nativeControlsForTouch”:false,
“logo”“:{”“enabled”“:false},
控制:对,
自动播放:对,
宽度:“100%”,
高度:“100%”,
海报:“{Binding ThumbnailUrl}”,
热键:{“enableFullscreen”“:true}
};
myPlayer=amp(“azuremediaplayer”,myOptions);
myPlayer.src([
{
src:“{Binding LatestVideoUrl}”,
类型:“应用程序/vnd.ms sstr+xml”
}
]);
对于视频标签,我已尝试禁用这些控件以否定默认的视频播放器控件,以便Azure Media Play可以优先播放,但运气不佳
我也尝试过内容安全策略meta-tag-out-of-interest-sack,但这不是正确的方法,因为它非常粗糙:
它确实可以工作,但当我构建它并将其部署到我的设备时,它使视频非常滞后,而且Azure媒体播放控件无法显示
<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'"/>
任何帮助都将不胜感激。你能克服这一困难吗?@KodeKreachor,不幸的是不能。我甚至在Galaxy s10上看到,一些应用程序在任何情况下都会显示该图标。因此,这似乎是一个默认的东西,现在正在成为标准。我们已经了解到,如果你不想在那里的图标,你将不得不在Java或Xcode中构建它,然后从头开始构建视频播放器,你将有更多的控制权。
<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'"/>