Android 视频播放

作者: HarryXR | 来源:发表于2016-10-08 16:30 被阅读1720次

    android视频播放现在大多数使用IjkPlayer,不过此库使用难度大

    经过实际使用,推荐JieCaoVideoPlayer开源库,简单易用

    Image
    • 使用
    dependencies { 
        compile 'fm.jiecao:jiecaovideoplayer:4.7.0'
    }```
    布局 layout:
    

    <fm.jiecao.jcvideoplayer_lib.JCVideoPlayerStandard
    android:id="@+id/jc_player"
    android:layout_width="match_parent"
    android:layout_height="200dp"/>

    Activity:
    
      @BindView(R.id.jc_player) 
      JCVideoPlayerStandard mPLayer;
      //增加手机感应,自动全屏/小屏
      JCVideoPlayer.JCAutoFullscreenListener sensorListener; 
      SensorManager mSensorManager; 
      @Override
      protected void onCreate(Bundle savedInstanceState) {       
         super.onCreate(savedInstanceState);    
         setContentView(R.layout.activity_video);
         ButterKnife.bind(this); 
         mSensorManager=(SensorManager)getSystemService     (SENSOR_SERVICE);
         sensorListener=new JCVideoPlayer.JCAutoFullscreenListener(){ 
            @Override 
            public void onSensorChanged(SensorEvent event)  {       
                 super.onSensorChanged(event);
                 float x =  event.values[SensorManager.DATA_X]; 
                 float y =event.values[SensorManager.DATA_Y]; 
                 if (x < -10) { //direction right } 
                 else if (x > 5) { //direction left
                     if (JCVideoPlayerManager.getFirst() != null)  {         
                        JCVideoPlayerManager.getFirst() .autoFullscreenLeft();     
                     //mPLayer.startWindowFullscreen(); 
                      } 
                  } 
                 else if (y > 5) {
                    if (JCVideoPlayerManager.getFirst() != null)  {     
                           JCVideoPlayerManager.getFirst() .autoQuitFullscreen();     
                          //mPLayer.autoQuitFullscreen(); 
                   } 
                 } 
            }
             @Override 
             public void onAccuracyChanged(Sensor sensor, int accuracy)  { 
                       super.onAccuracyChanged(sensor, accuracy);
              } 
         };       
        
     mPLayer.setUp("http://2449.vod.myqcloud.com/2449_22ca37a6ea9011e5a  caaf51d105342e3.f20.mp4",
        JCVideoPlayerStandard.SCREEN_LAYOUT_LIST, "嫂子闭眼睛");
       // mPLayer.startWindowFullscreen();//直接全屏播放
       }
      @Override
      protected void onResume() 
      {
           super.onResume();   
           Sensor  accelerometerSensor
       =mSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER); 
           mSensorManager .registerListener(sensorListener,accelerometerSensor,
       SensorManager.SENSOR_DELAY_NORMAL);
      }
    
       @Override
        public void onBackPressed() 
         {
            if (JCVideoPlayer.backPress())  { 
                return;
            } 
            super.onBackPressed(); 
         }
        @Override
        protected void onPause() 
         { 
           super.onPause(); 
           JCVideoPlayer.releaseAllVideos();       
           mSensorManager.unregisterListener(sensorListener);
         }
    
    是不是使用很简单方便,以后播放视频再也不用烦了

    相关文章

      网友评论

      • 江南西柒叁:想问一下这个怎么设置到指定播放进度
        江南西柒叁:就是记忆播放的时候 有什么方法可以调用吗
      • 猪爸爸Hulk:这个开源库是不是改名字了,现在叫JiaoZiVideoPlayer,想问一下有没有视频播放完成的监听
      • ImwhoIam:在4.0的系统可以正常播放,但是点击全屏的时候,又报错了
        java.lang.NullPointerException: Attempt to invoke virtual method 'android.support.v7.app.ActionBar android.support.v7.app.AppCompatActivity.getSupportActionBar()' on a null object reference
      • ImwhoIam:请问,我在使用这个播放器的时候,报了以下这个错误,是什么问题导致的呢?

        java.lang.UnsatisfiedLinkError: dlopen failed: /data/app/com.gdswww.psychological-1/lib/x86/libijkffmpeg.so: has text relocations
        ImwhoIam:这个是6.0系统下播放闪退
      • 程序亦非猿580230:Android6.0版本播放网络视频 无法播放 ?为什么啊jiecaovideoplayer用的最新版本
        HarryXR:@如果世界漆黑_其实我很美 好的,谢谢
        程序亦非猿580230:@HarryXR 6.0手机版本 对视频地址有限制 不能有反斜杠\ 要替换成正斜杠 /
        HarryXR:@如果世界漆黑_其实我很美 我用的4.7版本,在7.0手机也可以运行
      • 李争献:这个框架用的是系统自带的mediaplayer吧,兼容所有视频格式吗
        HarryXR:是的,所有格式都在这这里
        https://developer.android.google.cn/guide/topics/media/media-formats.html
      • 9a20e7e9c11e:这个框架有没有对视频旋转增加适配?
        比如视频是横着拍的,会不会出现竖屏播放,但是视频内容横向的情况。
        HarryXR:@李翊扬 可以横竖屏切换的

      本文标题:Android 视频播放

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