How to Play YouTube Video in Android App android studio
Play YouTube Video in RecyclerView in android studio 3.5
First add This dependency in (build.gradle):
implementation 'com.pierfrancescosoffritti.androidyoutubeplayer:core:10.0.5'
implementation 'com.pierfrancescosoffritti.androidyoutubeplayer:chromecast-sender:0.23'
How to Get Video Key Example Below:
https://www.youtube.com/watch?v=wTD1KP8AyUE
After this:
1. activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
android:orientation="vertical"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/recycler_view_videos"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
</LinearLayout>
2. MainActivity.java
import androidx.appcompat.app.AppCompatActivity;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import android.os.Bundle;
import android.widget.Toolbar;
import com.pierfrancescosoffritti.androidyoutubeplayer.core.player.YouTubePlayer;
import com.pierfrancescosoffritti.androidyoutubeplayer.core.player.listeners.AbstractYouTubePlayerListene;
import com.pierfrancescosoffritti.androidyoutubeplayer.core.player.views.YouTubePlayerView;
public class MainActivity extends AppCompatActivity {
RecyclerView recyclerView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
String[] url_videos_code={
"j4axHXXEfjI",
"kJCCWtgsH_c",
"ULhlzAWc0K8",
"UacxMqnThZA",
"_yI2UscjY3c",
"XQVvDSE-YRw",
"jS- 7aSIEJ3M","FY25rBkiA_U",
"wYrnkafl6Es",
"kzFYwzluzAc",
"byhA3D-TvS0"};
recyclerView=findViewById(R.id.recycler_view_videos);
recyclerView.setLayoutManager(new LinearLayoutManager(this));
recyclerView.setAdapter(new VideoAdpterClass(url_videos_code));
}
}
3.VideoAdapterClass.java
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;
import com.pierfrancescosoffritti.androidyoutubeplayer.core.player.YouTubePlayer;
import com.pierfrancescosoffritti.androidyoutubeplayer.core.player.listeners.AbstractYouTubePlayerListener;
import com.pierfrancescosoffritti.androidyoutubeplayer.core.player.views.YouTubePlayerView;
public class VideoAdpterClass extends RecyclerView.Adapter<VideoAdpterClass.VideoViewHolder> {
public String[] video_url;
public class VideoViewHolder extends RecyclerView.ViewHolder
{
YouTubePlayerView youTubePlayerView;
public VideoViewHolder(@NonNull View itemView) {
super(itemView);
youTubePlayerView=(YouTubePlayerView)itemView.findViewById(R.id.youtube_video);
youTubePlayerView.toggleFullScreen();
}
}
public VideoAdpterClass(String[] video_url) {
this.video_url = video_url;
}
@NonNull
@Override
public VideoViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
LayoutInflater inflater=LayoutInflater.from(parent.getContext());
View view=inflater.inflate(R.layout.videoitms, parent, false);
return new VideoViewHolder(view);
}
@Override
public void onBindViewHolder(@NonNull VideoViewHolder holder, int position) {
final String url=video_url[position];
holder.youTubePlayerView.addYouTubePlayerListener(new AbstractYouTubePlayerListener() {
@Override
public void onReady(YouTubePlayer youTubePlayer) {
youTubePlayer.cueVideo(url,0);
}
});
}
@Override
public int getItemCount() {
return video_url.length;
}
}
4. VideoPlayView.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
android:padding="10dp"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<com.pierfrancescosoffritti.androidyoutubeplayer.core.player.views.YouTubePlayerView
android:id="@+id/youtube_video"
app:showFullScreenButton="true"
android:layout_width="match_parent"
app:showYouTubeButton="true"
app:autoPlay="false"
app:enableAutomaticInitialization="true"
android:layout_height="200dp"/>
</LinearLayout>
![]() |
Output Like This |