在 Android 上禁用 html5 视频标签中默认的丑陋海报图像

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

在android上,使用html5视频标签加载视频,在视频加载之前,占位符图像是一个灰色的图像,上面有一个大的“播放”图标,假设我没有视频的海报图像,所以我不能'不替换它,有什么办法可以禁用那个丑陋的吗?

android html html5-video
3个回答
9
投票

我知道这个问题很老了,但我一直在寻找这个问题的答案。原来

WebChromeClient
有一个
getDefaultVideoPoster
方法。所以你可以这样做:

webView.setWebChromeClient(new WebChromeClient() {
    @Override public Bitmap getDefaultVideoPoster() {
        final Bitmap bitmap = Bitmap.createBitmap(1, 1, Bitmap.Config.RGB_565);
        Canvas canvas = new Canvas(bitmap);
        // Use whatever color you want here. You could probably use a transparent color
        canvas.drawARGB(255, 0, 0, 0);
        return bitmap;
    }
});

我不一定会在每次调用此方法时都创建新的位图,但我相信您已经明白了。


1
投票

您可以向

poster
标签添加
<video>
属性,以跳过丑陋的像素化默认
android-webview-video-poster
图像。透明的 PNG 或 GIF 或空的 SVG 作品。


0
投票

在 Web 应用程序代码(不是 Android navitve 代码)中“禁用”视频海报的一种解决方法是设置 1x1 透明图像。最小的 base64 编码的 1x1 透明图像似乎是 GIF,所以这有效:

<video poster="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==" />
© www.soinside.com 2019 - 2024. All rights reserved.