Android WebView - 在尝试播放YouTube视频时,屏幕为黑色但播放音频

时间:2013-07-25 21:28:21

标签: android android-webview

我正在尝试通过WebView播放YouTube频道。感觉就像我差不多了,但我有两个问题。因为在尝试加载YouTube频道网址时有一些重定向,所以shouldOverrideUrlLoading方法似乎破坏了一些东西,我只是得到一个灰色屏幕。

另一个问题是,如果我注释掉该行并且频道加载,当我播放视频时,视频似乎加载,音频播放,但youtube的屏幕保持黑色。

这是我的代码

public class YoutubeActivity extends BaseActivity
{
    WebView webview = null;

@Override
public void onCreate(Bundle savedInstanceState) 
{
    super.onCreate(savedInstanceState);   

    webview = new WebView(this);
    webview.getSettings().setAppCacheEnabled(false);
    webview.getSettings().setJavaScriptEnabled(true);
    webview.setInitialScale(1);
    webview.getSettings().setPluginState(PluginState.ON);

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

    WebSettings webSettings = webview.getSettings();


    webSettings.setEnableSmoothTransition(true);
    webSettings.setLoadsImagesAutomatically(true);
    webSettings.setLoadWithOverviewMode(true);
    webSettings.setBuiltInZoomControls(true);        
    webSettings.setAllowContentAccess(true);
    webSettings.setSupportZoom(true);
    webSettings.setUseWideViewPort(true);



    webSettings.setJavaScriptEnabled(true);
    webSettings.setDomStorageEnabled(true);
    webSettings.setAppCacheEnabled(true);
    webSettings.setAppCachePath(getApplicationContext().getFilesDir().getAbsolutePath() + "/cache");
    webSettings.setDatabaseEnabled(true);
    webSettings.setDatabasePath(getApplicationContext().getFilesDir().getAbsolutePath() + "/databases");


    webview.loadUrl("http://www.youtube.com/g33ktalktv");     

有人知道如何解决这个问题吗? 谢谢!

0 个答案:

没有答案