7
votes

YouTubePlayer avec APPCOMPAT V7 Bibliothèque

J'ai développé une application qui utilise youtube android API pour lire une certaine vidéo à l'intérieur de l'application. À ce moment-là, j'ai utilisé comme API cible 19, et aussi cible API 19. Maintenant, je veux que je modifie la conception de l'application commutant sur conception du matériau à l'aide de la cible API 22 et utilisez également appelcompat- V7: 22+ Bibliothèque . Mais le YouTubeBaseActivity ne peut pas être ouvert et l'application se bloque. Ci-dessous, je publierai ce que j'ai fait jusqu'à présent.

eventDetail.java xxx

fichier manifeste xxx

lametu Fichier: xxx

fichier theme.xml xxx

donc au début, il ne s'ouvre pas car la méthode GetActionBar () Retour NULL, puis je l'ai modifié en GetsUppPortageBar () Mais je ne l'ai pas reconnu. Ensuite, à la fin, j'ai changé cette ligne dans ce qui suit: xxx

et cela me donne l'erreur suivante: xxx

J'utilise Android Studio. Toute idée sera appréciée.


1 commentaires

Je pense que vous devez consulter plus d'informations ici: développeurs.google.com/yououtube / Android / Player / ...


3 Réponses :


0
votes

Selon la trace de la pile, l'activité doit étendre YouTubeBaseActivité lors de l'utilisation de l'API YouTube

Si vous avez besoin d'une barre d'action, je pense que la meilleure route consiste à changer le style pour avoir aucune barre d'action et simplement à utiliser un Barre d'outils à votre vue.


0 commentaires

13
votes

Le problème est que vous utilisez le YouTubeplayView , qui nécessite votre activité pour étendre YouTubeBaseActivity . Ensuite, vous avez changé votre activité, de sorte qu'il prolonge maintenant appelcompatiactivité . Ceci pause YouTubeplayView .

La solution est assez simple: Utilisez le YouTubePlayerfragment classe . Cela ne pose aucune exigence sur l'activité , vous laissant de nombreuses options pour votre thème.


5 commentaires

Merci @Dextor, cela a résolu mon problème, je viens de finir de la mettre en œuvre et cela fonctionne comme avant.


Mais il y a un problème cependant, lorsque j'essaie d'exécuter l'application sur un périphérique Lollipop Android, cela me donne l'erreur suivante: l'intention de service doit être explicite: intention {act = com.google.android.youtube.api.service.start }


C'est parce que vous utilisez une ancienne version du SDK. La mise à jour à 1.2.1 corrige ce problème.


@XHulio Pouvez-vous répondre à votre question et nous dire comment implémenter YouTubePlayerFragment, c'est aussi une bonne pratique pour répondre à votre propre question.


Les gens disent youtubeplayerfragment est Buggy - Stackoverflow.com/a/51682673/7767664



0
votes

Coller ce code dans l'application des grades xxx


0 commentaires