开源视频播放器IjkPlayer使用记录之(三)--播放视频从上次播放的时间点播放。

方法:

1.在关闭视频的时候,使用getCurrentPosition()获取当前的时间点。

2.使用SharedPreferences记录当前的时间点。

3.重新播放时,获取该时间点,使用seekto进行播放,相对来说还是比较简单的。

附代码,有需要的可以参考。

 public void MediaSavePostion(String inputUrl) {
        if ((sp != null) && (inputUrl != null)) {
            int position = videoView.getCurrentPosition();
            int duration = videoView.getDuration();
            Log.e(TAG,"position="+position+"duration="+duration);
            //2S以内的误差认为已经播放完城
            if ((duration>0) && (duration-position<2000))
            {
               position=0;
            }
            String value = String.valueOf(position);
            editor.putString(inputUrl, value);
            editor.commit();
            Log.e(TAG, "save url=" + inputUrl + "position=" + value);
        }
    }

    public void SetVideoPlay(String inputUrl) {
        if (inputUrl != null) {
            String pos = null;
            int position = 0;
            if (sp != null) {
                pos = sp.getString(inputUrl, "");
                Log.e(TAG, "postion=" + pos);
            }
            if ((pos != null) && (pos.length() > 0)) {
                try {
                    position = Integer.valueOf(pos);
                } catch (Exception e) {
                    position = 0;
                }
            }
            Log.e(TAG, "play url=" + inputUrl + "position=" + position);
            videoView.setVideoURI(Uri.parse(inputUrl));
            if (position != 0) {
                videoView.seekTo(position);
            }
            videoView.start();
        }
    }


  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值