Почему Android WebView не загружает видео youtube HTML5 iframe?

Я попробовал следующее:

    WebView wv = (WebView) findViewById(R.id.webView1);
    String playVideo= "<html><body><iframe width='200' height='143' src='http://www.youtube.com/embed/JW5meKfy3fY' frameborder='0' allowfullscreen></iframe></body></html>";
    wv.getSettings().setPluginsEnabled(true);
    wv.getSettings().setAllowFileAccess(true);
    wv.getSettings().setPluginState(PluginState.ON);
    wv.getSettings().setBuiltInZoomControls(true);
    wv.getSettings().setJavaScriptEnabled(true);
    wv.loadData(playVideo, "text/html", "utf-8");

Я вижу только миниатюру, а затем, когда я нажимаю на нее, кадр становится черным и не загружает видео. Я нацелен на API 15, и у меня есть разрешение на интернет. Как я могу запустить html5 youtube iframe-видео в веб-просмотре Android?

Ответы

Ответ 1

Вы должны поместить это в свой манифест

<application android:hardwareAccelerated="true" ...>

Ответ 2

В Android 3.0 ++ вы должны активировать ускорение аппаратного обеспечения, если ваш android: targetSdkVersion меньше 11. И вы должны добавить эту строку:

wv.setWebChromeClient(new WebChromeClient());

Ответ 3

Вы работаете на 2.3 (GingerBread) или 4.0 (Ice Cream)?

Если вы используете Ice Cream, вам нужно включить аппаратное ускорение.

Если вы используете GingerBread, обратитесь к: WebView и HTML5 <video>

Надеюсь, что это поможет.

Ответ 4

iframe работает для меня. Но, я узнал, что при использовании Android Emulator в Windows для видеороликов, интернет на эмуляторе перестанет работать через некоторое время, и мне нужно перезапустить эмулятор, чтобы получить доступ в Интернет. Это никогда не происходило на Android-телефоне.

Итак, просто проверьте его в своем браузере, чтобы убедиться, что есть интернет-соединение.