2013-02-19 203 views
0

我想構建一個應用程序,可以在android機頂盒的webview中訪問youtube.com/tv。我可以通過加載html5webview來實現它,但它需要永遠。我注意到,這是android瀏覽器做它的方式。我最近一直在使用Opera Mobile,並且注意到它運行得非常完美,在歌劇中也表明我的pugins沒有啓用。在webview中播放視頻

問題1:Opera如何在youtube.com/tv上播放移動渲染視頻,它帶有自己的閃存嗎?

問題2實現此目的的最佳方式是什麼?我已經將我的代碼恢復爲基本的webView以重新開始。

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

public class TvbrowserActivity extends Activity 
{ 
final Activity activity = this; 

@Override 
public void onCreate(Bundle savedInstanceState) 
{ 
    super.onCreate(savedInstanceState); 
    this.getWindow().requestFeature(Window.FEATURE_PROGRESS); 
    setContentView(R.layout.main); 
    WebView webView = (WebView) findViewById(R.id.webview); 
    String ua = " Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_3) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.151 Safari/535.19"; 
    webView.getSettings().setJavaScriptEnabled(true); 
    webView.getSettings().setPluginState(WebSettings.PluginState.ON); 
    webView.getSettings().setUserAgentString(ua); 


    webView.setWebChromeClient(new WebChromeClient() { 
     public void onProgressChanged(WebView view, int progress) 
     { 
      activity.setTitle("Loading..."); 
      activity.setProgress(progress * 100); 

      if(progress == 100) 
       activity.setTitle(R.string.app_name); 
     } 
    }); 

    webView.setWebViewClient(new WebViewClient() { 
     @Override 
     public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) 
     { 
      // Handle the error 
     } 

     @Override 
     public boolean shouldOverrideUrlLoading(WebView view, String url) 
     { 
      view.loadUrl(url); 
      return true; 
     } 
    }); 

    webView.loadUrl("http://youtube.com/tv"); 
} 
} 

我也有硬件加速在活動設置在Android清單

+0

有你想使用一個'WebView'特殊原因,而不只是一個'VideoView'? – Phil 2013-02-19 04:29:41

+0

你應該使用官方的youtube API,而不是https://developers.google.com/youtube/android/player/ – schwiz 2013-02-19 04:33:46

回答

0

檢查代碼是否有幫助與否

myWebView = (WebView) findViewById(R.id.webView); 
    WebSettings webSettings = myWebView.getSettings(); 
    webSettings.setJavaScriptEnabled(true); 
    webSettings.setPluginsEnabled(true); 
    myWebView.loadUrl("http://www.youtube.com/v/nVLcujAj67g?version=3"); 
+0

試過播放這個視頻,它播放良好,我想保留電視界面,我應該重寫URL以使用該播放器電視的網址是 – catalano 2013-02-19 16:10:40

+0

只是嘗試代碼 – 2013-02-20 05:00:49

+0

嘗試代碼,它顯示自動播放和全屏正在打破播放器 – catalano 2013-02-21 03:53:34