我有一个使用ExoPlayer在服务中运行的Android应用程序播放音频。在Active-A中,您可以选择要播放的曲目。服务开始并开始播放音频。控件变得可见,一切看起来正常:
当我移动到Active-B时,音频会继续在后台播放,因为它是一项服务。当我返回Active-A时,控件会出现,但显示不正确。音频仍在播放,但进度条不正确,播放和暂停按钮都在显示,而不仅仅是暂停:
我必须与控件交互,比如单击“播放”按钮,然后它们看起来再次正常,进度条显示正确。
这是将播放器连接到控件的方法:
private void initializePlayer() {
if (isBound && audioPlayerService != null) {
player = audioPlayerService.getPlayerInstance();
playerControlView.setPlayer(player);
}
}
为什么控制装置不能立即工作?
使用以下代码修复:
private void initializePlayer() {
if (isBound && audioPlayerService != null) {
player = audioPlayerService.getPlayerInstance();
if (audioPlayerService.isPlaying()) {
playerControlView.setVisibility(View.VISIBLE);
}
playerControlView.setPlayer(player);
}
}
说明:
经过一些研究,我注意到在使用PlayerControlView将播放器附加到视图之后。setPlayer(),PlayerControl视图。调用updateAll()方法以确保一切正常。但是,需要检查控件是否可见,并且除非控件实际可见,否则更新不会完成(方法退出):
if (!isVisible() || !isAttachedToWindow) {
return;
}
在我的代码中,我首先将播放器附加到控件上,然后才使它们可见(这对我来说似乎是合乎逻辑的),所以这就是问题所在。
进入具体播放器编辑页面,点击LOGO标签,设置播放器LOGO。 用户可以选择上传或者外链一张图片作为播放器LOGO。 · 可为LOGO添加链接地址,点击跳转到指定位置; · LOGO将被添加在视频播放器上,不会对您的视频源文件产生影响; · 系统支持您根据需要对LOGO显示位置(左上、左下、右上、右下)及透明度进行自由设定; · 可通过开关控制LOGO是否展示; · 系统不提供LOGO大小的修改,
点击各播放器的编辑按钮,进入具体播放器编辑页面。 播放器编辑页面 基础类、展示类可编辑设置项如下图所示: 项目 基础类播放器 展示类播放器 皮肤外观 5款 2款 LOGO √ √ 缓冲片头 √ √ 右侧菜单-系统 默认开启 默认关闭 右侧菜单-自定义 √ √ 综合功能-面板自动隐藏 √ - 综合功能-分享设置 √ √ 播放列表 √ √ 域名限制 √ √ 视频推荐 √ √ 1)设置播放器皮肤 进入具
VR播放设置需账号开通VR播放权限,开通权限后账号可以通过全局设置和分类设置控制视频是否为VR(全景)播放。 全局设置 进入视频页面,在全局设置页面,点击VR播放按钮 全局设置VR播放为“ON”时,默认所有分类下的视频为VR播放;全局设置VR播放为“OFF”时,默认所有分类下的视频为非VR播放。 分类设置 若需对某一级分类进行VR播放开关设置,可以选择【分类管理】,在一级分类后 “操作”中的“设置
进入具体播放器编辑页面,点击缓冲片头标签,设置播放缓冲片头。缓冲片头位置如下图所示: · 可通过引用线上素材和本地上传两种方式,添加视频加载时的缓冲片头; · 用户可通过开关控制缓冲片头是否展示; · 仅支持JPG、JPEG、GIF、PNG、SWF格式素材文件; · 素材文件大小不可超过500KB; · 用户可保存多组片头切换使用。
西瓜播放器记忆播放按照官方设置但是不生效(https://v2.h5player.bytedance.com/config/#%E8%AE%B0%E5%BF%86%...) 1.这是官网示例 2.我的代码 按照官网所示来进行配置但是不生效
进入具体播放器编辑页面,点击播放列表标签,设置播放列表样式。 设置播放列表的样式:选择视频封面缩略图、文本框和文字列表; 设置播放列表的位置:上、下、左、右,文字列表形式只有左右两种位置。