Android:YouTubePlayer 在 childactivity 中不起作用

标签 android android-intent youtube childactivity

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

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

这就是我尝试打开 Intent 的方式:

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

Its's working but then the Player sais: "An error occured while initializing the YouTube player.



有谁知道如何在这个 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”上转换任何 View ,YouTube 播放器就会自行停止。
因为它将与广告相同。
顺便说一句,我制作了使用最新 youtube api 的示例 Activity 。
此源句柄“ 方向问题 ”、“ 媒体量问题 ”、“ Youtube 网址解析问题

  • 这是示例 Activity 代码
    https://gist.github.com/TheFinestArtist/5545437
  • 这是示例应用程序的 git 项目
    https://github.com/TheFinestArtist/SimpleYouTubePlayer
  • 我还制作了示例应用程序,您可以下载
    https://play.google.com/store/apps/details?id=com.thefinestartist.simpleyoutubeplayer
  • 关于Android:YouTubePlayer 在 childactivity 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16355584/

    相关文章:

    安卓 - java.lang.NoSuchFieldError : android. graphics.Bitmap$CompressFormat.WEBP

    javascript - youtube 如何防止从其 HTML5 播放器下载视频?

    javascript - 使用AngularJS在Youtube API更新上出现400错误请求

    java - 从 YouTube API 获取用户名和 channel ID

    android - 如何动态设置orderInCategory?

    android - 我们如何覆盖 EditText 中的 getText 方法?

    java - 倒数计时器延迟 - Android

    android - Android中通过Intent传递数据,只想要点击次数

    android - Android系统如何以及何时发送ACTION_BATTERY_CHANGED粘性广播?

    android - 在 android 中点击一个 get/post 请求一个 URL 但在服务器端没有收到请求