在webview中播放视频

时间:2013-02-19 03:36:34

标签: android flash webview html5-video

我想构建一个应用程序,在Android机顶盒的webview中访问youtube.com/tv。我可以通过加载html5webview来实现它,但这需要永远。我注意到这是android浏览器的方式。我最近一直在使用opera mobile并注意到它运行得很完美,它还在歌剧中声明我的pugins没有启用。

问题1:opera mobile如何在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 manifest中的活动中也有硬件加速设置

1 个答案:

答案 0 :(得分: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");