Android youtubePlayerFragmnet-无法创建用于播放youtube视频的片段

Android youtubePlayerFragmnet-无法创建用于播放youtube视频的片段,android,android-fragments,youtube,Android,Android Fragments,Youtube,我需要在一个片段中播放youtube视频,即FragmentVideo。FragmentVideo是使用FragmentStatePagerAdapter创建的一个数量4 当我滚动到一个页面碎片视频应该显示视频形式的链接视频链接。 我真的在寻找如何完成这件事。大多数示例都是创建一个活动,但我需要在一个页面中使用它,其中相应的片段应该处理视频播放。 还基于片段状态暂停、恢复、onsavestateinstance视频播放应停止、恢复等 谁能帮帮我吗。 我已经有了所有的网络接入 packag

我需要在一个片段中播放youtube视频,即FragmentVideo。FragmentVideo是使用FragmentStatePagerAdapter创建的一个数量4

当我滚动到一个页面碎片视频应该显示视频形式的链接视频链接。 我真的在寻找如何完成这件事。大多数示例都是创建一个活动,但我需要在一个页面中使用它,其中相应的片段应该处理视频播放。 还基于片段状态暂停、恢复、onsavestateinstance视频播放应停止、恢复等

谁能帮帮我吗。 我已经有了所有的网络接入

    package com.test.myTestingapp;
import com.google.android.youtube.player.YouTubeInitializationResult;
import com.google.android.youtube.player.YouTubePlayer;
import com.google.android.youtube.player.YouTubePlayer.OnInitializedListener;
import com.google.android.youtube.player.YouTubePlayer.Provider;
import com.google.android.youtube.player.YouTubePlayerSupportFragment;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentTransaction;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;


/**
 * A simple {@link android.support.v4.app.Fragment} subclass.
 * 
 */
public class FragmentVideo extends Fragment implements YouTubePlayer.OnInitializedListener {
    public static final String ARG_SECTION_NUMBER = "section_number";
    public static final String TAG ="LOGTAG";
    public View rootView;

    public String videolink;
    public int loc;

    public static final String API_KEY = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
    public static final String VIDEO_ID = "o7VVHhK9zf0";


    public static FragmentVideo newInstance(String param1, String param2) {
        FragmentVideo fragment = new FragmentVideo();
        Bundle args = new Bundle();
        fragment.setArguments(args);
        return fragment;
    }

    public FragmentVideo() {
        // Required empty public constructor
    }

    @Override
    public void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
    }
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {
        // Inflate the layout for this fragment
        rootView = inflater.inflate(R.layout.fragment_video, container, false);

        videolink = getArguments().getString("VIDEOLINK");

        if(videolink == null) {

            return rootView;

        }
        Log.i(TAG, "FragmentVideo: received videolink: " + videolink);
        YouTubePlayerSupportFragment ypf = new YouTubePlayerSupportFragment();
        ypf.initialize(API_KEY, this);
        FragmentManager fragmentManager = getFragmentManager();
        FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
        fragmentTransaction.replace(R.id.youtubeplayerfragment, ypf);
        fragmentTransaction.commit();
        return rootView;
    }

    @Override
    public void onSaveInstanceState(Bundle outState) {
        // TODO Auto-generated method stub
        super.onSaveInstanceState(outState);
    }

    @Override
    public void onInitializationFailure(Provider arg0,
            YouTubeInitializationResult arg1) {
        // TODO Auto-generated method stub

    }

    @Override
    public void onInitializationSuccess(Provider arg0, YouTubePlayer arg1,
            boolean arg2) {
        // TODO Auto-generated method stub
        if(!arg2)
            arg1.cueVideo(videolink);
    }
}
和LogCat输出:

    09-29 18:57:10.065: E/InputEventReceiver(1615): Exception dispatching input event.
09-29 18:57:10.065: D/AndroidRuntime(1615): Shutting down VM
09-29 18:57:10.069: W/dalvikvm(1615): threadid=1: thread exiting with uncaught exception (group=0xa4bb0648)
09-29 18:57:10.081: E/AndroidRuntime(1615): FATAL EXCEPTION: main
09-29 18:57:10.081: E/AndroidRuntime(1615): java.lang.NoClassDefFoundError: com.test.myTestingapp.FragmentVideo
09-29 18:57:10.081: E/AndroidRuntime(1615):     at com.test.myTestingapp.MainActivity$SectionsPagerAdapter.getItem(MainActivity.java:278)
09-29 18:57:10.081: E/AndroidRuntime(1615):     at android.support.v4.app.FragmentStatePagerAdapter.instantiateItem(FragmentStatePagerAdapter.java:105)
09-29 18:57:10.081: E/AndroidRuntime(1615):     at android.support.v4.view.ViewPager.addNewItem(ViewPager.java:832)
09-29 18:57:10.081: E/AndroidRuntime(1615):     at android.support.v4.view.ViewPager.populate(ViewPager.java:1048)
09-29 18:57:10.081: E/AndroidRuntime(1615):     at android.support.v4.view.ViewPager.populate(ViewPager.java:914)
09-29 18:57:10.081: E/AndroidRuntime(1615):     at android.support.v4.view.ViewPager$3.run(ViewPager.java:244)
09-29 18:57:10.081: E/AndroidRuntime(1615):     at android.support.v4.view.ViewPager.completeScroll(ViewPager.java:1761)
09-29 18:57:10.081: E/AndroidRuntime(1615):     at android.support.v4.view.ViewPager.scrollToItem(ViewPager.java:579)
09-29 18:57:10.081: E/AndroidRuntime(1615):     at android.support.v4.view.ViewPager.setCurrentItemInternal(ViewPager.java:551)
09-29 18:57:10.081: E/AndroidRuntime(1615):     at android.support.v4.view.ViewPager.setCurrentItemInternal(ViewPager.java:509)
09-29 18:57:10.081: E/AndroidRuntime(1615):     at android.support.v4.view.ViewPager.dataSetChanged(ViewPager.java:908)
09-29 18:57:10.081: E/AndroidRuntime(1615):     at android.support.v4.view.ViewPager$PagerObserver.onChanged(ViewPager.java:2819)
09-29 18:57:10.081: E/AndroidRuntime(1615):     at android.database.DataSetObservable.notifyChanged(DataSetObservable.java:37)
09-29 18:57:10.081: E/AndroidRuntime(1615):     at android.support.v4.view.PagerAdapter.notifyDataSetChanged(PagerAdapter.java:276)
09-29 18:57:10.081: E/AndroidRuntime(1615):     at com.test.myTestingapp.MainActivity$1.onPageSelected(MainActivity.java:89)
09-29 18:57:10.081: E/AndroidRuntime(1615):     at android.support.v4.view.ViewPager.scrollToItem(ViewPager.java:567)
09-29 18:57:10.081: E/AndroidRuntime(1615):     at android.support.v4.view.ViewPager.setCurrentItemInternal(ViewPager.java:551)
09-29 18:57:10.081: E/AndroidRuntime(1615):     at android.support.v4.view.ViewPager.onTouchEvent(ViewPager.java:2015)
09-29 18:57:10.081: E/AndroidRuntime(1615):     at android.view.View.dispatchTouchEvent(View.java:7384)
09-29 18:57:10.081: E/AndroidRuntime(1615):     at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2205)
09-29 18:57:10.081: E/AndroidRuntime(1615):     at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1940)
09-29 18:57:10.081: E/AndroidRuntime(1615):     at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2211)
09-29 18:57:10.081: E/AndroidRuntime(1615):     at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1954)
09-29 18:57:10.081: E/AndroidRuntime(1615):     at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2211)
09-29 18:57:10.081: E/AndroidRuntime(1615):     at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1954)
09-29 18:57:10.081: E/AndroidRuntime(1615):     at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2211)
09-29 18:57:10.081: E/AndroidRuntime(1615):     at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1954)
09-29 18:57:10.081: E/AndroidRuntime(1615):     at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:1966)
09-29 18:57:10.081: E/AndroidRuntime(1615):     at com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1418)
09-29 18:57:10.081: E/AndroidRuntime(1615):     at android.app.Activity.dispatchTouchEvent(Activity.java:2424)
09-29 18:57:10.081: E/AndroidRuntime(1615):     at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:1914)
我需要片段视频,应该播放youtube视频,播放/暂停等。。
如何实现这一点?

请查看mainactivity中的第278行。您是logcat,它清楚地告诉您链接278的问题代码在哪里是ifposition==3{fragment=new FragmentVideo;args.putinfragmentvideo.ARG_节号,位置+1;args.putStringVIDEOLINK,;},其中fragment是fragment类型。它与创建其他片段的代码完全相同。我想我在FragmetnVideo的实现中弄乱了一些细节。还是我在这里遗漏了什么?