CN109064527A - 动态配置动画的实现方法、装置、存储介质及安卓终端 - Google Patents

动态配置动画的实现方法、装置、存储介质及安卓终端 Download PDF

Info

Publication number
CN109064527A
CN109064527A CN201810720314.7A CN201810720314A CN109064527A CN 109064527 A CN109064527 A CN 109064527A CN 201810720314 A CN201810720314 A CN 201810720314A CN 109064527 A CN109064527 A CN 109064527A
Authority
CN
China
Prior art keywords
animation
dynamic configuration
mapping relations
configuration data
parameters
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.)
Granted
Application number
CN201810720314.7A
Other languages
English (en)
Other versions
CN109064527B (zh
Inventor
张磊
张文明
陈少杰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Bangqi Technology Innovation Co ltd
Original Assignee
Wuhan Douyu Network Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Wuhan Douyu Network Technology Co Ltd filed Critical Wuhan Douyu Network Technology Co Ltd
Priority to CN201810720314.7A priority Critical patent/CN109064527B/zh
Publication of CN109064527A publication Critical patent/CN109064527A/zh
Application granted granted Critical
Publication of CN109064527B publication Critical patent/CN109064527B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/802D [Two Dimensional] animation, e.g. using sprites

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本发明实施例公开了一种动态配置动画的实现方法、装置、存储介质及安卓终端。该方法包括:获取动画的动态配置数据;对所述动态配置数据进行解析,得到动态配置动画参数;其中,所述动画参数至少包括:映射关系、动画开始位置以及动画持续时间;通过调用预定义的动画开始函数,执行所述动态配置动画。通过采用本申请所提供的技术方案,可以灵活配置动画逻辑,并且能够根据动态配置动画类型进行动态配置动画效果的实现。

Description

动态配置动画的实现方法、装置、存储介质及安卓终端
技术领域
本发明实施例涉及动画实现技术领域,尤其涉及一种动态配置动画的实现方法、装置、存储介质及安卓终端。
背景技术
在Android软件的开发过程中我们通常都会使用到动画效果的设计,然而,在Android软件的开发过程中动画效果的开发使用流程非常复杂,并且在动画的设计和开展过程中需要经过很多步骤才能实施动画效果的实现,也就是说传统方案中为了实现动画效果会花费大量的人力和物力成本,从而导致开发效率低下。
现有技术是通过使用Android系统中提供的动画类API(ApplicationProgramming Interface,应用程序编程接口)来直接构建整个动画逻辑,不仅这种构建流程非常复杂,而且,这种方案只能够针对系统中通用的几种动画类型,这就使动画类型过于局限。上述动画效果的实现主要是是在本地实现的,一旦编程好代码,则动画按照已经编程好的代码来实现,实现方式相对固定,不够灵活。
发明内容
本发明实施例提供一种动态配置动画的实现方法、装置、存储介质及安卓终端,可以灵活配置动画逻辑,并且能够根据动态配置动画类型进行动态配置动画效果的实现。
第一方面,本发明实施例提供了一种动态配置动画的实现方法,该方法包括:
获取动画的动态配置数据;
对所述动态配置数据进行解析,得到动态配置动画参数;其中,所述动画参数至少包括:映射关系、动画开始位置以及动画持续时间;
通过调用预定义的动画开始函数,执行所述动态配置动画。
进一步的,对所述动态配置数据进行解析,得到动态配置动画参数;其中,所述动画参数至少包括:映射关系、动画开始位置以及动画持续时间,包括:
根据动态配置数据中的映射关系字符串确定动画参数中的映射关系;
根据所述动态配置数据中的X坐标和/或Y坐标,确定动画参数中的动画开始位置;
以及根据动画持续时间字符串确定动画的持续时间。
进一步的,所述执行所述动态配置动画,包括:
通过获取动画视图的变化信息,确定动画视图在映射关系上的待采集的样本点;
根据所述样本点,确定所述动态配置动画的动画轨迹,实现动态配置动画效果的显示。
进一步的,通过获取动画视图的变化信息,确定动画视图在映射关系上的待采集的样本点,包括:
通过调用预定义的Handler对象中的sendEmptyMessage()向handleMessage中定期发送动画更新消息;
通过调用view中的一个view.scrollTo()函数对所述动画更新消息中的动画视图在映射关系上的待采集的样本点进行确定。
进一步的,所述定期发送动画更新消息包括,每隔50-100毫秒,发送一次动画更新信息。
进一步的,所述执行所述动态配置动画,还包括:
在执行动画的时间长度达到动画持续时间时,确定动画结束。
进一步的,所述方法还包括:
在所述动态配置动画执行过程中,通过调用反馈接口反馈动画的当前状态。
第二方面,本发明实施例还提供了一种动态配置动画的实现装置,该装置包括:
动态配置数据获取单元,用于获取动画的动态配置数据;
动画参数确定单元,用于对所述动态配置数据进行解析,得到动态配置动画参数;其中,所述动画参数至少包括:映射关系、动画开始位置以及动画持续时间;
动画执行单元,用于通过调用预定义的动画开始函数,执行所述动态配置动画。
第三方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本申请实施例所述的动态配置动画的实现方法。
第四方面,本申请实施例提供了一种安卓终端,包括存储器,处理器及存储在存储器上并可在处理器运行的计算机程序,所述处理器执行所述计算机程序时实现如本申请实施例所述的动态配置动画的实现方法。
本申请实施例所提供的技术方案,获取动画的动态配置数据;对所述动态配置数据进行解析,得到动态配置动画参数;其中,所述动画参数至少包括:映射关系、动画开始位置以及动画持续时间;通过调用预定义的动画开始函数,执行所述动态配置动画。通过采用本申请所提供的技术方案,可以灵活配置动画逻辑,并且能够根据动态配置动画类型进行动态配置动画效果的实现。
附图说明
图1是本发明实施例一提供的动态配置动画的实现方法的流程图;
图2是本发明实施例二提供的动态配置动画的实现装置的结构示意图;
图3为本申请实施例提供的一种安卓终端的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各步骤描述成顺序的处理,但是其中的许多步骤可以被并行地、并发地或者同时实施。此外,各步骤的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
实施例一
图1是本发明实施例一提供的动态配置动画的实现方法的流程图,本实施例可适用动态配置动画类型的实现的情况,该方法可以由本发明实施例所提供的动态配置动画的实现装置来执行,该装置可以由软件和/或硬件的方式来实现,并可集成于安卓终端中。
如图1所示,所述动态配置动画的实现方法包括:
S110、获取动画的动态配置数据。
其中,动态配置数据的获取可以是客户端通过网络从服务器端获取,还可以是客户端之间通过有线连接或者无线连接的方式相互传输来实现获取。动画的动态配置数据可以是包含一些动画信息的数据,比如动画的视图、动画的类型等,另外,这些信息从本地获取,比如在进行弹幕消息展示的过程中,可以在得到弹幕消息时确定动画的视图为弹幕消息文字,动画的类型可以为位移类型等。除此之外,动态配置数据还可以包含其他动画参数,可以通过字符串的形式标识,如针对位移类型的动画,可以通过字符串来表示该动画位移的映射关系,比如“Y=sinX”中,可以分别用字符标识“Y”、“=”和“sinX”,再通过预先定义好的解析方式进行解析,从而得到动画位移的映射关系。
在本实施例中,可选的,在获取动态配置数据之前可以由移动终端向服务器发送获取动态配置数据的请求。服务器可以根据请求下发具体的动态配置数据。其中,还可以在向服务器获取弹幕消息的同时获取与该弹幕消息相对应的动态配置数据的请求,从而服务器可以根据请求实现对弹幕消息的发送以及对弹幕消息动画实现的控制。
S120、对所述动态配置数据进行解析,得到动态配置动画参数;其中,所述动画参数至少包括:映射关系、动画开始位置以及动画持续时间。
其中,通过对动态配置数据进行解析,可以得到动态配置动画参数。在本实施例中,动画参数至少包括映射关系、动画开始位置以及动画持续时间。由此可以知道,本申请中所提供的技术方案所解析得到的动画参数不包括动画结束位置以及动画类型等。这样设置的原理在于:在一个已知映射关系的基础上,可以根据定期或者不定期的获取动画视图的位置信息,并将动画视图的位置信息显示出来,从而实现对动画效果的展示。
S130、通过调用预定义的动画开始函数,执行所述动态配置动画。
其中,动画开始函数可以是预先定义好的,动画开始函数可以用于输入动画视图、动画类型以及从动态配置数据中确定的映射关系、动画开始位置以及动画持续时间等动画参数。示例性的,可以在动画持续时间内,每隔30毫秒确定动画视图的位置,对动画视图的当前位置进行显示,从而可以得到动画视图沿着映射关系从动画开始位置进行移动的效果。这样设置的好处是可以在节省动态配置数据的长度的同时,还能够包含可以实现动画效果的动画参数,同时可以无需根据客户端本地已经设置好的动画轨迹进行显示,实现了数据配置灵活、简便,易于实现的同时可以符合用户的需求,呈现出各种形式的动画类型的效果。
本申请实施例所提供的技术方案,获取动画的动态配置数据;对所述动态配置数据进行解析,得到动态配置动画参数;其中,所述动画参数至少包括:映射关系、动画开始位置以及动画持续时间;通过调用预定义的动画开始函数,执行所述动态配置动画。通过采用本申请所提供的技术方案,可以灵活配置动画逻辑,并且能够根据动态配置动画类型进行动态配置动画效果的实现。
在上述技术方案的基础上,可选的,对所述动态配置数据进行解析,得到动态配置动画参数;其中,所述动画参数至少包括:映射关系、动画开始位置以及动画持续时间,包括:根据动态配置数据中的映射关系字符串确定动画参数中的映射关系;根据所述动态配置数据中的X坐标和/或Y坐标,确定动画参数中的动画开始位置;以及根据动画持续时间字符串确定动画的持续时间。
本技术方案中,可以根据映射关系,确定动画开始位置的坐标,其中,可以是横坐标(X坐标),也可以是纵坐标(Y坐标),还可以是点坐标,即(X,Y),这样设置可以针对不同的映射关系确定动画开始位置的表示方法,例如在Y=sinX的映射关系中,可以根据X的坐标确定动画开始位置,则无需再计算Y坐标,只利用X坐标就可以确定唯一的动画开始位置,可以简化动态配置数据的结构,并且保证得到的动画开始位置不会出现错误。相应的,也可以在一对多的映射中通过Y坐标来确定,或者通过点坐标(X,Y)的方式来确定。
在上述各技术方案的基础上,可选的,所述执行所述动态配置动画,包括:通过获取动画视图的变化信息,确定动画视图在映射关系上的待采集的样本点;根据所述样本点,确定所述动态配置动画的动画轨迹,实现动态配置动画效果的显示。这样设置的好处是可以通过采集到的样本点来实现对动画轨迹的绘制,从而在用户眼中实现沿着动画轨迹进行动画视图移动的效果。
在上述各技术方案的基础上,可选的,通过获取动画视图的变化信息,确定动画视图在映射关系上的待采集的样本点,包括:通过调用预定义的Handler对象中的sendEmptyMessage()向handleMessage中定期发送动画更新消息;通过调用view中的一个view.scrollTo()函数对所述动画更新消息中的动画视图在映射关系上的待采集的样本点进行确定。其中,可以通过Handler对象在线程之间进行延迟消息传输的机制来实现定期或者不定期的对动画视图位置的获取和定期或者不定期的在线程内部进行动画效果展示,这样设置可以克服对于Handler对象的使用习惯,将其使用在一个线程内部,可以避免通过计时器等其他手段记录动画视图位置需要动画暂停的弊端。
具体的,首先定义一个Handler对象mHandler,其中Handler类是Android系统中一个用于子线程和主线程之间进行信息传输的类,具体的定义方法如下所示:
在定义mHandler对象的时候通过@Override关键字复写了系统Handler对象中的handleMessage方法,这个被复写的handleMessage方法后面会对消息进行相应的处理来实现动画效果的展示。
在开启动画函数startAnim中首先通过mHandler中的mHandler.sendEmptyMessage(MES_START_ANIMATION);来向handleMessage函数中发送一个MES_START_ANIMATION的空消息,其中MES_START_ANIMATION是一个定义的一个int类型的常量且该常量的值是1。
这样在handleMessage函数通过调用switch-case语句对msg中的msg.what参数进行筛选,当筛选出MES_START_ANIMATION这个消息的时候就需要进行开始动画的操作了。
在上述各技术方案的基础上,可选的,所述定期发送动画更新消息包括,每隔50-100毫秒,发送一次动画更新信息。其中,这样设置的好处是可以避免传输太快导致对处理器的消耗,同时又可以避免传输太慢导致用户观看动画过程中会有一种动画卡顿的感觉,所以本实施例采用每隔50-100毫秒对动画视图的位置进行更新,具体的可以是50毫秒,60毫秒,70毫秒,80毫秒,90毫秒以及100毫秒,
在上述各技术方案的基础上,可选的,所述执行所述动态配置动画,还包括:在执行动画的时间长度达到动画持续时间时,确定动画结束。在本技术方案中,可以无需在先确定动画结束位置,可以根据动画视图沿着映射关系移动固定时间的方式来确定动画视图的动画结束位置。在确定动画持续时间长度的基础上,也可以不用定义动画视图沿着映射关系所运动的速度快慢以及方向,这些都可以在上述的动画更新的过程中体现出来。而执行者只要按照映射关系控制动画视图从开始位置移动,直至持续时间完成后动画结束即可。
另外,在确定动画结束位置或者确定动画执行时间答案都动画持续时间后,确定动画结束,可以通过反馈函数来向调用者反馈,进而实现释放动画执行线程。
并且,本发明实施例所提供的技术方案可以实现同时对多个动态配置数据进行接收和解析,从而得到不同的动画参数,再将不同的动画参数对不同的动画视图进行动画效果的展示,从而实现同时对多个动画效果进行显示的目的。
在上述各技术方案的基础上,可选的,所述方法还包括:在所述动态配置动画执行过程中,通过调用反馈接口反馈动画的当前状态。
其中,IAnimationCallback的设计主要是方便用于在通用动画实现方法设计中将动画的状态进行反馈的实现方法。具体的实施如下所述:
动画状态反馈的接口定义方式如下所示:
将该接口协议设计为一个public类型的,这样可以方便后期其他类对象有权限对该协议进行访问。
协议的名称是IAnimationCallback,其中该协议中包含了三个状态信息的协议函数的设计分别是onAnimStart表示动画开始执行的状态信息、onAnimUpdate表示动画进行更新的状态信息、onAnimEnd表示动画结束的状态信息。
后续主要是通过这三个状态接口来将动画状态信息对调用者进行暴露实现,其中onAnimUpdate函数中设计了一个int类型的update参数,这个update表示动画执行的进度状态信息,进度状态从0(开始)到100(表示完毕)。
通过上述的设计就完成了动画状态反馈信息的描述的设计方法,对动画的各个状态能够实现有效的业务描述,可以方便调用者知道当前动画的执行生命周期情况等信息。
相应的,在本实施例中,可选的,所述方法还包括:在通过调用预定义的Handler对象中的sendEmptyMessage()向handleMessage中发送动画开始消息、动画更新消息以及动画结束消息时,通过调用反馈接口向调用者反馈当前动画状态。
其中,可以在开启动画函数startAnim中首先通过mHandler中的mHandler.sendEmptyMessage(MES_START_ANIMATION);来向handleMessage函数中发送一个MES_START_ANIMATION的空消息,其中MES_START_ANIMATION可以定义的一个int类型的常量且该常量的值是1。在handleMessage函数通过调用switch-case语句对msg中的msg.what参数进行筛选,当筛选出MES_START_ANIMATION这个消息的时候我们就需要进行开始动画的操作了。
在上述技术方案的基础上,可选的,所述方法还包括:当动画视图移动至动画结束位置时,通过调用预定义的Handler对象中的sendEmptyMessage()向handleMessage函数中发送动画结束消息。
同理,可以在视图View移动持续时间达到动画持续时间之后,通过调用mHandler.sendEmptyMessage(MES_ANIMATION_END);函数来向消息接受函数handleMessage中分发一个结束的消息,其中MES_ANIMATION_END是一个int类型的常量值3,并在handleMessage函数调用switch-case语句对msg中的msg.what参数进行筛选。
在上述技术方案的基础上,可选的,在当动画视图移动至动画结束位置时,通过调用预定义的Handler对象中的sendEmptyMessage()向handleMessage函数中发送动画结束消息之后,还包括:通过调用mHandler.removeMessages()函数将动画更新消息清空。
在动画执行结束后,可以对其中的动画更新信息进行清除,这样设置的好处是可以避免动画已经结束,却还有未被处理的动画更新消息,从而导致动画显示过程中出现混乱。
在上述技术方案的基础上,可选的,通过调用预定义的Handler对象中的sendEmptyMessage()向handleMessage中发送动画更新消息,所述动画更新消息包括动画视图的当前状态;通过调用view中的一个view.scrollTo()函数来对所述当前状态进行显示;当所述动画视图的状态更新时,将更新后的状态作为所述当前状态,重复执行发送动画视图的当前状态和对所述状态进行显示的操作,直至所述动态配置动画类型的动画更新结束。
其中,可以通过调用mHandler.sendEmptyMessage(MES_UPDATE_ANIMATION);函数来向handleMessage函数发送一条更新的消息,其中MES_UPDATE_ANIMATION是一个int类型的常量其值是2。相应的,在handleMessage函数通过调用switch-case语句对msg中的msg.what参数进行筛选,当筛选出MES_UPDATE_ANIMATION这个消息的时候就需要进行动画更新操作了。
其中,具体的动态配置动画更新操作是需要调用view中的一个view.scrollTo(dx,dy);函数来对视图View做一个小范围的位移操作,移动到坐标为dx,dy的位置。
具体的:当view.scroll To函数执行完成后我们需要通过调用mHandler.sendEmptyMessageDelayed(MES_UPDATE_ANIMATION,50);函数来继续向handleMessage函数发送消息,这次我们发送消息的时候对消息进行了延迟50毫秒后再进行发送,且发送的消息依旧是MES_UPDATE_ANIMATION消息。
具体的:之所以设计延迟50毫秒是为了避免消息发送速度太快导致动画执行速度看起来过快给人一种移动不正常的感觉,所以对其进行延迟处理后使得动画变得更加顺畅。其次我们依旧发送的是MES_UPDATE_ANIMATION消息,这样还是会执行到handleMessage中的MES_UPDATE_ANIMATION逻辑中,此时我们再次计算出view视图的下一个位置信息dx1和dy1,然后调用view.scrollTo(dx1,dy1);函数来对视图View做一个小范围的位移操作。然后继续发送mHandler.sendEmptyMessageDelayed(MES_UPDATE_ANIMATION,50);消息。
上述过程反复执行就可以使得视图view不断的进行位置移动,位置是可以随意移动的,因此可以制作任意类型的动画轨迹,这样也就通过消息机制的推荐来实现了动画效果的展示。
具体的,动画开始函数的定义如下:
public static void startAnim();
其中函数是一个public公有类型的函数,该函数是一个static类型的静态函数,之所以设计为静态函数的原因是方便后期进行调用处理。
其中,可以包含有:
View:表示需要被移动的视图对象,也就是动画执行的视图对象。
AnimType:表示支持的动画类型。
fromPos:是一个浮点数据,表示动画的开始位置信息。
Duration:是一个long类型的数据表示动画持续时间,周期单位是毫秒。
Listener:表示动画的监听器,用于监听动画的执行状态信息。其类型是上述定义的IAnimationCallback协议类型。
这个函数中将动画对象设计成一个View类型的对象,由于View在Android中可以用于承载各种元素信息,因此通过这种抽象的对象设计可以用于对Android中任意视图对象进行动画处理。其次,还设计一个IAnimationCallback类型的listener,这样整个动画的执行流程就可以通过设计的listener来进行状态信息的反馈处理了。
实施例二
图2是本发明实施例二提供的动态配置动画的实现装置的结构示意图。如图2所示,所述动态配置动画的实现装置,包括:
动态配置数据获取单元210,用于获取动画的动态配置数据;
动画参数确定单元220,用于对所述动态配置数据进行解析,得到动态配置动画参数;其中,所述动画参数至少包括:映射关系、动画开始位置以及动画持续时间;
动画执行单元230,用于通过调用预定义的动画开始函数,执行所述动态配置动画。
本申请实施例所提供的技术方案,获取动画的动态配置数据;对所述动态配置数据进行解析,得到动态配置动画参数;其中,所述动画参数至少包括:映射关系、动画开始位置以及动画持续时间;通过调用预定义的动画开始函数,执行所述动态配置动画。通过采用本申请所提供的技术方案,可以灵活配置动画逻辑,并且能够根据动态配置动画类型进行动态配置动画效果的实现。
上述产品可执行本发明任意实施例所提供的方法,具备执行方法相应的功能模块和有益效果。
实施例三
本申请实施例还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种动态配置动画的实现方法,该方法包括:
获取动画的动态配置数据;
对所述动态配置数据进行解析,得到动态配置动画参数;其中,所述动画参数至少包括:映射关系、动画开始位置以及动画持续时间;
通过调用预定义的动画开始函数,执行所述动态配置动画。
存储介质——任何的各种类型的存储器设备或存储设备。术语“存储介质”旨在包括:安装介质,例如CD-ROM、软盘或磁带装置;计算机系统存储器或随机存取存储器,诸如DRAM、DDR RAM、SRAM、EDO RAM,兰巴斯(Rambus)RAM等;非易失性存储器,诸如闪存、磁介质(例如硬盘或光存储);寄存器或其它相似类型的存储器元件等。存储介质可以还包括其它类型的存储器或其组合。另外,存储介质可以位于程序在其中被执行的计算机系统中,或者可以位于不同的第二计算机系统中,第二计算机系统通过网络(诸如因特网)连接到计算机系统。第二计算机系统可以提供程序指令给计算机用于执行。术语“存储介质”可以包括可以驻留在不同位置中(例如在通过网络连接的不同计算机系统中)的两个或更多存储介质。存储介质可以存储可由一个或多个处理器执行的程序指令(例如具体实现为计算机程序)。
当然,本申请实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的动态配置动画的实现操作,还可以执行本申请任意实施例所提供的动态配置动画的实现方法中的相关操作。
实施例四
本申请实施例提供了一种安卓终端,该安卓终端中可集成本申请实施例提供的动态配置动画的实现装置。图3为本申请实施例提供的一种安卓终端的结构示意图。如图3所示,该安卓终端可以包括:存储器301、中央处理器(Central Processing Unit,CPU)302(又称处理器,以下简称CPU)、电路板(图中未示出)和电源电路(图中未示出)。所述电路板安置在所述壳体围成的空间内部;所述CPU302和所述存储器301设置在所述电路板上;所述电源电路,用于为所述安卓终端的各个电路或器件供电;所述存储器301,用于存储可执行程序代码;所述CPU302通过读取所述存储器301中存储的可执行程序代码来运行与所述可执行程序代码对应的计算机程序,以实现以下步骤:
获取动画的动态配置数据;
对所述动态配置数据进行解析,得到动态配置动画参数;其中,所述动画参数至少包括:映射关系、动画开始位置以及动画持续时间;
通过调用预定义的动画开始函数,执行所述动态配置动画。
所述安卓终端还包括:外设接口303、RF(Radio Frequency,射频)电路305、音频电路306、扬声器311、电源管理芯片308、输入/输出(I/O)子系统309、触摸屏312、其他输入/控制设备310以及外部端口304,这些部件通过一个或多个通信总线或信号线307来通信。
应该理解的是,图示安卓终端300仅仅是安卓终端的一个范例,并且安卓终端300可以具有比图中所示出的更多的或者更少的部件,可以组合两个或更多的部件,或者可以具有不同的部件配置。图中所示出的各种部件可以在包括一个或多个信号处理和/或专用集成电路在内的硬件、软件、或硬件和软件的组合中实现。
下面就本实施例提供的用于动态配置动画的实现安卓终端进行详细的描述,该安卓终端以手机为例。
存储器301,所述存储器301可以被CPU302、外设接口303等访问,所述存储器301可以包括高速随机存取存储器,还可以包括非易失性存储器,例如一个或多个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
外设接口303,所述外设接口303可以将设备的输入和输出外设连接到CPU302和存储器301。
I/O子系统309,所述I/O子系统309可以将设备上的输入输出外设,例如触摸屏312和其他输入/控制设备310,连接到外设接口303。I/O子系统309可以包括显示控制器3091和用于控制其他输入/控制设备310的一个或多个输入控制器3092。其中,一个或多个输入控制器3092从其他输入/控制设备310接收电信号或者向其他输入/控制设备310发送电信号,其他输入/控制设备310可以包括物理按钮(按压按钮、摇臂按钮等)、拨号盘、滑动开关、操纵杆、点击滚轮。值得说明的是,输入控制器3092可以与以下任一个连接:键盘、红外端口、USB接口以及诸如鼠标的指示设备。
触摸屏312,所述触摸屏312是用户安卓终端与用户之间的输入接口和输出接口,将可视输出显示给用户,可视输出可以包括图形、文本、图标、视频等。
I/O子系统309中的显示控制器3091从触摸屏312接收电信号或者向触摸屏312发送电信号。触摸屏312检测触摸屏上的接触,显示控制器3091将检测到的接触转换为与显示在触摸屏312上的用户界面对象的交互,即实现人机交互,显示在触摸屏312上的用户界面对象可以是运行游戏的图标、联网到相应网络的图标等。值得说明的是,设备还可以包括光鼠,光鼠是不显示可视输出的触摸敏感表面,或者是由触摸屏形成的触摸敏感表面的延伸。
RF电路305,主要用于建立手机与无线网络(即网络侧)的通信,实现手机与无线网络的数据接收和发送。例如收发短信息、电子邮件等。具体地,RF电路305接收并发送RF信号,RF信号也称为电磁信号,RF电路305将电信号转换为电磁信号或将电磁信号转换为电信号,并且通过该电磁信号与通信网络以及其他设备进行通信。RF电路305可以包括用于执行这些功能的已知电路,其包括但不限于天线系统、RF收发机、一个或多个放大器、调谐器、一个或多个振荡器、数字信号处理器、CODEC(COder-DECoder,编译码器)芯片组、用户标识模块(Subscriber Identity Module,SIM)等等。
音频电路306,主要用于从外设接口303接收音频数据,将该音频数据转换为电信号,并且将该电信号发送给扬声器311。
扬声器311,用于将手机通过RF电路305从无线网络接收的语音信号,还原为声音并向用户播放该声音。
电源管理芯片308,用于为CPU302、I/O子系统及外设接口所连接的硬件进行供电及电源管理。
本申请实施例提供的安卓终端,可以灵活配置动画逻辑,并且能够根据动态配置动画类型进行动态配置动画效果的实现。
上述实施例中提供的动态配置动画的实现装置、存储介质及安卓终端可执行本申请任意实施例所提供的动态配置动画的实现方法,具备执行该方法相应的功能模块和有益效果。未在上述实施例中详尽描述的技术细节,可参见本申请任意实施例所提供的动态配置动画的实现方法。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (10)

1.一种动态配置动画的实现方法,其特征在于,包括:
获取动画的动态配置数据;
对所述动态配置数据进行解析,得到动态配置动画参数;其中,所述动画参数至少包括:映射关系、动画开始位置以及动画持续时间;
通过调用预定义的动画开始函数,执行所述动态配置动画。
2.根据权利要求1所述的方法,其特征在于,对所述动态配置数据进行解析,得到动态配置动画参数;其中,所述动画参数至少包括:映射关系、动画开始位置以及动画持续时间,包括:
根据动态配置数据中的映射关系字符串确定动画参数中的映射关系;
根据所述动态配置数据中的X坐标和/或Y坐标,确定动画参数中的动画开始位置;
以及根据动画持续时间字符串确定动画的持续时间。
3.根据权利要求1所述的方法,其特征在于,所述执行所述动态配置动画,包括:
通过获取动画视图的变化信息,确定动画视图在映射关系上的待采集的样本点;
根据所述样本点,确定所述动态配置动画的动画轨迹,实现动态配置动画效果的显示。
4.根据权利要求3所述的方法,其特征在于,通过获取动画视图的变化信息,确定动画视图在映射关系上的待采集的样本点,包括:
通过调用预定义的Handler对象中的sendEmptyMessage()向handleMessage中定期发送动画更新消息;
通过调用view中的一个view.scrollTo()函数对所述动画更新消息中的动画视图在映射关系上的待采集的样本点进行确定。
5.根据权利要求4所述的方法,其特征在于,所述定期发送动画更新消息包括,每隔50-100毫秒,发送一次动画更新信息。
6.根据权利要求1所述的方法,其特征在于,所述执行所述动态配置动画,还包括:
在执行动画的时间长度达到动画持续时间时,确定动画结束。
7.根据权利要求1所述的方法,其特征在于,还包括:
在所述动态配置动画执行过程中,通过调用反馈接口反馈动画的当前状态。
8.一种动态配置动画的实现装置,其特征在于,包括:
动态配置数据获取单元,用于获取动画的动态配置数据;
动画参数确定单元,用于对所述动态配置数据进行解析,得到动态配置动画参数;其中,所述动画参数至少包括:映射关系、动画开始位置以及动画持续时间;
动画执行单元,用于通过调用预定义的动画开始函数,执行所述动态配置动画。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7中任一所述的动态配置动画的实现方法。
10.一种安卓终端,包括存储器,处理器及存储在存储器上并可在处理器运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1-7中任一所述的动态配置动画的实现方法。
CN201810720314.7A 2018-07-02 2018-07-02 动态配置动画的实现方法、装置、存储介质及安卓终端 Active CN109064527B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810720314.7A CN109064527B (zh) 2018-07-02 2018-07-02 动态配置动画的实现方法、装置、存储介质及安卓终端

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810720314.7A CN109064527B (zh) 2018-07-02 2018-07-02 动态配置动画的实现方法、装置、存储介质及安卓终端

Publications (2)

Publication Number Publication Date
CN109064527A true CN109064527A (zh) 2018-12-21
CN109064527B CN109064527B (zh) 2023-10-31

Family

ID=64818515

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810720314.7A Active CN109064527B (zh) 2018-07-02 2018-07-02 动态配置动画的实现方法、装置、存储介质及安卓终端

Country Status (1)

Country Link
CN (1) CN109064527B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111951355A (zh) * 2020-08-04 2020-11-17 北京字节跳动网络技术有限公司 一种动画处理方法、装置、计算机设备及存储介质
WO2023231986A1 (zh) * 2022-06-02 2023-12-07 北京新唐思创教育科技有限公司 动画执行方法、装置、设备及介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6157864A (en) * 1998-05-08 2000-12-05 Rockwell Technologies, Llc System, method and article of manufacture for displaying an animated, realtime updated control sequence chart
US20020089504A1 (en) * 1998-02-26 2002-07-11 Richard Merrick System and method for automatic animation generation
CN105027110A (zh) * 2013-02-04 2015-11-04 谷歌公司 创建动画内容项的系统和方法
CN106815756A (zh) * 2016-12-05 2017-06-09 曾仲林 一种虚拟商城的交互方法、用户终端设备及服务器
CN107133030A (zh) * 2017-03-30 2017-09-05 腾讯科技(深圳)有限公司 动态事件执行方法及装置
CN107967344A (zh) * 2017-12-11 2018-04-27 上海携程商务有限公司 网页动画效果的实现方法、系统、设备及存储介质
CN108038160A (zh) * 2017-12-06 2018-05-15 央视动画有限公司 动态动画保存方法、动态动画调用方法及装置
CN108256062A (zh) * 2018-01-16 2018-07-06 携程旅游信息技术(上海)有限公司 网页动画实现方法、装置、电子设备、存储介质

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020089504A1 (en) * 1998-02-26 2002-07-11 Richard Merrick System and method for automatic animation generation
US6157864A (en) * 1998-05-08 2000-12-05 Rockwell Technologies, Llc System, method and article of manufacture for displaying an animated, realtime updated control sequence chart
CN105027110A (zh) * 2013-02-04 2015-11-04 谷歌公司 创建动画内容项的系统和方法
CN106815756A (zh) * 2016-12-05 2017-06-09 曾仲林 一种虚拟商城的交互方法、用户终端设备及服务器
CN107133030A (zh) * 2017-03-30 2017-09-05 腾讯科技(深圳)有限公司 动态事件执行方法及装置
CN108038160A (zh) * 2017-12-06 2018-05-15 央视动画有限公司 动态动画保存方法、动态动画调用方法及装置
CN107967344A (zh) * 2017-12-11 2018-04-27 上海携程商务有限公司 网页动画效果的实现方法、系统、设备及存储介质
CN108256062A (zh) * 2018-01-16 2018-07-06 携程旅游信息技术(上海)有限公司 网页动画实现方法、装置、电子设备、存储介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111951355A (zh) * 2020-08-04 2020-11-17 北京字节跳动网络技术有限公司 一种动画处理方法、装置、计算机设备及存储介质
WO2023231986A1 (zh) * 2022-06-02 2023-12-07 北京新唐思创教育科技有限公司 动画执行方法、装置、设备及介质

Also Published As

Publication number Publication date
CN109064527B (zh) 2023-10-31

Similar Documents

Publication Publication Date Title
CN108874539B (zh) 资源配置方法、装置、终端及存储介质
CN106686557B (zh) 广播处理方法、装置和终端设备
WO2020156199A1 (zh) 应用登录方法、装置、终端及存储介质
CN108595224A (zh) 应用程序提示方法、装置、存储介质及终端
CN108829456A (zh) 应用程序预加载方法、装置、存储介质及终端
CN111813492B (zh) 快应用的显示方法、装置、电子设备以及存储介质
CN108804156A (zh) 应用程序预加载方法、装置、存储介质及终端
WO2024109786A1 (zh) 即时通信会话信息的处理方法、装置及电子设备
WO2023098345A1 (zh) 订阅系统、方法、电子设备、服务器、存储介质及产品
CN111679811B (zh) Web服务构建方法及装置
CN106776259A (zh) 一种移动终端帧率检测方法、装置及移动终端
CN113971048A (zh) 应用程序的启动方法及装置、存储介质及电子设备
JP2021508198A (ja) 通知リマインド方法、グループ追加方法、装置、端末、および記憶媒体
CN109064527A (zh) 动态配置动画的实现方法、装置、存储介质及安卓终端
CN108769232A (zh) 应用资源推送方法、装置、设备及存储介质
CN108921530B (zh) 信息判断方法、装置、存储介质及终端
US20210377196A1 (en) Server-side ui task control for onboarding users to a messaging platform
CN108986187A (zh) 一种通用动画的实现方法、装置、存储介质及安卓终端
CN107592414A (zh) 一种消息回复方法、消息发送方法及系统
CN114286167A (zh) 跨设备的交互方法、装置、电子设备以及存储介质
CN114527925A (zh) 一种会话的方法、装置、电子设备和存储介质
CN113596529A (zh) 一种终端控制方法、装置、计算机设备和存储介质
CN112597022A (zh) 远程诊断方法、装置、存储介质及电子设备
CN110913384A (zh) 拨号卡的切换方法、装置、存储介质及终端
CN108804104A (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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20240110

Address after: 518000, 207, 2nd Floor, Aotexun Electric Power Building, No. 3 Songpingshan Road, North Zone, High tech Industrial Park, Xili Street, Nanshan District, Shenzhen, Guangdong Province

Patentee after: Shenzhen Bangqi Technology Innovation Co.,Ltd.

Address before: 11 / F, building B1, phase 4.1, software industry, No.1, Software Park East Road, Wuhan East Lake Development Zone, Wuhan City, Hubei Province, 430070

Patentee before: WUHAN DOUYU NETWORK TECHNOLOGY Co.,Ltd.