30 votes

La vidéo Flash ne s'affiche pas dans WebView pour Android 3.0.1

J'ai une simple WebView pour afficher un site web avec Flash (Adobe Flash, site web) -- les tests sur une tablette Xoom sous Android 3.0.1 avec nouvellement libérés Flash 10.2

Après avoir fait référence à toute question sur stackoverflow, j'ai mis le suivant:

mWebView.getSettings().setJavaScriptEnabled(true);
mWebView.getSettings().setPluginState(WebSettings.PluginState.ON);
mWebView.loadUrl("http://www.adobe.com/software/flash/about/");

Les deux Plugins et JavaScript sont activés pour la WebView à l'aide de getSettings(), mais le Flash ne se présente pas. Lorsque j'ai mis setPluginState à ON_DEMAND, il montre le bon espace réservé pour Flash -- encore une fois, quand je tape sur le point où le Flash, le Flash disparaît (comme si la vidéo Flash ne s'est pas rendu) et uniquement de l'audio (en fonction du contenu Flash) peut être entendu.

J'ai aussi remarqué que je peux appuyez sur le manque de Flash, faire un long-hold appuyez sur, puis appuyez sur le haut à gauche où le nouveau Flash bouton 'plein écran' DEVRAIT être, et il va alors s'afficher correctement dans le mode plein écran. Mais quand je revenir à la WebView, il ne parvient pas à se montrer et ne joue que le audio.

Toutes les pensées sont appréciées! Merci de ne pas juste me référer à quelque chose de posté mois sans quelques détails sur pourquoi je fais référence à un post mois avant la Android de la version 3.0! Merci encore pour toute aide. Grande communauté!

34voto

Xezuka Points 791

Donc après une semaine et demi+ de la recherche haute et basse, à essayer différentes techniques, et à peu près à proximité prêt à jeter mon tablette de la fenêtre, j'ai enfin compris -- et je ne suis pas trop content de la façon dont il était FACILE à fixer; puis de nouveau, je suis!

Rappelez-vous, c'était orientée vers le PROBLÈME de Flash vidéo ne charge pas dans la WebView sur ma Xoom, Android 3.0.1 tablette avec PluginState SUR. Lire ma question et la réponse. Profitez-en!

Étape 1: il suffit de l'ajouter à la balise sous vos Applications Manifeste XML

android:hardwareAccelerated="true"

Étape 2: Chargez votre application et profiter de votre Flash activé WebView!

Bonne chance!

3voto

Bharat Dodeja Points 141

J'ai eu le même problème, je ne peux ici audio et vous pouvez voir un écran noir en WebView. J'utilise Android 3.2 dans la Xoom de Motorola.

Après avoir cherché beaucoup pour cette solution, enfin, j'ai été en mesure de lire la vidéo correctement dans mon application.

Solution: J'ai créé un autre projet android avec le single Activity contenant WebView dans, et s'est mis au-dessus de trucs(c'est à dire android:hardwareAccelerated="true" etc.). Étonnamment, j'ai été en mesure de jouer la vidéo parfaitement dans ce projet!

La chose étrange est que j'ai été incapable de jouer avec mon projet de l'application avec le même code source et de tous. En tout cas il a fait un travail pour moi, je ne sais pas comment!

3voto

narek.gevorgyan Points 2011
 webView.setWebChromeClient(new WebChromeClient());
 

Je ne sais pas pourquoi mais cela m'a aidé.

1voto

Mithun Points 9971

À partir de l'API doc ici

Dans votre fichier manifeste Android, ajouter l'attribut suivant à l' <application> balise pour activer l'accélération matérielle pour l'ensemble de votre application:

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

Pour activer ou désactiver l'accélération matérielle au niveau des activités, vous pouvez utiliser l' android:hardwareAccelerated de l'attribut de l' <activity> élément.

<application android:hardwareAccelerated="true">
    <activity ... />
    <activity android:hardwareAccelerated="false" />
</application>

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X