如何使用 YouTubePlayerView 在全屏横向模式下播放 YouTube 视频 Android
How to Play YouTube Video in only Full screen landscape mode using YoyTubePlayerView Android
我正在尝试使用 Youtube Intents 仅在全屏模式下播放视频
我想做的是在 Xml 中有一个 TubePlayerView,如下面的代码
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<com.google.android.youtube.player.YouTubePlayerView
android:id="@+id/videoView1"
android:layout_width="match_parent"
android:layout_height="200dp"
android:layout_marginTop="2dp"
android:paddingTop="5dp" />
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TextView" />
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TextView" />
</LinearLayout>
ID 为 videoView 的 youtubeplayer 视图,当我点击它时我想在新意图上播放视频使用 youtube 意图如下代码。
但问题是在执行 onClick 之后的事件 Intent 没有被调用
public class CallingIntent extends YouTubeBaseActivity implements YouTubePlayer.OnInitializedListener {
public static final String develop_you_key = " i have my key";
YouTubePlayerView youTubeView;
TextView ID,Video_id,Video_name,duration,countView,published;
String ID1,Video_id1,Video_name1,duration1,countView1,published1;
private static final int RECOVERY_DIALOG_REQUEST = 1;
YouTubePlayer youTubePlayer;
MediaPlayer mPlayer;
Intent receInt;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.vid_play);
Intent in = getIntent();
// String st= in.getStringExtra("image");
ID1=in.getStringExtra("ID");
Video_id1=in.getStringExtra("video_id");
Video_name1=in.getStringExtra("video_name");
ID =(TextView) findViewById(R.id.textView1);
Video_id =(TextView) findViewById(R.id.textView2);
Video_name=(TextView)findViewById(R.id.textView3);
ID.setText(ID1);
Video_id.setText(Video_id1);
Video_name.setText(Video_name1);
youTubeView= (YouTubePlayerView) findViewById(R.id.videoView1);
youTubeView.initialize(develop_you_key,(YouTubePlayer.OnInitializedListener)this);
findViewById(R.id.videoView1).setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent intent = YouTubeIntents.createPlayVideoIntentWithOptions(getApplicationContext(), Video_id1, true, false);
startActivity(intent);
finish();
}
});;
mPlayer = new MediaPlayer();
}
@Override
public void onInitializationFailure(YouTubePlayer.Provider player,
YouTubeInitializationResult errorReason) {
// TODO Auto-generated method stub
String errorMessage = errorReason.toString();
Toast.makeText(this, errorMessage, Toast.LENGTH_LONG).show();
}
@Override
public void onInitializationSuccess(YouTubePlayer.Provider provider, YouTubePlayer player,
boolean wasRestored) {
// TODO Auto-generated method stub
if(!wasRestored)player.cueVideo(Video_id1);
}
}
请观察 onclickListener 并在初始化成功时告诉我如何使用 Youtube intent 直接播放视频 "YouTubeIntents.createPlayVideoIntentWithOptions"
问题是我想加载视频不想用缩略图代替 VideoView。
经过大量修改后,我将 xml 文件从 com.google.android.youtube.player.YouTubePlayerView 更改为 com.google.android.youtube.player.YouTubeThumbnailView
正在加载图片
`
<com.google.android.youtube.player.YouTubeThumbnailView
android:id="@+id/videoView1"
android:layout_width="match_parent"
android:layout_height="200dp"
android:layout_marginTop="2dp"
android:paddingTop="5dp" />
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TextView" />
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TextView" />
<TextView
android:id="@+id/textView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TextView" />
</LinearLayout>`
从 youtube 加载图像并以全屏模式播放视频
代码修改为
public class VideoDetailView extends YouTubeBaseActivity implements YouTubeThumbnailView.OnInitializedListener{
public static final String develop_you_key = "i have my key";
YouTubePlayerView youTubeView;
TextView ID,Video_id,Video_name,duration,countView,published;
String ID1,Video_id1,Video_name1,duration1,countView1,published1;
//YouTubePlayerView youtubeplayer =(YouTubePlayerView) findViewById(R.id.videoView1);
YouTubeThumbnailView YoutubeThumb ;
YouTubeThumbnailLoader youTubeThumbnailLoader;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.video_detail);
Intent in = getIntent();
// String st= in.getStringExtra("image");
ID1=in.getStringExtra("ID");
Video_id1=in.getStringExtra("video_id");
Video_name1=in.getStringExtra("video_name");
duration1=in.getStringExtra("duration");
countView1=in.getStringExtra("viewcount");
published1=in.getStringExtra("published");
// VideoView vv =(VideoView) findViewById(R.id.videoView1);
ID =(TextView) findViewById(R.id.textView1);
Video_id =(TextView) findViewById(R.id.textView2);
Video_name=(TextView)findViewById(R.id.textView3);
duration= (TextView)findViewById(R.id.textView4);
countView=(TextView)findViewById(R.id.textView5);
published=(TextView)findViewById(R.id.textView6);
ID.setText(ID1);
Video_id.setText(Video_id1);
Video_name.setText(Video_name1);
duration.setText(duration1);
countView.setText(countView1);
published.setText(published1);
YoutubeThumb= (YouTubeThumbnailView) findViewById(R.id.videoView1);
YoutubeThumb.initialize(develop_you_key,(YouTubeThumbnailView.OnInitializedListener)this);
YoutubeThumb.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent intent = YouTubeIntents.createPlayVideoIntentWithOptions(getApplicationContext(), Video_id1, true, false);
startActivity(intent);
}
});
}
@Override
public void onInitializationFailure(YouTubeThumbnailView thumbnail,
YouTubeInitializationResult arg1) {
// TODO Auto-generated method stub
}
@Override
public void onInitializationSuccess(YouTubeThumbnailView thumbnail,
YouTubeThumbnailLoader imageLoader) {
// TODO Auto-generated method stub
youTubeThumbnailLoader = imageLoader;
imageLoader.setOnThumbnailLoadedListener(new OnThumbnailLoadedListener() {
@Override
public void onThumbnailLoaded(YouTubeThumbnailView arg0, String arg1) {
// TODO Auto-generated method stub
}
@Override
public void onThumbnailError(YouTubeThumbnailView arg0, ErrorReason arg1) {
// TODO Auto-generated method stub
}
});
youTubeThumbnailLoader.setVideo(Video_id1);
}
}
我正在尝试使用 Youtube Intents 仅在全屏模式下播放视频
我想做的是在 Xml 中有一个 TubePlayerView,如下面的代码
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<com.google.android.youtube.player.YouTubePlayerView
android:id="@+id/videoView1"
android:layout_width="match_parent"
android:layout_height="200dp"
android:layout_marginTop="2dp"
android:paddingTop="5dp" />
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TextView" />
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TextView" />
</LinearLayout>
ID 为 videoView 的 youtubeplayer 视图,当我点击它时我想在新意图上播放视频使用 youtube 意图如下代码。
但问题是在执行 onClick 之后的事件 Intent 没有被调用
public class CallingIntent extends YouTubeBaseActivity implements YouTubePlayer.OnInitializedListener {
public static final String develop_you_key = " i have my key";
YouTubePlayerView youTubeView;
TextView ID,Video_id,Video_name,duration,countView,published;
String ID1,Video_id1,Video_name1,duration1,countView1,published1;
private static final int RECOVERY_DIALOG_REQUEST = 1;
YouTubePlayer youTubePlayer;
MediaPlayer mPlayer;
Intent receInt;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.vid_play);
Intent in = getIntent();
// String st= in.getStringExtra("image");
ID1=in.getStringExtra("ID");
Video_id1=in.getStringExtra("video_id");
Video_name1=in.getStringExtra("video_name");
ID =(TextView) findViewById(R.id.textView1);
Video_id =(TextView) findViewById(R.id.textView2);
Video_name=(TextView)findViewById(R.id.textView3);
ID.setText(ID1);
Video_id.setText(Video_id1);
Video_name.setText(Video_name1);
youTubeView= (YouTubePlayerView) findViewById(R.id.videoView1);
youTubeView.initialize(develop_you_key,(YouTubePlayer.OnInitializedListener)this);
findViewById(R.id.videoView1).setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent intent = YouTubeIntents.createPlayVideoIntentWithOptions(getApplicationContext(), Video_id1, true, false);
startActivity(intent);
finish();
}
});;
mPlayer = new MediaPlayer();
}
@Override
public void onInitializationFailure(YouTubePlayer.Provider player,
YouTubeInitializationResult errorReason) {
// TODO Auto-generated method stub
String errorMessage = errorReason.toString();
Toast.makeText(this, errorMessage, Toast.LENGTH_LONG).show();
}
@Override
public void onInitializationSuccess(YouTubePlayer.Provider provider, YouTubePlayer player,
boolean wasRestored) {
// TODO Auto-generated method stub
if(!wasRestored)player.cueVideo(Video_id1);
}
}
请观察 onclickListener 并在初始化成功时告诉我如何使用 Youtube intent 直接播放视频 "YouTubeIntents.createPlayVideoIntentWithOptions"
问题是我想加载视频不想用缩略图代替 VideoView。
经过大量修改后,我将 xml 文件从 com.google.android.youtube.player.YouTubePlayerView 更改为 com.google.android.youtube.player.YouTubeThumbnailView
正在加载图片 `
<com.google.android.youtube.player.YouTubeThumbnailView
android:id="@+id/videoView1"
android:layout_width="match_parent"
android:layout_height="200dp"
android:layout_marginTop="2dp"
android:paddingTop="5dp" />
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TextView" />
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TextView" />
<TextView
android:id="@+id/textView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TextView" />
</LinearLayout>`
从 youtube 加载图像并以全屏模式播放视频 代码修改为
public class VideoDetailView extends YouTubeBaseActivity implements YouTubeThumbnailView.OnInitializedListener{
public static final String develop_you_key = "i have my key";
YouTubePlayerView youTubeView;
TextView ID,Video_id,Video_name,duration,countView,published;
String ID1,Video_id1,Video_name1,duration1,countView1,published1;
//YouTubePlayerView youtubeplayer =(YouTubePlayerView) findViewById(R.id.videoView1);
YouTubeThumbnailView YoutubeThumb ;
YouTubeThumbnailLoader youTubeThumbnailLoader;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.video_detail);
Intent in = getIntent();
// String st= in.getStringExtra("image");
ID1=in.getStringExtra("ID");
Video_id1=in.getStringExtra("video_id");
Video_name1=in.getStringExtra("video_name");
duration1=in.getStringExtra("duration");
countView1=in.getStringExtra("viewcount");
published1=in.getStringExtra("published");
// VideoView vv =(VideoView) findViewById(R.id.videoView1);
ID =(TextView) findViewById(R.id.textView1);
Video_id =(TextView) findViewById(R.id.textView2);
Video_name=(TextView)findViewById(R.id.textView3);
duration= (TextView)findViewById(R.id.textView4);
countView=(TextView)findViewById(R.id.textView5);
published=(TextView)findViewById(R.id.textView6);
ID.setText(ID1);
Video_id.setText(Video_id1);
Video_name.setText(Video_name1);
duration.setText(duration1);
countView.setText(countView1);
published.setText(published1);
YoutubeThumb= (YouTubeThumbnailView) findViewById(R.id.videoView1);
YoutubeThumb.initialize(develop_you_key,(YouTubeThumbnailView.OnInitializedListener)this);
YoutubeThumb.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent intent = YouTubeIntents.createPlayVideoIntentWithOptions(getApplicationContext(), Video_id1, true, false);
startActivity(intent);
}
});
}
@Override
public void onInitializationFailure(YouTubeThumbnailView thumbnail,
YouTubeInitializationResult arg1) {
// TODO Auto-generated method stub
}
@Override
public void onInitializationSuccess(YouTubeThumbnailView thumbnail,
YouTubeThumbnailLoader imageLoader) {
// TODO Auto-generated method stub
youTubeThumbnailLoader = imageLoader;
imageLoader.setOnThumbnailLoadedListener(new OnThumbnailLoadedListener() {
@Override
public void onThumbnailLoaded(YouTubeThumbnailView arg0, String arg1) {
// TODO Auto-generated method stub
}
@Override
public void onThumbnailError(YouTubeThumbnailView arg0, ErrorReason arg1) {
// TODO Auto-generated method stub
}
});
youTubeThumbnailLoader.setVideo(Video_id1);
}
}