1. 程式人生 > >Android Webview中解決H5的音視訊不能自動播放、只有聲音沒有影象的問題

Android Webview中解決H5的音視訊不能自動播放、只有聲音沒有影象的問題

開發webview的時候,當載入有聲音的H5的時候,聲音不會自動播放,必須手動觸控一下螢幕,聲音才會播放出來,雖然在H5檔案中設定了autoplay屬性,也呼叫了play方法,依然不能自動播放,最後通過在webview中呼叫js方法來解決。

   程式碼如下:

view.loadUrl("javascript:(function() { " +
        "var videos = document.getElementsByTagName('video');" +
        " for(var i=0;i<videos.length;i++){videos[i].play();}})()"
);

注意這個方法需要在webview的onPageFinished回撥中執行呼叫。

使用Android自帶的Webview載入帶有視訊的網頁,出現視訊只有聲音沒有影象的問題,究其原因,需要對webview新增硬體加速,只要對webview新增即可,程式碼如下

mWebView.setLayerType(View.LAYER_TYPE_HARDWARE, null);

不對webview所在的activity新增也是可以的。

Android使用WebView瀏覽有聲音或者視訊的網頁,關閉WebView之後,聲音或者視訊不停止的解決辦法

解決辦法如下:

    @Override
    protected void onPause ()
    {
        m_WebView.reload ();

        super.onPause ();
    }
m_WebView為Activity中的WebView控制元件。