我在我的应用程序中使用YouTube API。我的问题是,视频不会自动播放,用户必须按下播放按钮才能开始播放。
我代码:setContentView(R.layout.playerview_demo);
((YouTubePlayerView)findViewById(R.id.youtube_view)).initialize(DEV_KEY, this);
youtube_view
layout:
<com.google.android.youtube.player.YouTubePlayerView
android:id="@id/youtube_view"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
如何使视频自动开始?
你要找的是Youtube API的loadVideo方法。来自文档:
public abstract void loadVideo (String videoId)
加载并播放指定的视频。
你可以这样使用:
@Override
public void onInitializationSuccess(YouTubePlayer.Provider provider, YouTubePlayer player,
boolean wasRestored) {
this.player = player;
player.loadVideo(video.id); // where video.id is a String of a Youtube video ID
}
与此类似,还有cueVideo
方法,它将视频添加到播放列表中,但不会自动开始播放视频
使用loadVideo函数。
public abstract void loadVideo (String videoId, int timeMillis)
加载并播放指定的视频。播放将在视频中指定的时间开始。
videoId -要播放的视频IDtimeMillis -时间(毫秒)
马其顿:https://developers.google.com/youtube/android/player/reference/com/google/android/youtube/player/YouTubePlayer loadVideo(以)读者
您需要使用player.cueVideo("video_id");
这将加载视频,但不会开始自动播放。视频是自动播放的,因为你使用的是player.loadVideo("video_id");
。
希望能有所帮助。
我自己解决了这个问题,然后我在这里发布:
public void onInitializationSuccess(YouTubePlayer.Provider paramProvider, YouTubePlayer paramYouTubePlayer, boolean paramBoolean)
{if (!paramBoolean)paramYouTubePlayer.loadVideo(CLIP_LINK);}
文档清楚地说明…
注意:YouTube只计算通过本机播放按钮。
但是你可以直接调用youtubeplayer.loadVideo(VIDEO_ID,0) // 0 millis, start right away
否则,您可以使用CHROMELESS控件并向其添加自定义控件。然后它可能会起作用。祝你一切顺利。
检查autoplay
特性是否设置为1
。默认情况下,玩家将在autoplay
加载初始视频。
请参考Youtube自动播放参数获取更多信息