提升直播观看体验的方法、存储介质、电子设备及系统与流程

文档序号:17050148发布日期:2019-03-05 19:59阅读:234来源:国知局
提升直播观看体验的方法、存储介质、电子设备及系统与流程

本发明涉及软件技术领域,具体涉及一种提升直播观看体验的方法、存储介质、电子设备及系统。



背景技术:

在直播移动客户端,对于用户所观看的直播页面,其由多个内容和元素组成,直播页面的最底层是播放器,播放器的上层显示的是房间号、主播头像、当前房间的用户列表和关注按钮,同时下方位置显示的是宝箱、周星榜、排行榜、弹幕区,同时直播页面还会不定时出现大礼物特效、礼物横幅等各种弹框,即在直播页面总共包含有上百种ui(userinterface,用户界面)元素。

一般情况下,大约有20~40种ui元素会同时出现在直播页面,但是受运行直播移动客户端的智能设备的屏幕尺寸限制,在直播画面上叠加如此之多的ui元素,极大地减少了直播画面的显示面积,影响用户的直播观看体验。



技术实现要素:

针对现有技术中存在的缺陷,本发明的目的在于提供一种提升直播观看体验的方法,能够有效提升用户对直播的观看体验。

为达到以上目的,本发明采取的技术方案是,包括s1:在移动直播客户端中创建用于装载ui元素的容器contentview,所述容器contentview继承于界面类的基类uiview;

s2:将直播间页面的直播画面播放器添加至移动直播客户端控制器的最底层,直播间页面的功能性显示ui元素添加至直播画面播放器之上,并将功能性显示ui元素装载于容器contentview中,所述直播间页面由直播画面和功能性显示ui元素组成;

s3:创建在一方向上正向滑动或反向滑动的pan手势,并将创建的pan手势添加至移动直播客户端控制器的view上;

s4:用户位于直播间,且当用户在运行移动直播客户端的智能移动设备的触摸屏幕上进行一方向的滑动操作时,判断是正向滑动还是反向滑动,若为正向滑动,则转到s5,若为反向滑动,则转到s6;

s5:判断当前直播间页面上是否有功能性显示ui元素,若是,则隐藏容器contentview,若否,则不做处理;

s6:判断当前直播间页面上是否有功能性显示ui元素,若是,则不作处理,若否,则显示容器contentview。

在上述技术方案的基础上,所述功能性显示ui元素为房间号、主播头像、当前房间的用户列表、关注按钮、弹幕和礼物横幅中的一个或多个。

在上述技术方案的基础上,

当容器contentview为显示状态时,容器contentview中的功能性显示ui元素在直播间页面上显示;

当容器contentview为隐藏状态时,容器contentview中的功能性显示ui元素在直播间页面上隐藏。

在上述技术方案的基础上,

所述正向滑动为在运行移动直播客户端的智能移动设备的触摸屏幕上由左至右滑动;

所述反向滑动为在运行移动直播客户端的智能移动设备的触摸屏幕上由右至左滑动。

在上述技术方案的基础上,对于创建的pan手势,调用内存分配函数为pan手势分配内存,并将pan手势的监听者设为控制器,通过控制器监听和判断用户进行正向滑动还是反向滑动。

本发明还提供一种存储介质,该存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述所述的方法。

本发明还提供一种电子设备,包括存储器和处理器,存储器上储存有在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述所述的方法。

本发明还提供一种提升直播观看体验的系统,包括:

创建模块,其用于在移动直播客户端中创建用于装载ui元素的容器contentview,以及创建在一方向上正向滑动或反向滑动的pan手势,并将创建的pan手势添加至移动直播客户端控制器的view上,所述容器继承于界面类的基类uiview;

判断模块,其用于当用户位于直播间,且当用户在运行移动直播客户端的智能移动设备的触摸屏幕上进行一方向的滑动操作时,判断是正向滑动还是反向滑动;

执行模块,其用于将直播间页面的直播画面播放器添加至移动直播客户端控制器的最底层,直播间页面的功能性显示ui元素添加至直播画面播放器之上,并将功能性显示ui元素装载于容器contentview中,以及,当用户为正向滑动时,判断当前直播间页面上是否有功能性显示ui元素,若是,则隐藏容器contentview,若否,则不做处理,当用户为反向滑动时,判断当前直播间页面上是否有功能性显示ui元素,若是,则不作处理,若否,则显示容器contentview,所述直播间页面由直播画面和功能性显示ui元素组成。

在上述技术方案的基础上,所述功能性显示ui元素为房间号、主播头像、当前房间的用户列表、关注按钮、弹幕和礼物横幅中的一个或多个。

在上述技术方案的基础上,

当容器contentview为显示状态时,容器contentview中的功能性显示ui元素在直播间页面上显示;

当容器contentview为隐藏状态时,容器contentview中的功能性显示ui元素在直播间页面上隐藏。

与现有技术相比,本发明的优点在于:创建装载ui元素的容器contentview,将除直播画面外的其它ui元素全部装载于容器contentview中,并定义相应手势来控制容器contentview的隐藏和显示,即控制除直播画面外的其它ui元素的隐藏和显示以供用户选择,当用户正向滑动屏幕时,则隐藏容器contentview,当用户方向滑动屏幕时,则显示容器contentview,控制方便,便于用户便捷选择隐藏除除直播画面外的其它ui元素,减少对直播画面观看的影响,提升用户对移动直播客户端的使用体验。

附图说明

图1为本发明实施例中一种提升直播观看体验的方法的流程图;

图2为本发明实施例中一种电子设备的结构示意图。

具体实施方式

以下结合附图及实施例对本发明作进一步详细说明。

参见图1所示,本发明实施例提供一种提升直播观看体验的方法,适用于运行于ios系统中的移动直播客户端,具体包括:

s1:在移动直播客户端中创建用于装载ui元素的容器contentview,容器contentview继承于界面类的基类uiview,uiview表示屏幕上的一块区域,uiview主要用于管理和控制该区域内的显示内容。通过创建容器contentview来对直播间页面上的相应ui元素进行装载。

s2:将直播间页面的直播画面播放器添加至移动直播客户端控制器的最底层,直播间页面的功能性显示ui元素添加至直播画面播放器之上,并将功能性显示ui元素装载于容器contentview中,直播间页面由直播画面和功能性显示ui元素组成。直播画面即为主播直播的内容,功能性显示ui元素为直播平台添加至直播画面上的ui元素,具体的,功能性显示ui元素为房间号、主播头像、当前房间的用户列表、关注按钮、弹幕和礼物横幅中的一个或多个,某一时刻,直播间页面上显示的功能性显示ui元素具体为一个或多个,本发明实施例中将当前直播间页面上显示的所有功能性显示ui元素均装载至容器contentview中。

在移动直播客户端中,对于直播间页面的控制,一般全部由一个控制器控制,且在直播间页面上,不管是否执行清屏操作,直播画面必须始终是可见的,因此将直播画面播放器添加至移动直播客户端控制器的最底层,直播间页面的其它ui元素置于直播画面播放器之上。

s3:创建在一方向上正向滑动或反向滑动的pan手势,并将创建的pan手势添加至移动直播客户端控制器的view上,pan手势指在触摸屏幕上的滑动动作。具体的,使用手势类uipangesturerecognizer调用内存分配函数alloc为手势pan分配内存,添加手势监听者函数initwithtarget为手势pan添加一个监听者,并将pan手势的监听者设为控制器,同时设置这个手势pan被执行的回调函数为onefingerrightandleft,添加手势pan的方法是addgesturerecognizer。view为智能移动设备中用户界面组件的一块可绘制的空间块。本发明实施例中,智能移动设备为智能手机或平板。

其中,正向滑动为在运行移动直播客户端的智能移动设备的触摸屏幕上由左至右滑动;反向滑动为在运行移动直播客户端的智能移动设备的触摸屏幕上由右至左滑动。进一步的,手指从屏幕的左侧滑至右侧即判定为正向滑动,手指从屏幕的右侧滑至左侧即判定为反向滑动,且滑动的起始点和末点能够不在同一高度上。

s4:用户位于直播间,且当用户在运行移动直播客户端的智能移动设备的触摸屏幕上进行一方向的滑动操作时,判断是正向滑动还是反向滑动,若为正向滑动,则转到s5,若为反向滑动,则转到s6;本发明实施例中,pan手势的监听者为控制器,因此通过控制器监听和判断用户进行正向滑动还是反向滑动。

s5:判断当前直播间页面上是否有功能性显示ui元素,若是,则隐藏容器contentview,若否,则不做处理;当用户在触摸屏幕上进行滑动时便会触发并调用手势操作的回调函数onefingerrightandleft,回调函数onefingerrightandleft有一个手势类型uipangesturerecognizer的参数recognizer,当回调函数onefingerrightandleft被调用时,便会检查当前用户的滑动操作是否执行完毕或被取消或失败,当确认用户当前进行的为正向滑动,即由左至右,且滑动操作已经执行完毕,此时便会继续后续的判断当前直播间页面上是否有功能性显示ui元素,若是,则隐藏容器contentview,若否,则不做处理。若容器contentview本身便为隐藏状态,则当用户进行正向滑动操作时,则不做处理。对于触发容器contentview的隐藏和显示的手势能够自由设定。

当容器contentview为显示状态时,容器contentview中的功能性显示ui元素在直播间页面上显示;当容器contentview为隐藏状态时,容器contentview中的功能性显示ui元素在直播间页面上隐藏。且直播画面播放器位于控制器的最底层,当进行容器contentview的隐藏或显示,即清屏或恢复清屏操作时,直播画面均不受影响,且在本发明的方案中,容器contentview的隐藏或显示操作均不涉及ui元素的移除或重新创建,仅是对容器contentview进行隐藏或显示,因此对于容器contentview的隐藏或显示过程,其内存消耗较小,不涉及对相应控件的移除添加操作,减少cpu和gpu(graphicsprocessingunit,图形处理器)的负荷,提高移动直播客户端运行的稳定性。

为提高移动直播客户端与用户间的交互体验,对于容器contentview的隐藏过程,即直播间页面上除直播画面外其它所有ui元素消失的过程,增加一动画过程,具体的,使用屏幕界面的基类uiview类,调用一个动画的类方法animatewithduration,设置动画的持续时间,动画的持续时间一般设为0.1秒,设置完成后,对于执行清屏操作完后容器contentview的位置,容器contentview的坐标的x值就是屏幕的宽度,容器contentview的坐标的y值、宽度w值、高度y值保持不变,然后将平移过程增加一动画,从而给用户非常自然的向右滑动的感觉。

s6:判断当前直播间页面上是否有功能性显示ui元素,若是,则不作处理,若否,则显示容器contentview。相应的,当用户在触摸屏幕上进行滑动时便会触发并调用手势操作的回调函数onefingerrightandleft,当回调函数onefingerrightandleft被调用时,便会检查当前用户的滑动操作是否执行完毕或被取消或失败,当确认用户当前进行的为反向滑动,即由右至左,且滑动操作已经执行完毕,此时便会继续后续的判断当前直播间页面上是否有功能性显示ui元素,若是,则不作处理,若否,则显示容器contentview。若容器contentview本身便为隐藏状态,则当用户进行正向滑动操作时,则不做处理。若容器contentview本身便为显示状态,则当用户进行反向滑动操作时,则不做处理。

同样的,为提高移动直播客户端与用户间的交互体验,对于容器contentview的显示过程,即直播间页面上显示之前移除的除直播画面外其它所有ui元素的过程,增加一动画过程,具体的,使用屏幕界面的基类uiview类,调用一个动画的类方法animatewithduration,设置动画的持续时间,动画的持续时间一般设为0.1秒,设置完成后,对于执行清屏操作完后容器contentview的位置,容器contentview的坐标的x值就是屏幕的最左边,即0,容器contentview的坐标的y值、宽度w值、高度y值保持不变,仅改变x的值,然后将平移过程增加一动画,从而给用户非常自然的向左滑动的感觉。

本发明的提升直播观看体验的方法的原理在于,创建装载ui元素的容器contentview,将除直播画面外的其它ui元素全部装载于容器contentview中,并定义相应手势来控制容器contentview的隐藏和显示,即控制除直播画面外的其它ui元素的隐藏和显示以供用户选择,当用户正向滑动屏幕时,则隐藏容器contentview,当用户方向滑动屏幕时,则显示容器contentview,控制方便,便于用户便捷选择隐藏除除直播画面外的其它ui元素,减少对直播画面观看的影响,且容器contentview的隐藏或显示操作均不涉及ui元素的移除或重新创建,仅是对容器contentview进行隐藏或显示,因此对于容器contentview的隐藏或显示过程,其内存消耗较小,不涉及对相应控件的移除添加操作,减少cpu和gpu的负荷,提高移动直播客户端运行的稳定性。

另外,对应上述提升直播观看体验的方法,本发明还提供一种存储介质,存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述各实施例所述的提升直播观看体验的方法的步骤。需要说明的是,所述存储介质包括u盘、移动硬盘、rom(read-onlymemory,只读存储器)、ram(randomaccessmemory,随机存取存储器)、磁碟或者光盘等各种可以存储程序代码的介质。

参见图2所示,对应上述提升直播观看体验的方法,本发明还提供一种电子设备,包括存储器和处理器,存储器上储存有在处理器上运行的计算机程序,处理器执行计算机程序时实现上述各实施例的提升直播观看体验的方法。

本发明还提供一种基于上述提升直播观看体验的方法的提升直播观看体验的系统,包括创建模块、判断模块和执行模块。

创建模块用于在移动直播客户端中创建用于装载ui元素的容器contentview,以及创建在一方向上正向滑动或反向滑动的pan手势,并将创建的pan手势添加至移动直播客户端控制器的view上,所述容器继承于界面类的基类uiview;判断模块用于当用户位于直播间,且当用户在运行移动直播客户端的智能移动设备的触摸屏幕上进行一方向的滑动操作时,判断是正向滑动还是反向滑动;执行模块用于将直播间页面的直播画面播放器添加至移动直播客户端控制器的最底层,直播间页面的功能性显示ui元素添加至直播画面播放器之上,并将功能性显示ui元素装载于容器contentview中,以及,当用户为正向滑动时,判断当前直播间页面上是否有功能性显示ui元素,若是,则隐藏容器contentview,若否,则不做处理,当用户为反向滑动时,判断当前直播间页面上是否有功能性显示ui元素,若是,则不作处理,若否,则显示容器contentview,所述直播间页面由直播画面和功能性显示ui元素组成。

功能性显示ui元素为房间号、主播头像、当前房间的用户列表、关注按钮、弹幕和礼物横幅中的一个或多个。当容器contentview为显示状态时,容器contentview中的功能性显示ui元素在直播间页面上显示;当容器contentview为隐藏状态时,容器contentview中的功能性显示ui元素在直播间页面上隐藏。

本发明的提升直播观看体验的系统的原理在于,创建模块创建装载ui元素的容器contentview,将除直播画面外的其它ui元素全部装载于容器contentview中,并定义相应手势来控制容器contentview的隐藏和显示,即控制除直播画面外的其它ui元素的隐藏和显示以供用户选择,通过判断模块,当用户正向滑动屏幕时,则隐藏容器contentview,当用户方向滑动屏幕时,则显示容器contentview,控制方便,便于用户便捷选择隐藏除除直播画面外的其它ui元素,减少对直播画面观看的影响,且容器contentview的隐藏或显示操作均不涉及ui元素的移除或重新创建,仅是对容器contentview进行隐藏或显示,其内存消耗较小,不涉及对相应控件的移除添加操作,减少cpu和gpu的负荷,提高移动直播客户端运行的稳定性。

本发明不局限于上述实施方式,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围之内。本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1