我按照此页面上提供的说明YouTube Android Player API,它已成功地工作,但inspite已经下载了YouTubeAndroidPlayerApi jar文件,如果我尝试运行不具备YouTube应用在设备上的应用程序,它抛出错误请求更新到最新的YouTube版本。 有没有办法可以在应用程序中嵌入YouTube视频,而不是拥有youtube应用程序的应用程序用户在设备上?
我已经检查了其他问题,其中大多数建议在iframe或webview中加载webview。我想知道自2018年以来是否有任何可用的解决方案,或者这仍然不可能?
P.S。我希望本地嵌入视频而不是在webview中加载它。
答案 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);