【发布时间】:2021-12-24 03:24:06
【问题描述】:
我想在 Exo 播放器中显示我的 youtube 视频,并在带有 java 的 android 中使用自定义控件,我还想在 google play store 上发布该应用程序。所以你能帮我用一个真正的方法来做这件事吗?因此,当我将其上传到 google playstore 时,我的应用不会很快被拒绝
提前致谢
【问题讨论】:
标签: java android youtube exoplayer
我想在 Exo 播放器中显示我的 youtube 视频,并在带有 java 的 android 中使用自定义控件,我还想在 google play store 上发布该应用程序。所以你能帮我用一个真正的方法来做这件事吗?因此,当我将其上传到 google playstore 时,我的应用不会很快被拒绝
提前致谢
【问题讨论】:
标签: java android youtube exoplayer
首先,您不必担心您的应用会被拒绝,因为在它遵循 Google 政策之前,它不会删除您的应用。
您想要的要求可以满足with this library。 这不会使应用大小增加超过 1 MB。 它也可以随心所欲地定制。
这就是你可以实现它的方式。
1.在你的build.gradle中,添加这个依赖
implementation 'com.pierfrancescosoffritti.androidyoutubeplayer:core:10.0.5'
2.在你的布局xml文件中添加以下代码
<com.pierfrancescosoffritti.androidyoutubeplayer.core.player.views.YouTubePlayerView
android:id="@+id/youtube_player_view"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:autoPlay="true"
app:showFullScreenButton="false" />
3.在您的活动中添加以下代码
YouTubePlayerView youTubePlayerView = findViewById(R.id.youtube_player_view);
getLifecycle().addObserver(youTubePlayerView);
4.要加载视频添加这个
youTubePlayerView.addYouTubePlayerListener(new AbstractYouTubePlayerListener() {
@Override
public void onReady(@NonNull YouTubePlayer youTubePlayer) {
//if your url is something like this -> https://www.youtube.com/watch?v=EzyXVfyx7CU
String urlToLoad = "https://www.youtube.com/watch?v=EzyXVfyx7CU";
String[] url = urlToLoad.split("watch?v=");
youTubePlayer.loadVideo(url[1], 0);
//if your url is something like this -> EzyXVfyx7CU
String videoId = "EzyXVfyx7CU";
youTubePlayer.loadVideo(videoId, 0);
}
});
现在要添加自定义,您可以点击以下链接。
Enable automatic initialization
如果你认为你可以完全自定义 UI,你不能这样做。这个库还只提供了左侧和右侧以及暂停/播放按钮的顶部和底部的选项。它看起来有点像像这样。
【讨论】:
您可以轻松地使用 Youtube url extractor repo 从 youtube url 中提取 mp4 url,而不是您可以轻松地在 exo 播放器中播放该 youtube 视频
【讨论】: