2013-06-24 51 views
3

我已經設法讓我的視頻自動播放內我的webview.apk,在我的手機(4.1.2)測試和它的作品,而我的android迷你電腦(4.2)必須點擊開始播放...: (Android的webview視頻自動播放成功,但相同的apk在Android電視迷你電腦上失敗?

可能WebChromeClient可能是這個原因嗎?如果有共同的東西與鉻,從而未能自動播放爲好,而股票的Web瀏覽器很好地扮演着??

我用它來獲得自動播放工作的JavaScript如下:

<html> 
    <head> 

     <script> 

function callback() { 
    document.querySelector('video').play(); 
     } 

     window.addEventListener("load", callback, false); 


    </script> 

    </head> 



<body> 
    <div id="video_post1" style="margin: -454px 0px 0px -3px;position: absolute;"> 
<video controls autoplay with="600" height="400"> 

    <source src="http://www.edmondvarga.com/demo/videos/trx.mp4" type="video/mp4"> 


</video> 
    </div> 

    </body> 
    </html> 

也許我會用另一種語法來打嗎?(如:文檔就緒)

的Eclipse代碼,只是爲了演示:

package tscolari.mobile_sample; 

import android.app.Activity; 
import android.os.Bundle; 
import android.view.View; 
import android.webkit.WebSettings; 
import android.webkit.WebView; 
import android.webkit.WebViewClient; 
import android.webkit.WebChromeClient; 

import android.media.MediaPlayer; 


public class InfoSpotActivity extends Activity { 
    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 


     setContentView(R.layout.main); 

     WebView mainWebView = (WebView) findViewById(R.id.mainWebView); 

     WebSettings webSettings = mainWebView.getSettings(); 
     webSettings.setJavaScriptEnabled(true); 

     mainWebView.setWebChromeClient(new WebChromeClient()); 

     mainWebView.setWebViewClient(new MyCustomWebViewClient()); 
     mainWebView.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY); 




     mainWebView.loadUrl("http://server.info-spot.net"); 
    } 


    private class MyCustomWebViewClient extends WebViewClient { 
     @Override 
     public boolean shouldOverrideUrlLoading(WebView view, String url) { 
      view.loadUrl(url); 
      return true; 
     } 
    } 
} 

回答

8

我意識到這是一個老問題,但是這個答案可能會幫助別人的道路:

的Android(和iOS)禁用autoplay在Chrome或本地瀏覽器中的HTML5 video節點中添加標記。播放視頻需要用戶交互(onClick或onMouseOver或其他)。但是,如果有必要,您可以在自己的WebView中自動播放視頻。

自動播放視頻在Android網頁視圖,後是Android 4.4:

webview.setWebChromeClient(new WebChromeClient()); 
    webview.getSettings().setMediaPlaybackRequiresUserGesture(false); 
相關問題