嵌入在 Android Webview 中的 Youtube 视频不能以 SINGLE_COLUMN 布局播放

Posted

技术标签:

【中文标题】嵌入在 Android Webview 中的 Youtube 视频不能以 SINGLE_COLUMN 布局播放【英文标题】:Youtube videos embedded in Android Webview don't play in SINGLE_COLUMN layout 【发布时间】:2013-07-31 18:22:45 【问题描述】:

我正在尝试将一些 html 数据加载到 android Webview 中。数据采用从 Web 服务加载的字符串形式,HTML 可以包含嵌入的 youtube 视频,我想嵌入这些视频并使其可播放。

LayoutAlgorithm.NORMAL 一切正常。但是当我使用SINGLE_COLUMN 布局算法时,Youtube 视频显示为无法再播放的黑框。我需要单列格式,因为 HTML 中的图像在NORMAL 模式下溢出了 webview 宽度。这是我配置 webview 的代码。

// Set maximum image width to fit screen
contentWebView.getSettings().setLayoutAlgorithm(LayoutAlgorithm.SINGLE_COLUMN);

// Make non focusable to prevent links from being selectable.
contentWebView.setFocusableInTouchMode(false);
contentWebView.setFocusable(false);

// Enable HTML5 video
contentWebView.getSettings().setjavascriptEnabled(true);
contentWebView.getSettings().setPluginState(PluginState.ON);
contentWebView.setWebChromeClient(new WebChromeClient() 
);

是否有可能在应用NORMAL 布局算法时以某种方式使视频可使用SINGLE_COLUMN 布局播放或手动模拟单列布局?还有其他想法吗?

【问题讨论】:

【参考方案1】:

LayoutAlgorithm.SINGLE_COLUMN - 已弃用 google developers. 如果可以,您必须更改 html 字符串中元素的宽度/高度。

在我的情况下,我替换了所有的 , - 它在没有任何 setLayoutAlgorithm() 设置的情况下工作得很好。 或者试试这个solution

【讨论】:

以上是关于嵌入在 Android Webview 中的 Youtube 视频不能以 SINGLE_COLUMN 布局播放的主要内容,如果未能解决你的问题,请参考以下文章

将 instagram 嵌入 Android WebView

在 Android 的 Webview 中嵌入 Spotify 无法正常工作

Android程序中嵌入WebView,单击其中的链接时无反应,请问是啥原因引起的?如何解决?

IBM Worklight/Cordova 未在 Android 上 Worklight 的嵌入式 WebView 中加载

在android webview中制作嵌入视频全屏

Android WebView 不显示图片 Instagram 嵌入