在没有youtube应用程序的情况下在应用程序中集成Youtube视频

时间:2018-02-08 18:15:26

标签: java android webview youtube youtube-data-api

我按照此页面上提供的说明YouTube Android Player API,它已成功地工作,但inspite已经下载了YouTubeAndroidPlayerApi jar文件,如果我尝试运行不具备YouTube应用在设备上的应用程序,它抛出错误请求更新到最新的YouTube版本。 有没有办法可以在应用程序中嵌入YouTube视频,而不是拥有youtube应用程序的应用程序用户在设备上?

我已经检查了其他问题,其中大多数建议在iframe或webview中加载webview。我想知道自2018年以来是否有任何可用的解决方案,或者这仍然不可能?

P.S。我希望本地嵌入视频而不是在webview中加载它。

1 个答案:

答案 0 :(得分:5)

据我所知,任何其他方式都无法做到这一点。也许你可以做一些黑客攻击并将视频流式传输给普通玩家,但我不确定YouTube的服务条款是否100%正常。 WebView可能是最好的方式。

如果您不想从头开始构建所有内容,我已经构建了这个库,以便有一个基于WebView的随时可用的播放器。 Android-YouTube-Player

要使用它,您只需要导入lib,将YouTubePlayerView放在布局中并初始化它。

<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <com.pierfrancescosoffritti.youtubeplayer.player.YouTubePlayerView
        android:id="@+id/youtube_player_view"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"/>
</LinearLayout>

-

YouTubePlayerView youTubePlayerView = findViewById(R.id.youtube_player_view);

youTubePlayerView.initialize(new YouTubePlayerInitListener() {
    @Override
    public void onInitSuccess(final YouTubePlayer initializedYouTubePlayer) {    
        initializedYouTubePlayer.addListener(new AbstractYouTubePlayerListener() {
            @Override
            public void onReady() {
                String videoId = "6JYIGclVQdw";
                initializedYouTubePlayer.loadVideo(videoId, 0);
            }
        });        
    }
}, true);