jwplayer().getPosition(); //播放了多少秒 jwplayer('playerdiv').play(); || jwplayer(0).play(true / false); //是否播放 0为索引 jwplayer(0).pause(true / false); //是否暂停 jwplayer(0).stop(); //停止无参 jwplayer().getBuffer(); //加载了百分之几 jwplayer().getFullscreen(); setFullscreen(state); //是否全屏 jwplayer().getMute(); setMute(state) //是否静音 jwplayer().getPlaylist()[0]['file'] || jwplayer().getPlaylistItem(0)['file'] //获取播放列表中索引为0项的file值 jwplayer().getWidth() jwplayer().getHeight() //宽高 jwplayer().getState() //state值:1.playing播放中 2.paused停止 3.idle空闲 4.completed结束 jwplayer().getDuration() //视频播放结束需要的时间 jwplayer().getVolume() //声音大小 //加载播放列表 var playlist = new Array({ file: "video/123.mp4", image: "images/videoimg1.jpg" }, { file: "video/234.flv", image: "images/videoimg1.jpg" }); jwplayer(0).load(playlist); jwplayer(0).playlistItem(1); //播放下标为1的视频 jwplayer(0).playlistNext(); //播放下一个视频 jwplayer(0).playlistPrev(); //播放上一个视频 jwplayer(0).resize(width, height); //宽高 //从第(10-缓冲秒数)秒开始,缓冲(bufferlength)默认为3秒 jwplayer(0).seek(10); events: { onComplete: function () { alert("播放结束!!!"); }, onVolume: function () { alert("声音大小改变!!!"); }, onReady: function () { alert("准备就绪!!!"); }, onPlay: function () { alert("开始播放!!!"); }, onPause: function () { alert("暂停!!!"); }--1 } Jwplayer(0).onPause: function () { alert("暂停!!!"); } //与1等同,先执行1 //回调函数 jwplayer(0).onBufferChange(function () { alert("缓冲改变!!!"); }); jwplayer(0).onBufferFull(function () { alert("视频缓冲完成!!!"); }); jwplayer(0).onError(function (obj) { alert("播放器出错!!!" + obj.message); }) jwplayer(0).onFullscreen(function (obj) { if (obj.fullscreen) { alert("全屏"); } else { alert("非全屏"); } }); onMute(callback) // obj. mute是否静音 onPlaylist(function (obj) { //视频列表载入完成 alert(obj.playlist[0]['file']); }); onPlaylistItem(callback) // 开始播放一个视频时触发obj.index为视频索引 onReady(callback) //准备就绪 onResize(callback) //obj.width obj.height 宽高 //进入播放时触发obj.oldstate 值:从BUFFERING PAUSE状态进入播放状态 onPlay(callback) //进入暂停obj.oldstate 值1:从PLAYING BUFFERING状态进入暂停 onPause(callback) onBuffer(callback) //进入加载obj.oldstate 值PLAYING, PAUSED or IDLE onIdle(callback) //进入空闲obj.oldstate 值PLAYING, PAUSED or BUFFERING. onComplete(callback) //结束播放 onVolume(callback) //obj.volume
jwplayer 隐藏属性方法记载
-
Gradle-如何从 AndroidManifest 中获取值
Gradle-如何从 AndroidManifest 中获取值
-
Android Studio接入ARouter以及简单使用
你可能会说如果我的A module依赖了 B module,那么只要在B里面配置是不是就可以了?绝对不行!无论module之间关系如何,必须要同样配置!包括主项目和library项目!
-
利用ARouter实现组件间通信,解决子模块调用主模块问题
组件化开发中我们一般是主模块依赖子模块,这样的话主模块是可以调用子模块的方法和属性来与子模块通信的,但是如果子模块想和主模块之间通信(调用主模块的属性和方法呢?)
-
Android组件化方案
1为什么要项目组件化 2如何组件化 3组件化实施流程
-
Program type already present: com.alibaba.android.arouter.routes.ARouter Group
这时候如果我们要配置模块 B 中的类,就不能使用 A 来作为组的路径了,要不然就会报错。在不同的模块中,配置的组路径不能一样,而在同一个模块中,自己的路径不能相同,就是上面 A1 位置不能相同。
-
Android-加速传感器或者OrientationEventListener做横竖屏切换
在播放视频的时候,可能要做横竖屏的切换,但是,用户可以设置自己的手机关掉屏幕旋转,这个时候就需要想其他的办法了,比如:加速传感器或者OrientationEventListener。
-
Android 拍摄(横\竖屏)视频的懒人之路
一般用在多媒体录制上面,当然如果你只是简单的想录制音频,用它最合适不过,不过如果你想更多样化的录制这里推荐《Android MP3录制,波形显示,音频权限兼容与播放》。今天的主题是录制视频,用的还是老式通用的Camera,不是新的camera2(这就尴尬了.....((/- -)/),反正个人秉承能用是王道的做法(懒)。之前也尝试过FFMPEG的录制合成音频,大小和效果也不错,只是有时候的兼容性确实有些问题,最主要还是资料不多,不好改啊 ̄へ ̄(懒)。
-
仿抖音系列
最近公司在做个短视频的项目,其中借鉴了很多抖音的设计,其中就有抖音的上下滑切换视频。
-
全屏录制播放控件--Android 开发中关于视频录制和播放的诸多问题处理
1.解决录制后文件较大的问题 2.解决清晰度问题 3.同一控件上实现录制和播放 4.解决VideoView播放时不能全屏问题 5.解决了预览图拉抻的问题 6.自定义播/录组件 连续录制/播放
-
Android RecyclerView禁止滑动
在开发时,数组返回数目很少,需求要求不能左右滑动;