7
votes

Pause de la vidéo YouTube après 1-2 secondes

J'utilise une API de joueur YouTube pour la lecture de vidéos YouTube dans mon application. Vidéo démarrez la lecture et la pause après 1-2 secondes

J'ai créé un fragment vidéo et un groupe de visions. Ensuite, je crée une carte VidéoView de YouTobeView. P>

videofragment p> xxx pré>

fonction pour la création de toiTobe VideoView P>

private ViewGroup createYouTubePlayer(final VideoData data, final FrameLayout youTubePlayer)
{

    youTubePlayer.setOnClickListener(new OnClickListener()
    {

        @Override
        public void onClick(View v)
        {
            FragmentManager fm = mActivity.getSupportFragmentManager();

            if (v.getId() == mCurrentYouTubePlayer)
            {
                return;
            }

            VideoFragment fragment = (VideoFragment) fm.findFragmentById(mCurrentYouTubePlayer);
            if (fragment == null)
            {
                fragment = VideoFragment.newInstance();
                fragment.setVideoId(data.srcPath);

                fm.beginTransaction().add(youTubePlayer.getId(), fragment).commit();
                mCurrentYouTubePlayer = v.getId();
            }
            else
            {
                fm.beginTransaction().remove(fragment).commit();

                fragment = VideoFragment.newInstance();
                fragment.setVideoId(data.srcPath);
                fm.beginTransaction().add(youTubePlayer.getId(), fragment).commit();
                mCurrentYouTubePlayer = v.getId();
            }
        }
    });



    return youTubePlayer;
}


7 commentaires

Et la question est ...?


Voulez-vous la mettre en pause après 2 secondes? Ou une pause est le problème réel et vous ne le voulez pas?


Pause est le problème réel


Essayez de vérifier ce lien Stackoverflow.com/Questtions/14014087/...


ouais même problème que je l'ai eu, pls me donner une solution si tu l'as eu


Stackoverflow.com/questions/19981645/...


Essayez de réduire les Targetsdkversion dans la construction de votre application.Gradle à 19. Je n'ai aucune idée de pourquoi, mais cela a travaillé pour moi lorsque j'avais le même problème.


3 Réponses :


0
votes

Le problème peut être parce qu'il existe un objet ci-dessus com.google.android.youtube.player.youtubePonderview ou la vidéo contient une propriété de rembourrage


0 commentaires

9
votes

Il n'est pas possible d'ajouter des boutons comme superposés au-dessus du lecteur, comme spécifié par Google, sinon le joueur s'arrête:

https: // développeurs. google.com/youtube/andrroid/player/reeference/com/google/android/youTube/player/youTubeplayView

Notez que pendant que des vidéos jouent, cette vue a une taille minimale de 200x110 DP. Si vous faites la vue des vidéos plus petites, des vidéos seront Arrêtez automatiquement de jouer. En outre, il n'est pas autorisé à superposer le Voir avec d'autres vues pendant que une vidéo joue.

Cette vue ne prend pas en charge le rembourrage. Pour obtenir le même effet, enveloppez la vue dans un autre groupe de spectacles ou lui donner des marges.

Le rembourrage n'est également pas pris en charge sur YouTubePlayer.

Pour superposer votre vue sur la vidéo, je vous recommanderai d'utiliser ExoPlayer , Il ne fait pas partie du SDK Android, mais il est recommandé par Google et inclus dans la documentation du développeur Android:

http://google.github.io/exoplayer/

Exoplayer vous permet de diffuser n'importe quel type de vidéo, non seulement des vidéos YouTubes.

Il est également bon de mentionner que l'exoplayer est utilisée dans l'application YouTube.


0 commentaires

0
votes

Si quelqu'un utilise le fragment YouTube, utilisez le remplacement de la transaction plutôt que d'ajouter.

YouTubePlayersupportfragment YouTubePlayerfragment = YouTubePlayerSupportfragment.NewInstance (); P>

    FragmentTransaction transaction = getChildFragmentManager().beginTransaction();

    transaction.replace(R.id.youtube_frame, youTubePlayerFragment).commit();


0 commentaires