Android: YouTubePlayer不能在儿童活动中工作



我试图在我的应用程序中实现视频。我想我可以使用YouTubePlayer API并打开我的视频。如果我打开一个正常的新意图,这是正常工作的。

但是如果我在我的childActivity中打开YouTubeVideoPlayer,它在应用程序的底部有一个菜单,它就不会真正工作。

这是我试图打开Intent的方式:

Intent video = new Intent(getParent(), MyYouTubeVideoPlayer.class);
TabGroupActivity videoActivity = (TabGroupActivity)getParent();
videoActivity.startChildActivity("Video", video);

它的工作,但然后玩家说:"发生了一个错误,而初始化YouTube播放器

有没有人知道我如何在这个ChildActivity中实现YouTubePlayer到我的应用程序?或者有没有其他更好的方式在我的应用程序中播放YouTube视频?

以下是YouTubePlayer类:

public class MyYouTubeVideoPlayer extends YouTubeFailureRecoveryActivity {
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.playerview_demo);
    YouTubePlayerView youTubeView = (YouTubePlayerView) findViewById(R.id.youtube_view);
    youTubeView.initialize(DeveloperKey.DEVELOPER_KEY, this);
  }
  public void onInitializationSuccess(YouTubePlayer.Provider provider, YouTubePlayer player,
      boolean wasRestored) {
    if (!wasRestored) {
      player.cueVideo("wKJ9KzGQq0w");
    }
  }
  @Override
  protected YouTubePlayer.Provider getYouTubePlayerProvider() {
    return (YouTubePlayerView) findViewById(R.id.youtube_view);
  }
}

第二个类:

public abstract class YouTubeFailureRecoveryActivity extends
        YouTubeBaseActivity implements YouTubePlayer.OnInitializedListener {
    private static final int RECOVERY_DIALOG_REQUEST = 1;
    public void onInitializationFailure(YouTubePlayer.Provider provider,
    YouTubeInitializationResult errorReason) {
        if (errorReason.isUserRecoverableError()) {
            errorReason.getErrorDialog(this, RECOVERY_DIALOG_REQUEST).show();
        } else {
            String errorMessage = String.format(
                    getString(R.string.error_player), errorReason.toString());
            Toast.makeText(this, errorMessage, Toast.LENGTH_LONG).show();
        }
    }
    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        if (requestCode == RECOVERY_DIALOG_REQUEST) {
            // Retry initialization if user performed a recovery action
            getYouTubePlayerProvider().initialize(DeveloperKey.DEVELOPER_KEY,
                    this);
        }
    }
    protected abstract YouTubePlayer.Provider getYouTubePlayerProvider();
}

据我所知,如果你在"YouTubePlayerView"上添加任何视图,youtube播放器就会自动停止。

因为它将和广告一样

顺便说一下,我做了一个使用最新youtube api的示例活动。

此源句柄定位问题&;;媒体音量问题&;;Youtube Url解析问题&;;

  1. 这是示例活动代码

    https://gist.github.com/TheFinestArtist/5545437

  2. 这是git项目的示例应用

    https://github.com/TheFinestArtist/SimpleYouTubePlayer

  3. 我也做了一个示例应用程序,你可以下载

    https://play.google.com/store/apps/details?id=com.thefinestartist.simpleyoutubeplayer

相关内容

  • 没有找到相关文章

最新更新