将YouTube播放器实施到Android应用程序中的最佳方法



我正在开发一个安卓应用程序,我从一个json文件中获取mp4文件网址。现在我想使用 youtube 播放器在我的应用程序中播放这些文件。经过一些研究,我设法在我的应用程序中播放我的视频。但是当我从播放视频返回到应用程序的其他部分时,该应用程序似乎变慢了。我需要知道我是否正确执行此操作。

这是我用来播放视频的代码。

if (YouTubeApiServiceUtil.isYouTubeApiServiceAvailable(activity).equals(
                        YouTubeInitializationResult.SUCCESS)
                        && android.os.Build.VERSION.SDK_INT > android.os.Build.VERSION_CODES.ICE_CREAM_SANDWICH) {
                    Intent intent = YouTubeStandalonePlayer
                            .createVideoIntent(activity, API_KEY,
                                    video.getFile());
                    startActivity(intent);
                }

video.getFile();我正在获取我的视频网址。

我使用YouTubeAndroidPlayerApi.jar作为库。

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

  1. 在 Google 开发者控制台 https://console.developers.google.com 上注册您的应用

  2. 获取唯一的 API 密钥并在您的应用程序中使用它。

使用以下代码

public class AboutUs extends YouTubeBaseActivity implements 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() {
    }
};

相关内容

  • 没有找到相关文章

最新更新