Utilizzo una visualizzazione Web per la visualizzazione di video Youtube incorporato e funziona su Galaxcy S2 (OS 2.3.5) e non su Nexus S (OS 2.3.4), tutto ciò che ottengo è una schermata bianca senza alcun display video.Incorpora video di YouTube all'interno di un'app per Android
Ecco il frammento di codice che sto utilizzando e le dichiarazioni nel file manifesto:
private WebView wv;
private void setWebView()
{
wv = (WebView) findViewById(R.id.webView);
wv.setWebChromeClient(new WebChromeClient());
wv.getSettings().setPluginState(WebSettings.PluginState.ON);
wv.setWebViewClient(new WebViewClient());
wv.getSettings();
wv.setBackgroundColor(0x00000000);
wv.setKeepScreenOn(true);
wv.setHorizontalScrollBarEnabled(false);
wv.setVerticalScrollBarEnabled(false);
wv.getSettings().setBuiltInZoomControls(true);
final String mimeType = "text/html";
final String encoding = "UTF-8";
String html = getHTML();
wv.loadDataWithBaseURL("", html, mimeType, encoding, "");
}
public String getHTML()
{
String html = "<html>"
+ "<head>"
+ "</head>"
+ "<body style=\"border: 0; padding: 0\">"
+ "<iframe "
+ "type=\"text/html\" "
+ "class=\"youtube-player\" "
+ "width= 100%\""
+ "\" "
+ "height= 95%\""
+ "\" "
+ "src=\"http://www.youtube.com/v/"
+ selected_video
+ "?controls=0&showinfo=0&showsearch=0&modestbranding=0" +
"&autoplay=1&fs=1&vq=hd720\" " + "frameborder=\"0\"></iframe>"
+ "</body>"
+ "</html>";
return html;
}
Nota: il parametro "selected_video" è l'hash del video (ID video).
Le dichiarazioni nel file manifesto:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android=http://schemas.android.com/apk/res/android
.
.
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<application
.
.
android:hardwareAccelerated="true" >
.
.
per favore fatemelo sapere in caso di riconoscimento di qualcosa che dovrei cambiare nel mio codice, o aiutare con un codice completo che può supportare tutti i dispositivi Android e OS per la visualizzazione incorporata (In-App) Video Youtube con alta qualità.
UPDATE: Prestare attenzione, la soluzione che sto cercando dovrebbe visualizzare video ad alta risoluzione. Ho capito che funziona sui diversi dispositivi e sistemi operativi usando la classe VideoView ma la qualità del video non è abbastanza buona. Quindi qualsiasi soluzione che includa VideoView o WebView o in qualsiasi altro modo sarà accettata solo se renderà possibile visualizzare video YouTube di alta qualità. Grazie a tutti i soccorritori!
Non sono sicuro, ma potrebbe essere prob Flash, Flash è installato in Nexus S ??? http://stackoverflow.com/questions/5791035/what-does-install-flash-plugin-in-webview-mean – idan
Potrei usare altre app che fanno lo stesso sul mio Nexus S. Non voglio che il flash sia un must per usare l'app ... – Idan
Voglio dire, penso che non funzioni perché Youtube richiede Flash, controlla se i dispositivi possono navigare nel sito di YouTube e guardare film? e fammi sapere il risultato (non provi l'app YouTube solo sul sito di youtube) maby ather l'app, youtube player android? https://developers.google.com/youtube/android/player/ – idan