YouTube Gdata APIU已不再可用,有此替代方案吗?

时间:2015-06-15 05:52:45

标签: android youtube youtube-api gdata android-youtube-api

YouTube Feed的Gdata API无法使用,过去几天...所以可以选择从YouTube API获取Feed。??

http://gdata.youtube.com/feeds/api/playlists/PL_yIBWagYVjyyqx_qPkbat5zufWZOyZEZ

1 个答案:

答案 0 :(得分:0)

  1. 下载YouTubePlyaer API https://developers.google.com/youtube/android/player/downloads/

  2. 在Google开发者控制台https://console.developers.google.com

  3. 上注册您的应用
  4. 获取一个唯一的API密钥并在您的应用程序中使用它。

  5. 使用以下代码

    公共课关于我们的扩展YouTubeBaseActivity实现了YouTubePlayer.OnInitializedListener {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.layout_about_us);
    
        YouTubePlayerView youTubePlayerView = (YouTubePlayerView) findViewById(R.id.youtube_player);
        youTubePlayerView.initialize(Constants.YOUTUBE_API_KEY, this);
    
        initViews();
    }
    
    private void initViews() {
        Button btnVisitMega = (Button) findViewById(R.id.btn_visit_megaforties);
        Button btnVisitSecurity = (Button) findViewById(R.id.btn_visit_security_seals);
    
        btnVisitMega.setOnClickListener(this);
        btnVisitSecurity.setOnClickListener(this);
    }
    
    @Override
    public void onInitializationFailure(Provider arg0, YouTubeInitializationResult arg1) {
        Toast.makeText(this, "Failured to Initialize!", Toast.LENGTH_LONG).show();
    }
    
    @Override
    public void onInitializationSuccess(Provider provider, YouTubePlayer player, boolean wasRestored) {
        /** add listeners to YouTubePlayer instance **/
        player.setPlayerStateChangeListener(playerStateChangeListener);
        player.setPlaybackEventListener(playbackEventListener);
    
        /** Start buffering **/
        if (!wasRestored) {
            player.cueVideo(Constants.YOUTUBE_VIDEO_ID);
        }
    }
    
    private PlaybackEventListener playbackEventListener = new PlaybackEventListener() {
    
        @Override
        public void onBuffering(boolean arg0) {
        }
    
        @Override
        public void onPaused() {
        }
    
        @Override
        public void onPlaying() {
        }
    
        @Override
        public void onSeekTo(int arg0) {
        }
    
        @Override
        public void onStopped() {
        }
    };
    
    private PlayerStateChangeListener playerStateChangeListener = new PlayerStateChangeListener() {
    
        @Override
        public void onAdStarted() {
        }
    
        @Override
        public void onError(ErrorReason arg0) {
        }
    
        @Override
        public void onLoaded(String arg0) {
        }
    
        @Override
        public void onLoading() {
        }
    
        @Override
        public void onVideoEnded() {
        }
    
        @Override
        public void onVideoStarted() {
        }
    };