2013-02-19 1 views
1

ОК, так что я немного поработал над этим, и у меня есть видео на YouTube, которое было встроено в iframe с моим Nexus 7, но затем я протестировал его со старым Samsung Intercept, работающим под управлением 2.2, и я получаю миниатюру видео, но когда я нажимаю игру, он просто переходит в черный кадр и останавливается. Вот код, который я в настоящее время с помощью:Android: Webview встроил YouTube Video Works на Nexus 7 (4.2.2), а не Samsung Intercept (2.2)

int width = 0; 
    int height = 0; 
    Point size = new Point(); 
    WindowManager w = getWindowManager(); 

     if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB_MR2) 
     { 
      w.getDefaultDisplay().getSize(size); 
      width = size.x; 
      height = size.y; 
     } 
     else 
     { 
      Display d = w.getDefaultDisplay(); 
      width = d.getWidth(); 
      height = d.getHeight(); 
     } 

    WebView webView = (WebView) findViewById(R.id.welcomeVideo); 
    String play= "<html><body><div align=\"center\"> <iframe class=\"youtube-player\" type=\"text/html\" width=\"" + width/2 + "\" height=\"" + height/4 + "\" src=\"http://www.youtube.com/embed/9DNAyD4ll6E?html5=1\" frameborder=\"0\"></div></body></html>"; 
    webView.setWebChromeClient(new WebChromeClient() { 
    }); 
    webView.getSettings().setJavaScriptEnabled(true); 
    if (Build.VERSION.SDK_INT < 8) 
    { 
     webView.getSettings().setPluginsEnabled(true); 
    } 
    else 
    { 
     webView.getSettings().setPluginState(WebSettings.PluginState.ON); 
    } 
    webView.setHorizontalScrollBarEnabled(false); 
    webView.loadData(play, "text/html", "utf-8"); 
    webView.setBackgroundColor(0x00000000); 

Как вы можете видеть, я попробовал несколько вещей, таких как включение плагинов, что делает браузер выглядеть как Chrome и добавления HTML5 = 1 до конца видео-ссылки YouTube. Я не уверен, что это только из-за версии телефона или чего-то еще, но мой клиент также протестировал его и сказал, что он не работает (хотя еще не ответил мне на , как он не работает, так что может быть совершенно другой проблемой). Есть ли лучший способ сделать это для большей совместимости? Если нет, я могу просто использовать намерение запустить приложение YouTube, но мой клиент довольно определенно хочет, чтобы он был встроен на страницу с широким диапазоном поддерживаемых устройств.

Спасибо!

+0

Я считаю, что причиной этого несоответствия является поддержка HTML5 в браузере во время Android 2.2 и Android 4.1. –

ответ

Смежные вопросы