Android HTML5 Web 视图中的视频
Android HTML5 video in WebView
我正在尝试在我的 WebView 应用程序中播放 HTML5 视频。它在我测试过的每个设备上都按预期工作 运行 Android 5.x,但 不 在任何设备上工作 运行 4.x,这意味着它根本不起作用。
我已经开启了硬件加速,并且设置了WebChromeClientas the docs say to do,但是视频还是播放不了。
In order to support inline HTML5 video in your application, you need
to have hardware acceleration turned on, and set a WebChromeClient.
AndroidManifest.xml
<application>
android:hardwareAccelerated="true"
...
</application>
MyFragment.java
webView = new WebView(getActivity(), null, this);
webView.setWebChromeClient(new WebChromeClient());
开发者参考资料中没有记录我需要做的其他事情吗?
问题是 WebKit 无法很好地处理视频的重定向。网页中有来自我公司专有 API 的视频。单击视频时,调用转到我们的 API,然后重定向到 Amazon S3 以获取实际的视频文件。然后,WebKit 会尝试 "chunk" 视频(而不是像您期望的那样预加载整个视频)。但是S3已经做到了,导致播放完全卡顿
Android 5.x 工作正常,因为 WebView 基于从 4.4 开始的 Chromium,它可以适当地处理重定向。
我正在尝试在我的 WebView 应用程序中播放 HTML5 视频。它在我测试过的每个设备上都按预期工作 运行 Android 5.x,但 不 在任何设备上工作 运行 4.x,这意味着它根本不起作用。
我已经开启了硬件加速,并且设置了WebChromeClientas the docs say to do,但是视频还是播放不了。
In order to support inline HTML5 video in your application, you need to have hardware acceleration turned on, and set a WebChromeClient.
AndroidManifest.xml
<application>
android:hardwareAccelerated="true"
...
</application>
MyFragment.java
webView = new WebView(getActivity(), null, this);
webView.setWebChromeClient(new WebChromeClient());
开发者参考资料中没有记录我需要做的其他事情吗?
问题是 WebKit 无法很好地处理视频的重定向。网页中有来自我公司专有 API 的视频。单击视频时,调用转到我们的 API,然后重定向到 Amazon S3 以获取实际的视频文件。然后,WebKit 会尝试 "chunk" 视频(而不是像您期望的那样预加载整个视频)。但是S3已经做到了,导致播放完全卡顿
Android 5.x 工作正常,因为 WebView 基于从 4.4 开始的 Chromium,它可以适当地处理重定向。