The invention discloses a method for realizing a video player, single cases include: APP start, initialize the player; in the current page to build a FrameLayout container, as a player, the player is placed in the FrameLayout, playing; if you need to jump and continuous play, get to the FrameLayout page to jump, jump not stop the current page player, the current page in the FrameLayout player moved to FrameLayout, and the Activity or Fragment inheritance interface functions to play the required callback, began continuous playback. The player from the current page to jump to the mobile page, users before the buffer down progress will not be lost, to achieve continuous playback page jump process without buffer, no Caton, not only has a good user experience, and there is no need to repeat the new player, reduce memory application, avoid memory burden, reduce application is the system recovery rate.
【技术实现步骤摘要】
一种单例视频播放器的实现方法
本专利技术涉及数据视频播放器,具体涉及一种单例视频播放器的实现方法。
技术介绍
目前,市面上的播放器(例如七牛和腾讯)一般是通过以下流程实现播放:(1)将自定义好的播放器视图放置于布局文件中;(2)在Activity或者Fragment中获取到布局文件中的视图,获取到播放器实例,然后设置播放器的播放参数和回调函数;(3)控制播放器播放停止;(4)如果需要进行页面跳转,而保持播放连续,需临时保存播放进度和播放地址,在跳转后新建一个播放器,并设置为临时保存的播放地址和播放进度,实现一个连续播放。可见,当前播放器的实现都是将播放器视图直接写到布局文件中,每次播放前都要初始化播放器的参数,如果要在页面跳转的时候连续播放,例如列表跳转到Activity,需要记录当前播放进度和播放地址等等参数,在跳转过后再次为新建的播放器设置之前记录的参数才能播放;虽然能做到连续播放,但是上一个页面播放的缓存没有了,跳转到下一个页面的时候需要重新加载,导致会有缓冲的动作,影响用户体验,而且如果页面持续跳转,不断实例化播放器,会导致内存不断增大,如果内存不及时回收会导致内存溢出。
技术实现思路
本专利技术所要解决的技术问题是当前播放器在连续播放时,跳转到下一个页面的时,上一个页面缓存已不在,需要重新加载,导致会有缓冲的动作影响用户体验,而且如果页面持续跳转,不断实例化播放器,会导致内存不断增大,内存不能及时回收,导致内存溢出的问题。为了解决上述技术问题,本专利技术所采用的技术方案是提供一种单例视频播放器的实现方法,包括以下步骤:步骤S10、APP启动,初始化播 ...
【技术保护点】
一种单例视频播放器的实现方法,其特征在于,包括以下步骤:步骤S10、APP启动,初始化播放器;步骤S20、在当前页面建立一个FrameLayout,作为容器放置播放器,将播放器放置于FrameLayout中,实现播放;步骤S30、如果需要跳转且连续播放,获取跳转目的页面的目的FrameLayout,跳转时不停止当前页面播放器,将当前页面FrameLayout中的播放器移动到目的FrameLayout中,并使Activity或者Fragment继承接口实现播放所需的函数的回调,开始连续播放。
【技术特征摘要】
1.一种单例视频播放器的实现方法,其特征在于,包括以下步骤:步骤S10、APP启动,初始化播放器;步骤S20、在当前页面建立一个FrameLayout,作为容器放置播放器,将播放器放置于FrameLayout中,实现播放;步骤S30、如果需要跳转且连续播放,获取跳转目的页面的目的FrameLayout,跳转时不停止当前页面播放器,将当前页面FrameLayout中的播放器移动到目的FrameLayout中,并使Activity或者Fragment继承接口实现播放所需的函数的回调,开始连续播放。2.如权利要求1所述的方法,其特征在于,在步骤S10中,在Application的onCreate()方法里调用VideoMediaController.init()函数进行播放器的初始化的。3.如权利要求2所述的方法,其特征在于,初始化播放器包括:设置准备超时时间;设置是否在线直播;设置缓存大小;设置是否开启自动播放;设置画面预览模式;设置播放器背景颜色。4.如权利要求1所述的方法,其特征在于,步骤S20和步骤S30中FrameLayout的大小等于预想的播放器的大小,播放器自适应FrameLayout的大小。5.如权利要求1所述的方法,其特征在于,所述播放所需的函数包括播放准备完成回调函数、播放进度回调函数以及播放错误回调函数。6.如权利要求1所述的方法,其特征在于,对所有播放所需的函数进行了再次封装,并使Activity或者Fragment继承再次封装的接口。7.如权利要求1所述的方法,其特征在于,跳转目的...
【专利技术属性】
技术研发人员:陈派大,刘文辉,洪光中,
申请(专利权)人:广州荔枝网络有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。