美文网首页
嘻哈帮面试

嘻哈帮面试

作者: 我才是张雷 | 来源:发表于2017-07-11 18:42 被阅读0次

1.传值除了用Intent还能用什么
2.自定义view
3.事件分发机制
4.让周末在家:视频实现倍速、镜像以及AB循环播放(倍速和镜像面试官已经做出来了,只要完成AB循环播放,模仿中舞网app的视频播放)
5.技术是个妹子,技术是个妹子,技术是个妹子

周末找demo,找视频播放框架,去ijkplayer-issues的github上提问最后没有思路放弃了,周一上午一觉睡起来,突来来了灵感
1.先随便找了个demo用来设置ab两点-ATDragViewDemo
2.采用Viatmio框架播放(妹子用的就是这个)
3.获取视频的时间长度duration = mVideoView.getDuration(),结果得到的值始终是-1,查了下说要在视频播放器的准备事件里获取

 mVideoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
            @Override
            public void onPrepared(MediaPlayer mediaPlayer) {
                //此处设置播放速度为正常速度1,可以更改倍速
                mediaPlayer.setPlaybackSpeed(1.0f);
                //在这里获取
                duration = mediaPlayer.getDuration()
            }
        });

这会结果终于不是-1了,变成0了,算了时间快来不及了,写死吧,反正以后获取视频播放地址的时候会返回视频的时间长度的(如果不返回再说0.0)
4.根据时间的长度(多少秒)来把上面的ATDragView分成多少份,每滑动一次就是一秒
5.在ATDragView的OnDragFinishedListener中分别设置ab两点

 atDragView.setLinstener(new ATDragView.OnDragFinishedListener() {
            @Override
            public void dragFinished(int leftPostion, int rightPostion) {
                //因为每次滑动a或者b都会进入这个方法
                //当我只滑动了b的时候,也会让视频跳转到a开始播放
                //所以每次记录下新的a的位置`newStart`,与全局的`start`作比较,如果不一致就保存新的位置,并跳转到新的位置播放
                long newStart = leftPostion;
                long newEnd = rightPostion;
                if (start != newStart) {
                    start = leftPostion;
                    mVideoView.seekTo(start);
                }
                end = rightPostion;

                Log.i("test", "开始:" + leftPostion + "结束:" + rightPostion + "当前 毫秒" + start);
            }
        });

6.找到获取当前播放事件的方法mVideoView.getCurrentPosition(),然后起个定时器,每隔一秒查询下当前的位置,如果大于等于b就跳转到a

 timer = new Timer();//定时器,每隔一秒查询下当前的进度
 timer.schedule(task, 0, 1000);
 TimerTask task = new TimerTask() {
            @Override
            public void run() {
                long currentPosition = mVideoView.getCurrentPosition();//获取当前播放进度
                if (end != 0 && currentPosition >= end) {//如果进度大于等于设置的b,那么跳转到a
                    mVideoView.seekTo(start);
                }
            }
        };

一个简单的demo就完成了,当我兴高采烈的发给面试官的时候,面试官说别人一个下午就做好了,唉,心塞,谁让自己以前没有做过视频播放呢,记录下,就当锻炼自己了

相关文章

  • 嘻哈帮面试

    1.传值除了用Intent还能用什么2.自定义view3.事件分发机制4.让周末在家:视频实现倍速、镜像以及AB循...

  • 用街舞让嘻哈文化走进生活

    嘻哈不是说说而已,嘻哈需要动起来。 嘻哈文化包括涂鸦、DJ、说唱、街舞。综艺节目《中国有嘻哈》让大众知道了嘻哈文化...

  • 嘻哈说:设计模式之开放封闭原则

    1、定义 之前我们已经说过: 《嘻哈说:单一职责原则》 《嘻哈说:里氏替换原则》 《嘻哈说:依赖倒置原则》 《嘻哈...

  • 嘻哈是一种街头文化,一种生活方式,并不仅仅是一种音乐风格

    谈的嘻哈(Hip-Hop)大家首先想到的是嘻哈音乐,或者是有嘻哈之类的嘻哈节目,你可曾知道嘻哈也有属于它自己的独特...

  • 可能嘻哈并不嘻哈

    可能流行并非流行的东西,真的好羞涩。 我们自己有的东西,自然值得珍视。没有的,可以羡慕,可以嫉妒,但请管好自己,在...

  • 嘻哈队长,队长嘻哈

    昨晚从饭桌上抱起他,迷迷糊糊的我和他说,明天你和鱼儿是队长啊,一边帮他擦着口水,一边摸摸额头,烧应该是退的七七八八...

  • 中国嘻哈潮流文化节即将火热开幕 罗志祥、欧阳靖空降郑州

    企业观察报讯(记者 朱颜北) 由嘻哈帮街舞主办的第七届中国嘻哈潮流文化节,将于8月19日-20日在郑州会展中心拉...

  • 嘻哈

    首先说明:Hip-Hop翻译过来是嘻哈,RAP翻译过来是饶舌,这两个概念不同。Hip-Hop实际上不是音乐名词而是...

  • 嘻哈

    从去年开始,发生了一件事,在炎炎夏日清凉一下,不油腻!爱奇艺播出的中国有嘻哈。今年更名为中国新说唱!每一期更新必看...

  • 嘻哈

    乐库

网友评论

      本文标题:嘻哈帮面试

      本文链接:https://www.haomeiwen.com/subject/srbmhxtx.html