Android WebView 中的视频播放有声,但没有硬件图像加速=true



我正在尝试从Android的WebView中的HTML5文件播放视频。我尝试了这里提供的几种解决方案,例如将视频编码为H.264,但是,到目前为止,我只听到没有图像的视频声音。

代码:

    webView.setWebChromeClient(new WebChromeClient());
    settings.setJavaScriptEnabled(true);
    settings.setPluginState(WebSettings.PluginState.ON);
    settings.setLoadWithOverviewMode(true);
    settings.setUseWideViewPort(true);
    String data = "index.html";
    webView.loadUrl(data);
    webView.setBackgroundColor(Color.TRANSPARENT);
    webView.setLayerType(WebView.LAYER_TYPE_SOFTWARE, null);
    webView.clearCache(true);

清单:

 <application
    android:hardwareAccelerated="true"

任何帮助都被重新计算,谢谢。

实例化WebView,以便能够在大多数现代Android设备上播放视频/音频,我使用以下Java代码。这允许形成良好的HTML并适当编码的视频内容,可以在清单中使用hardwareAccelerated时可靠地播放。

package com.offbeatmammal.android.webview;
import android.app.Activity;
import android.os.Bundle;
import android.webkit.WebChromeClient;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.widget.RelativeLayout;
public class WebViewActivity extends Activity {
private WebView webView;
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.webview);
    webView = (WebView) findViewById(R.id.webView1);
    webView.setWebChromeClient(new WebChromeClient()); 
    webView.getSettings().setPluginState(WebSettings.PluginState.ON_DEMAND);
    webView.getSettings().setJavaScriptEnabled(true);
    // load the customURL with the URL of the page you want to display
    String pageURL = "http://url/page.html";
    webView.loadUrl(pageURL);
    //String customHtml = "<html><head><title>Sample</title></head><body><p>Sample</p></body></html>";
    //webView.loadData(customHtml, "text/html", "UTF-8");
    }
}

最新更新