2013-02-19 169 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