Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/180.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在android中停止youtube视频或在youtube api中设置缓冲区限制_Android_Video_Buffer_Android Youtube Api - Fatal编程技术网

如何在android中停止youtube视频或在youtube api中设置缓冲区限制

如何在android中停止youtube视频或在youtube api中设置缓冲区限制,android,video,buffer,android-youtube-api,Android,Video,Buffer,Android Youtube Api,我正在使用YouTube API播放我的视频,YouTube播放器中有play()和pause()函数。我需要在特定时间停止视频。我使用的是pause(),但视频的背景得到缓冲。如何在特定时间限制后停止缓冲视频?在webview中,URL中有一个选项“开始”和“结束”标记,如下所示 注意:我正在使用Youtube播放器播放视频,而不是WEBVIEW请检查此代码 public class YouTube extends YouTubeBaseActivity implements YouTube

我正在使用YouTube API播放我的视频,YouTube播放器中有
play()
pause()
函数。我需要在特定时间停止视频。我使用的是
pause()
,但视频的背景得到缓冲。如何在特定时间限制后停止缓冲视频?在webview中,URL中有一个选项“开始”和“结束”标记,如下所示

注意:我正在使用Youtube播放器播放视频,而不是WEBVIEW

请检查此代码

public class YouTube extends YouTubeBaseActivity implements YouTubePlayer.OnInitializedListener {

    public static final String API_KEY = "<---YOUR KEY--->";
    public static final String VIDEO_ID = "<--VIDEO ID YOU WANT TO PLAY--->";
    private static YouTubePlayer player;

    TextView text;

    //this is the end time in milliseconds (65th second)
    public int endTime = 5600;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_my);
        text = (TextView) findViewById(R.id.text);
        YouTubePlayerView youTubePlayerView = (YouTubePlayerView)findViewById(R.id.youtubeplayerview);
        youTubePlayerView.initialize(API_KEY, this);
    }

    @Override
    public void onInitializationFailure(Provider provider, YouTubeInitializationResult result) {
        Toast.makeText(getApplicationContext(),
        "onInitializationFailure()",
        Toast.LENGTH_LONG).show();
    }

    @Override
    public void onInitializationSuccess(Provider provider, YouTubePlayer player, boolean wasRestored) {

        MyActivity.player = player; //necessary to access inside Runnable

        //start the video at 36th second
        player.loadVideo(VIDEO_ID, 0);

        final Handler handler = new Handler();
        handler.postDelayed(() -> {
            //For every 1 second, check the current time and endTime
            if(MyActivity.player.getCurrentTimeMillis() <= endTime) {
                text.setText("Video Playing at " + MyActivity.player.getCurrentTimeMillis());
                handler.postDelayed(this, 1000);
            } else {
                handler.removeCallbacks(this); //no longer required
                text.setText(" Reached " + endTime);
                MyActivity.player.pause(); //and Pause the video
            }
        }, 1000);
    }
}
公共类YouTube扩展YouTube活动实现YouTube层.OnInitializedListener{
公共静态最终字符串API_KEY=“”;
公共静态最终字符串视频_ID=“”;
私人静态YouTueplayer播放器;
文本查看文本;
//这是以毫秒为单位的结束时间(65秒)
公共int endTime=5600;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_my);
text=(TextView)findViewById(R.id.text);
YouTubePlayerView YouTubePlayerView=(YouTubePlayerView)findViewById(R.id.YouTubePlayerView);
初始化(API_键,this);
}
@凌驾
public void onInitializationFailure(提供程序提供程序,YouTubeInitializationResult){
Toast.makeText(getApplicationContext(),
“onInitializationFailure()”,
Toast.LENGTH_LONG).show();
}
@凌驾
public void onInitializationSuccess(提供程序提供程序、YouTubePlayer播放器、布尔值已还原){
MyActivity.player=player;//访问Runnable内部所必需的
//在第36秒开始播放视频
player.loadVideo(VIDEO_ID,0);
最终处理程序=新处理程序();
handler.postDelayed(()->{
//每1秒检查一次当前时间和结束时间
if(MyActivity.player.getCurrentTimeMillis()
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:orientation="vertical"
    tools:context=".MainActivity" >

    <TextView
        android:id="@+id/text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="http://android-er.blogspot.com/"
        android:textStyle="bold"
        android:layout_gravity="center_horizontal"
        android:autoLink="web" />

    <com.google.android.youtube.player.YouTubePlayerView
        android:id="@+id/youtubeplayerview"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"/>

</LinearLayout>