Android WebView ne pas jouer des vidéos YouTube
J'ai quelques WebView code avec lequel je suis en train de lire des vidéos YouTube sur une chaîne YouTube. Mais tout cela est en train de faire est de montrer la spinner icône sur une vidéo et ne jamais lancer la vidéo. Quelqu'un sait comment résoudre ça?
public class YoutubeActivity extends Activity
{
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.setJavaScriptEnabled(true);
webSettings.setBuiltInZoomControls(true);
//webSettings.getMediaPlaybackRequiresUserGesture();
webSettings.setAllowContentAccess(true);
webSettings.setEnableSmoothTransition(true);
webSettings.setLoadsImagesAutomatically(true);
webSettings.setLoadWithOverviewMode(true);
webSettings.setSupportZoom(true);
webSettings.setUseWideViewPort(true);
setContentView(webview);
webview.loadUrl("http://www.youtube.com/g33ktalktv");
}
public void onBackPressed ( )
{
//Class.forName("com.***.HTML5WebView").getMethod("onPause", (Class[]) null).
//invoke(html5WebView, (Object[]) null);
webview.clearView();
}
@Override
public void onStop()
{
super.onStop();
//your code
webview.clearView();
}
}
Et c'est le manifeste de réglage:
<activity
android:name="YoutubeActivity"
android:label="Some string"
android:hardwareAccelerated="true"/>
Thannk à l'avance!
Vous devez vous connecter pour publier un commentaire.
À l'aide de WebView pour lire des vidéos YouTube nécessiterait des tests et le débogage sur les différentes versions OS Android en raison de la différence dans les fonctionnalités et les bugs entre Android 2.x et 4.x.
Moins de bug, enclin à l'approche qui vous donne plus de contrôle consiste à utiliser YouTube Android Player API pour intégrer une vidéo YouTube dans votre propre application, ils ont exemple d'application de sorte qu'il ne devrait pas être trop difficile si vous suivez leurs pas.
Avez-vous essayé d'utiliser votre propre
WebChromeClient
? Cette question semble pertinente.WebView et HTML5 <video>
Vous aurez besoin pour créer un de ces et à mettre en œuvre vous-même, semblable à ce que vous faites pour la
WebViewClient
.Assurez-vous d'ajouter
webview.getSettings().setPluginsEnabled(true);
à votre webview paramètres.Et, surtout, pour tout page web à charger dans un
WebView
, assurez-vous d'avoir laINTERNET
autorisation dans votre Manifeste:Utilisation
Parfaitement de travail.