Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Using the YouTube API within a fragment

I using the new YouTube API in my project. Using the example of the documentation, it works correctly:

public class Test extends  YouTubeBaseActivity implements YouTubePlayer.OnInitializedListener {

    String urlVideo;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        urlVideo="5lbVNYAeFiQ";

        YouTubePlayerView youTubeView = (YouTubePlayerView) findViewById(R.id.youtube_view);
        youTubeView.initialize("MY_API_KEY", this);

    }

    public void onInitializationFailure(Provider arg0,YouTubeInitializationResult arg1) {
        Toast.makeText(this, "Error ", Toast.LENGTH_LONG).show();  
    }

    public void onInitializationSuccess(Provider arg0, YouTubePlayer arg1,boolean wasRestored) {
        if (!wasRestored) {
            arg1.loadVideo(urlVideo);
        }

    }
}

But in my project, I'm using a main activity that contains a ViewPager The ViewPager shows fragments, the problem is when I want to show YouTubePlayer within one fragment of ViewPager. Normally, an activity that uses youtube, extending YouTubeBaseActivity.

extends YouTubeBaseActivity implements ... { 

My question is, how I can show YouTube Player in an activity that extends from fragments?

I searched, but can not find information about my problem.

I sincerely appreciate the help.

Best regards

like image 326
Sergio76 Avatar asked Mar 18 '13 18:03

Sergio76


People also ask

Can I use YouTube API in my app?

YouTube Android Player API lets you play any YouTube video or playlist inside your app that too without leaving your app.

Can fragments be used in multiple activities?

You can use multiple instances of the same fragment class within the same activity, in multiple activities, or even as a child of another fragment. With this in mind, you should only provide a fragment with the logic necessary to manage its own UI.


1 Answers

Use YouTubePlayerSupportFragment if you are only playing a YouTube video in a single support.v4.app.Fragment. This allows you to use FragmentActivity, rather than YouTubeBaseActivity.

like image 113
ianhanniballake Avatar answered Sep 22 '22 03:09

ianhanniballake