CN108989872B - 一种安卓电视背景快速切换方法、框架、服务器及存储介质 - Google Patents
一种安卓电视背景快速切换方法、框架、服务器及存储介质 Download PDFInfo
- Publication number
- CN108989872B CN108989872B CN201810753540.5A CN201810753540A CN108989872B CN 108989872 B CN108989872 B CN 108989872B CN 201810753540 A CN201810753540 A CN 201810753540A CN 108989872 B CN108989872 B CN 108989872B
- Authority
- CN
- China
- Prior art keywords
- background
- fragment
- resource
- canvas
- animation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/431—Generation of visual interfaces for content selection or interaction; Content or additional data rendering
- H04N21/4312—Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/60—Editing figures and text; Combining figures or text
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/431—Generation of visual interfaces for content selection or interaction; Content or additional data rendering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/485—End-user interface for client configuration
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明涉及一种安卓电视背景快速切换方法、框架、服务器及存储介质,本方法运用数据库与内存缓存建立背景资源,选取Fragment作为目标背景页面,同时运用Canvas设置绘制插值器与估值器来显示资源绘制的可控性,并通过对比分析ImageView和Fragment绘制方案,采用Fragment作为背景容器无论是资源占用还是可控性,都具备很大优势。
Description
技术领域
本发明涉及安卓电视和平板应用技术领域,具体涉及一种安卓电视背景快速切换方法、框架、服务器及存储介质。
背景技术
目前,安卓宽屏设备(Android电视、Android平板)等在提升用户体验方面会充分挖掘大屏优点,大屏设备在内容展示方面能给用户带来更震撼的视觉冲击,相同分辨率的图片或视频(1080P及以上级别),在5.5英寸屏幕手机上的预览效果与在64英寸屏幕安卓电视上的预览效果差异非常大,这也是智能手机朝大屏方向发展的根本原因。
有鉴于此,视频直播类应用为提升用户感官体验,会在用户操作切换视频直播内容时,动态切换窗口背景(Dynamically changing background resource,简称DCBR),以此来凸显出高清资源的视觉效果。当前DCBR主流的实现方式,首先是获取图片资源(Bitmap、Drawable),然后开启后台任务将图片资源适配到目标背景容器(ImageView、View、Window),最后目标背景容器会将图片资源绘制到自身图层的最底层。在这个过程中,选取目标背景容器和资源绘制方案尤为重要。
目前,开发领域选取目标背景容器主要选用ImageView或者Window,ImageView为Android系统源生的图片载体,而Window为整个应用可视化内容的最外层容器,二者都具有较高的稳定性和兼容性,但缺点是内部缺乏高效的资源回收机制和扩展性,无法对其进行业务延展。而资源绘制方案多采用先生成图片资源(Bitmap),然后获取Bitmap的色彩资源值,然后将色彩资源值绘制到Canvas上,这个绘制过程在UI线程中进行,并采取一步绘制到位的策略,整个绘制过程不可控。
发明内容
鉴于现有技术存在的问题,本发明的目的是提供一种安卓电视背景快速切换方法、框架、服务器及存储介质,克服了传统技术方案的缺陷,运用Fragment为目标背景页面,由于Fragment本质就是ViewGroup,其相比View具有较高的业务扩展性,因此能够很好的嵌入大量的背景切换业务,且在Fragment绘制背景资源过程中加入动画插值器来控制绘制速率,从而实现绘制的可控性。
为了实现上述目的,本发明采用的技术方案为一种安卓电视背景快速切换方法,所述方法包括以下步骤:
S1、创建背景资源,从服务器端获取背景资源链接,使用图片加载框架下载图片字节流,以字节数据格式存储到本地数据库,并建立临时内存缓存,运用Canvas画布绘制背景;
S2、选取Fragment碎片器为目标背景页面,获取Fragment后创建新的空白背景页面,并将新建空白背景页面添加至已有页面的最底层,所述Canvas画布为Fragment的组成部分,添加绘制估值器用于控制Canvas画布的绘制,估值器会提前计算即将绘制的资源目标值;
S3、创建时态动画,用于控制Canvas画布容器背景资源绘制的进度,改变背景资源,实现背景快速切换;
S4、对比分析采用ImageView与采用Fragment作为背景绘制容器在绘制的资源占用情况。
在上述技术方案中,所述步骤S1中,字节数据存储于所述临时内存的格式为Bitmap格式。
在上述技术方案中,所述步骤S1中,运用Canvas画布绘制背景包括以下步骤:
S11、Canvas画布在绘制背景前,提前从所述临时内存中读取Bitmap格式缓存数据;
S12、如果所述内存中没有所述Bitmap缓存数据,将通过读取本地数据库中所述下载的图片字节数据流,将其转换Bitmap格式,并将转换完成的Bitmap缓存到内存中,等待后续Canvas画布绘制使用。
在上述技术方案中,所述步骤S2中,所述估值器为双精度浮点型估值器。
在上述技术方案中,所述步骤S3包括以下步骤:
S31、测量Fragment背景容器宽高,同时将所述Bitmap进行缩放,缩放的目标分辨率为Fragment背景容器宽高;
S31、创建时态动画,给所述时态动画赋予时间值,动画需要所述时间值内完成,时间短执行快,时间长执行慢;
S32、给步骤S31中创建动画设置加减速插值器,用于控制动画的执行速率和平顺性,加减速插值器采用S型平滑算法,所述S型平滑算法的函数为:其中Y为动画执行的进度值,X为时间值取值区间为[0,200],X的单位为MS,通过加减速插值器,每隔1MS,时态动画就会在执行过程中会输出对应当前时间的进度值Y;
在上述技术方案中,所述双精度浮点型估值器通过执行的进度值Y计算动画执行下一步的目标值,通过所述估值器提前计算出时态动画下一步即将执行的目标值,如果将目标值置为上一步的目标值,那么时态动画就不会更新,此时Canvas就不会执行新的绘制。在上述技术方案中,所述步骤S4包括以下步骤:
S41、运用ImageView为背景绘制容器,在200ms内,绘制完成60组资源背景的内存消耗的峰值在38M~40M之间;
S42、运用Fragment为背景绘制容器,在200ms内,绘制完60组资源背景的内存消耗峰值在34M~38M之间。
本发明还公开一种安卓电视背景快速切换框架,所述框架包括背景资源创建层、背景容器选取层、估值器控制层和资源消耗分析层;
背景资源创建层,用于创建背景资源,从服务器端获取背景资源链接,使用图片加载框架下载图片字节流,以字节数据格式存储到本地数据库,并建立临时内存缓存,运用Canvas画布绘制背景;
背景容器选取层,用于选取Fragment碎片器为目标背景页面,获取Fragment后创建新的空白背景页面,并将新建空白背景页面添加至已有页面的最底层,所述Canvas画布为Fragment的组成部分,添加绘制估值器用于控制Canvas画布的绘制,估值器会提前计算即将绘制的资源目标值;;
估值器控制层,用于创建时态动画,控制Canvas画布容器背景资源绘制的进度,改变背景资源,实现背景快速切换;
资源消耗分析层,用于对比分析采用ImageView与采用Fragment作为背景绘制容器在绘制的资源占用情况。
本发明还公开一种安卓电视背景快速切换框架,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述一种安卓电视背景快速切换方法的步骤。
本发明还公开一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现上述任一项所述一种安卓电视背景快速切换方法的步骤。
本发明一种安卓电视背景快速切换方法、框架、服务器及存储介质,具有以下有益效果:(1)采用Fragment作为背景绘制的页面,同时可穿插较多的业务逻辑,例如加入动画和插值器、估值器等;(2)采用Fragment作为绘制容器,在Canvas中加入估值器,根据时态动画的插值器分度值可提前计算出下一步资源绘制的目标值,通过估值器的返回值来决定是否进行下一步绘制,从而实现资源绘制的可控性;(3)采用Fragment作为背景绘制的页面,相较于ImageView,其资源消耗低,可实现大批量的资源快速绘制;
附图说明
图1为本发明实施例一提供一种安卓电视背景快速切换方法的流程图;
图2为本发明实施例二提供的Canvas画布绘制背景方法流程图;
图3为本发明实施例三提供的估值器控制容器背景资源绘制方法流程图;
图4为本发明实施例四提供的资源消耗对比方法流程图;
图5为本发明实施例五提供的一种安卓电视背景快速切换框架模块图;
图6为本发明实施例六提供的服务器的结构示意图。
具体实施方式
本发明提供一种安卓电视背景快速切换方法、框架、服务器及存储介质,运用Fragment为目标背景页面,由于Fragment本质就是ViewGroup,其相比View具有较高的业务扩展性,因此能够很好的嵌入大量的背景切换业务,且在Fragment绘制背景资源过程中加入动画插值器来控制绘制速率,从而实现绘制的可控性。
为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
本发明如图1所示实施例一提供一种安卓电视背景快速切换方法,所述方法包括以下步骤:
S1、创建背景资源,从服务器端获取背景资源链接,使用图片加载框架下载图片字节流,以字节数据格式存储到本地数据库,并建立临时内存缓存,运用Canvas画布绘制背景;
可选的,所述字节数据存储于所述临时内存的格式为Bitmap格式。
所述Canvas画布安卓系统可视化控件(View、ViewGroup)以及可视化资源(Bitmap、Drawable)的绘制作用组件单元;
其中,View(视图)是Android系统的一个超类,是Android系统应用层界面可视化的基本组件单元;所述ViewGroup(视图组)是View的子类,是Android系统可视化组件View的基本容器单元;所述Bitmap(位图)扩展名可以是.bmp或者.dib。位图是Windows标准格式图形文件,它将图像定义为由点(像素)组成,每个点可以由多种色彩表示,包括2、4、8、16、24和32位色彩;所述Drawable(可绘制资源)可绘制物,表示一些可以绘制在Canvas上的对象,其本质和Bitmap类似;
可选的,为实现服务器端控制,在获取背景资源方式上采取动态获取方式。
S2、选取Fragment碎片器为目标背景页面,获取Fragment后创建新的空白背景页面,并将新建空白背景页面添加至已有页面的最底层,所述Canvas画布为Fragment的组成部分,添加绘制估值器用于控制Canvas画布的绘制,估值器会提前计算即将绘制的资源目标值;
所述Fragment(碎片器)为一个具有自己生命周期的控件,它有自己的处理输入事件的能力,有自己的生命周期,又必须依赖于Activity,能互相通信和托管;所述Activity为安卓系统的四大组件(Activity、Service、BroadcastReceiver、ContentProvider)之一,Activity通常就是一个单独的屏幕,它上面可以显示一些控件也可以监听并处理用户的事件做出响应;
具体的,基于安卓碎片化问题,Fragment的本质是ViewGroup,但是为了实现不同设备的适配需求,Fragment具有较高的业务扩展性和强内聚性。选取Fragment作为背景容器,可通过Fragment获取其自身的DecorView(最底层根View),由于DecorView位于整个Activity视图树(ViewTree)节点的根节点处,因此DecorView的Layer层级处于整个Window的最底层,非常适合作为Window背景资源绘制的“画板”。
所述DecorView为当前页面(Activity、Frgament)窗口最顶层的视图,也就是根视图。所述Layer(视图图层)安卓系统中绘制图像的基本容器单元,类似于PhotoShop中的图层,图层以层叠方式进行展示;
S3、创建时态动画,用于控制Canvas画布容器背景资源绘制的进度,改变背景资源,实现背景快速切换;
可选的,所述估值器为双精度浮点型估值器TypeEvaluator<Double>,所述TypeEvaluator可以更具目标对象的属性来改变其属性值,比如要改变颜色属性,可以直接改变其值,而Interpolator改变的是进度,可以直接指定瞬间完成动画整体的80%。所述Interpolator(插值器)负责控制动画变化的速率,使得基本的动画效果能够以匀速、加速、减速、抛物线速率等各种速率变化。
所述估值器是设置属性值从初始值过渡到结束值的变化具体数值,插值器决定值的变化规律(匀速、加速),即决定的是变化趋势;而接下来的具体变化数值则交给而估值器,属性动画特有的属性,协助插值器实现非线性运动的动画效果。所述非线性运动,动画改变的速率不是一成不变的,如加速&减速运动都属于非线性运动。
S4、对比分析采用ImageView与采用Fragment作为背景绘制容器在绘制的资源占用情况。
所述ImageView图像视图,直接继承自View类,它的主要功能是用于显示图片。
本发明如图2所示实施例二提供运用Canvas画布绘制背景的方法,所述方法包括以下步骤:
S11、Canvas画布在绘制背景前,提前从所述临时内存中读取Bitmap格式缓存数据;
S12、如果所述内存中没有所述Bitmap缓存数据,将通过读取本地数据库中所述下载的图片字节数据流,将其转换Bitmap格式,并将转换完成的Bitmap缓存到内存中,等待后续Canvas画布绘制使用。
本发明如图3所示实施例三提供估值器控制容器背景资源绘制方法,所述方法包括以下步骤:
S31、测量Fragment背景容器宽高,同时将所述Bitmap进行缩放,缩放的目标分辨率为Fragment背景容器宽高;
可选的,运用DisplayMetrics进行测量背景容器宽高[width,height],所述DisplayMetrics为Android的类,可以得到分辨率等信息。
构造函数DisplayMetrics不需要传递任何参数;getDefaultDisplay()方法将取得的宽高维度存放于DisplayMetrics对象中,而取得的宽高维度是以像素为单位(Pixel),“像素”所指的是“绝对像素”而非“相对像素”。
S31、创建时态动画,给所述时态动画赋予时间值,动画需要所述时间值内完成,时间短执行快,时间长执行慢;
可选的,通过安卓SDK(software development kit)软件开发工具包中原生的TimeAnimator来创建时态动画,同时动画还必须设置执行时间,其中动画默认值为200ms。所述TimeAnimator提供了一个简单的回调机制,通过TimeAnimator.TimeListener,在动画的每一帧处通知你。这个动画器没有时间,插值或是对象值设定。回调监听器为每一帧动画接受信息,包括总运行时间和从前一帧到现在的运行时间。视图动画只能作用于View,而且视图动画改变的仅仅是View的绘制效果,View的真正属性没有改变。而属性动画则可以改变真正的属性。大致的意思就是属性动画就是在一段时间内,按照一定的规律改变对象的属性,使对象展示出动画效果。
S32、给步骤S31中创建动画设置加减速插值器,用于控制动画的执行速率和平顺性;
可选的,加减速插值器的计算函数采用S型平滑算法,所述S型平滑算法的函数为:其中Y为动画执行的进度值,X为时间值[0,200],X的单位为MS,通过加减速插值器,每隔1MS,动画就会在执行过程中会输出对应当前时间的进度值Y。
所述加减速插值器(AccelerateDecelerateInterpolator),速度从0开始,先加速后加速,最后速度为0,即为其变化率开始和结束缓慢,但通过中间加速。
可选的,所述估值器通过进度值Y计算动画执行下一步的目标值。构建的DoubleEvaluator估值器,其中fraction=y,evaluate函数计算的返回值即为动画下一步要执行的目标值,通过估值器提前计算出动画下一步即将执行的目标值,如果将目标值置为上一步的目标值,那么动画就不会更新,此时资源就不会执行新的绘制,总而达到控制资源绘制的可控性;
运用双精度浮点型估值器(TypeEvaluator<Double>)实现绘制过程的可控性,TypeEvaluator<Double>的实现过程如下:
本发明如图4所示实施例四提供资源消耗对比方法,所述方法包括以下步骤:
S41、运用ImageView为背景绘制容器,在200ms内,绘制完成60组资源背景的内存消耗的峰值在38M~40M之间;
S42、运用Fragment为背景绘制容器,在200ms内,绘制完60组资源背景的内存消耗峰值在34M~38M之间;
通过上述分析得出采用Fragment作为背景资源绘制容器,其内存消耗较ImageView少2M大小,如果资源数量在100组以上,则内存消耗的差距将进一步拉大。其次,采用Fragment结合估值器可实现绘制的可控性。
本发明提供一种安卓电视背景快速切换框架,所述框架包括背景资源创建层、背景容器选取层、估值器控制层和资源消耗分析层;
背景资源创建层,用于创建背景资源,从服务器端获取背景资源链接,使用图片加载框架下载图片字节流,以字节数据格式存储到本地数据库,并建立临时内存缓存,运用Canvas画布绘制背景;
背景容器选取层,用于选取Fragment碎片器为目标背景页面,获取Fragment后创建新的空白背景页面,并将新建空白背景页面添加至已有页面的最底层,所述Canvas画布为Fragment的组成部分,添加绘制估值器用于控制Canvas画布的绘制,估值器会提前计算即将绘制的资源目标值;
估值器控制层,用于创建时态动画,控制Canvas画布容器背景资源绘制的进度,改变背景资源,实现背景快速切换;
资源消耗分析层,用于对比分析采用ImageView与采用Fragment作为背景绘制容器在绘制的资源占用情况。
本发明如图6所示实施例六提供一种安卓电视背景快速切换框架的服务器结构示意图,所述实施例的服务器包括:处理器60、存储器61以及存储在所述存储器61中并可在所述处理器60上运行的计算机程序62。所述处理器60执行所述计算机程序62时实现上述各方法实施例中的步骤,所述处理器60执行所述计算机程序62时实现上述装置实施例中各模块的功能。
所述一种安卓电视背景快速切换框架的服务器可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备,所述一种安卓电视背景快速切换框的服务器可包括,但不限于,处理器60、存储器61。图6仅仅是对此服务器的示例,并不构成对此服务器的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,所述一种直播房间列表下拉获取更多房间实现系统的服务器还可以包括输入输出设备63、显示设备64等。
所述处理器60可以是中央处理单元,还可以是其他通用处理器、数字信号处理器、专用集成电路、现成可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器61可以是所述一种安卓电视背景快速切换框的服务器的内部存储单元、硬盘或内存。所述存储器61也可以是所述服务器的外部存储设备,或配备的插接式硬盘,智能存储卡,安全数字卡,闪存卡等。
进一步地,所述存储器61还可以既包括所述服务器的内部存储单元也包括外部存储设备。所述存储器61用于存储所述计算机程序以及所述电子设备所需的其他程序和数据。所述存储器61还可以用于暂时地存储已经输出或者将要输出的数据。
所述的输入输出设备63可用于接收输入的数字或字符信息,具体的,输入输出设备63还可以包括但不限于键盘、鼠标、操作杆等中的一种和多种。
所述的显示设备64可用于显示由用户输入的信息或提供给用户信息以及终端的各种菜单,显示设备64可包括显示面板,可选的,可采用液晶显示器。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各实施例的模块、方法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种安卓电视背景快速切换方法,其特征在于,所述方法包括以下步骤:
S1、创建背景资源,从服务器端获取背景资源链接,使用图片加载框架下载图片字节流,以字节数据格式存储到本地数据库,并建立临时内存缓存,运用Canvas画布绘制背景;
S2、选取Fragment为目标背景页面,获取Fragment后创建新的空白背景页面,并将新建空白背景页面添加至已有页面的最底层,所述Canvas画布为Fragment的组成部分,添加估值器用于控制Canvas画布的绘制,估值器会提前计算即将绘制的资源目标值;
S3、创建时态动画,用于控制Canvas画布背景资源绘制的进度,改变背景资源,实现背景快速切换;
S4、对比分析采用ImageView与采用Fragment作为背景绘制容器在绘制的资源占用情况。
2.根据权利要求1所述一种安卓电视背景快速切换方法,其特征在于,所述步骤S1中,字节数据存储于所述临时内存的格式为Bitmap格式。
3.根据权利要求2所述一种安卓电视背景快速切换方法,其特征在于,所述步骤S1中,运用Canvas画布绘制背景包括以下步骤:
S11、Canvas画布在绘制背景前,提前从所述临时内存中读取Bitmap格式缓存数据;
S12、如果所述内存中没有所述Bitmap缓存数据,将通过读取本地数据库中所述下载的图片字节数据流,将其转换Bitmap格式,并将转换完成的Bitmap缓存到内存中,等待后续Canvas画布绘制使用。
4.根据权利要求2所述一种安卓电视背景快速切换方法,其特征在于,所述步骤S2中,所述估值器为双精度浮点型估值器。
5.根据权利要求4所述一种安卓电视背景快速切换方法,其特征在于,所述步骤S3包括以下步骤:
S31、测量Fragment背景容器宽高,同时将所述Bitmap进行缩放,缩放的目标分辨率为Fragment背景容器宽高;
S32、创建时态动画,给所述时态动画赋予时间值,动画需要所述时间值内完成,时间短执行快,时间长执行慢;
S33、给步骤S32中创建动画设置加减速插值器,用于控制动画的执行速率和平顺性,加减速插值器采用S型平滑算法,所述S型平滑算法的函数为:y=1/(1+exp(-x)),其中Y为动画执行的进度值,X为时间值取值区间为[0,200],X的单位为MS,通过加减速插值器,每隔1MS,时态动画就会在执行过程中会输出对应当前时间的进度值Y。
6.根据权利要求5所述一种安卓电视背景快速切换方法,其特征在于,所述双精度浮点型估值器通过执行的进度值Y计算动画执行下一步的目标值,通过所述估值器提前计算出时态动画下一步即将执行的目标值,如果将目标值置为上一步的目标值,那么时态动画就不会更新,此时Canvas就不会执行新的绘制。
7.根据权利要求1所述一种安卓电视背景快速切换方法,其特征在于,所述步骤S4包括以下步骤:
S41、运用ImageView为背景绘制容器,在200ms内,绘制完成60组资源背景的内存消耗的峰值在38M~40M之间;
S42、运用Fragment为背景绘制容器,在200ms内,绘制完60组资源背景的内存消耗峰值在34M~38M之间。
8.一种安卓电视背景快速切换框架的装置,其特征在于,装置包括框架、处理器、计算机程序,所述处理器执行所述计算机程序实现所述框架的功能;所述框架包括背景资源创建层、背景容器选取层、估值器控制层和资源消耗分析层;
背景资源创建层,用于创建背景资源,从服务器端获取背景资源链接,使用图片加载框架下载图片字节流,以字节数据格式存储到本地数据库,并建立临时内存缓存,运用Canvas画布绘制背景;
背景容器选取层,用于选取Fragment为目标背景页面,获取Fragment后创建新的空白背景页面,并将新建空白背景页面添加至已有页面的最底层,所述Canvas画布为Fragment的组成部分,添加估值器用于控制Canvas画布的绘制,估值器会提前计算即将绘制的资源目标值;
估值器控制层,用于创建时态动画,控制Canvas画布背景资源绘制的进度,改变背景资源,实现背景快速切换;
资源消耗分析层,用于对比分析采用ImageView与采用Fragment作为背景绘制容器在绘制的资源占用情况。
9.一种安卓电视背景快速切换框架的装置,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7中任一项所述一种安卓电视背景快速切换方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述一种安卓电视背景快速切换方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810753540.5A CN108989872B (zh) | 2018-07-10 | 2018-07-10 | 一种安卓电视背景快速切换方法、框架、服务器及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810753540.5A CN108989872B (zh) | 2018-07-10 | 2018-07-10 | 一种安卓电视背景快速切换方法、框架、服务器及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108989872A CN108989872A (zh) | 2018-12-11 |
CN108989872B true CN108989872B (zh) | 2021-01-01 |
Family
ID=64537653
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810753540.5A Active CN108989872B (zh) | 2018-07-10 | 2018-07-10 | 一种安卓电视背景快速切换方法、框架、服务器及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108989872B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111258483B (zh) * | 2020-01-20 | 2021-06-15 | 北京无限光场科技有限公司 | 图像缩放显示方法、装置、计算机设备及可读介质 |
CN111966333A (zh) * | 2020-07-28 | 2020-11-20 | 锐达互动科技股份有限公司 | 一种插入动态模板背景的实现方法、装置、设备和介质 |
CN114721759B (zh) * | 2022-03-31 | 2023-11-24 | 珠海豹趣科技有限公司 | Android桌面视图展示方法、装置及电子设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105912207A (zh) * | 2016-04-08 | 2016-08-31 | 广州阿里巴巴文学信息技术有限公司 | 图片显示方法、装置以及用户终端 |
CN105975239A (zh) * | 2016-04-29 | 2016-09-28 | 广东远峰电子科技股份有限公司 | 一种车载电子设备显示屏动态背景的生成方法和装置 |
CN107102863A (zh) * | 2017-05-08 | 2017-08-29 | 广州视源电子科技股份有限公司 | 一种根据轮播图片自动确定轮播区域背景色的方法及系统 |
CN107368311A (zh) * | 2017-07-10 | 2017-11-21 | 武汉斗鱼网络科技有限公司 | 一种多Fragment之间的通信方法及系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8532919B2 (en) * | 2011-12-26 | 2013-09-10 | TrackThings LLC | Method and apparatus of physically moving a portable unit to view an image of a stationary map |
-
2018
- 2018-07-10 CN CN201810753540.5A patent/CN108989872B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105912207A (zh) * | 2016-04-08 | 2016-08-31 | 广州阿里巴巴文学信息技术有限公司 | 图片显示方法、装置以及用户终端 |
CN105975239A (zh) * | 2016-04-29 | 2016-09-28 | 广东远峰电子科技股份有限公司 | 一种车载电子设备显示屏动态背景的生成方法和装置 |
CN107102863A (zh) * | 2017-05-08 | 2017-08-29 | 广州视源电子科技股份有限公司 | 一种根据轮播图片自动确定轮播区域背景色的方法及系统 |
CN107368311A (zh) * | 2017-07-10 | 2017-11-21 | 武汉斗鱼网络科技有限公司 | 一种多Fragment之间的通信方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN108989872A (zh) | 2018-12-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11601630B2 (en) | Video processing method, electronic device, and non-transitory computer-readable medium | |
US11783522B2 (en) | Animation rendering method and apparatus, computer-readable storage medium, and computer device | |
CN108989872B (zh) | 一种安卓电视背景快速切换方法、框架、服务器及存储介质 | |
WO2015131787A1 (zh) | 一种屏幕适配的方法和装置 | |
US8711152B2 (en) | Animation control apparatus, animation control method, and non-transitory computer readable recording medium | |
CN107179889B (zh) | 界面色彩调节方法、网页色彩调节方法及装置 | |
US20140092012A1 (en) | Adaptive tone map to a region of interest to yield a low dynamic range image | |
CN112596843B (zh) | 图像处理方法、装置、电子设备及计算机可读存储介质 | |
US9292944B2 (en) | System and method for computing an image | |
CN110996174B (zh) | 一种视频画质增强方法及其相关设备 | |
CN112714357B (zh) | 视频播放方法、视频播放装置、电子设备和存储介质 | |
CN112991412B (zh) | 一种液晶仪表序列帧动画性能优化方法及液晶仪表 | |
CN110858388B (zh) | 一种增强视频画质的方法和装置 | |
CN113744696A (zh) | 背光模组亮度的调节方法、装置及存储介质 | |
CN113096592B (zh) | 一种消除显示屏残影的方法、设备及显示设备 | |
CN115880461A (zh) | 一种增强现实图像生成方法、装置、设备及存储介质 | |
CN110874816B (zh) | 一种图像处理方法、装置、移动终端及存储介质 | |
CN111462007B (zh) | 图像处理方法、装置、设备及计算机存储介质 | |
CN113495658A (zh) | Svg图形的交互展示方法、终端设备、计算机设备及介质 | |
US20240087207A1 (en) | Depth analyzer and shading rate controller | |
US20240087169A1 (en) | Realtime conversion of macroblocks to signed distance fields to improve text clarity in video streaming | |
CN113691866B (zh) | 视频处理方法、装置、电子设备和介质 | |
CN113160377B (zh) | 用于处理图像的方法、装置、设备以及存储介质 | |
US20230196623A1 (en) | Content-based encoding of digital images | |
CN116466952B (zh) | 控件视觉效果元素调节方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |