CN117130678A - 动画播放方法、装置、电子设备和计算机可读存储介质 - Google Patents
动画播放方法、装置、电子设备和计算机可读存储介质 Download PDFInfo
- Publication number
- CN117130678A CN117130678A CN202210797483.7A CN202210797483A CN117130678A CN 117130678 A CN117130678 A CN 117130678A CN 202210797483 A CN202210797483 A CN 202210797483A CN 117130678 A CN117130678 A CN 117130678A
- Authority
- CN
- China
- Prior art keywords
- animation
- playing
- target
- exit
- starting
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 132
- 230000006870 function Effects 0.000 claims description 92
- 238000012544 monitoring process Methods 0.000 claims description 30
- 238000004590 computer program Methods 0.000 claims description 26
- 238000007726 management method Methods 0.000 description 33
- 238000010586 diagram Methods 0.000 description 11
- 238000001514 detection method Methods 0.000 description 7
- 230000009286 beneficial effect Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 239000011800 void material Substances 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
Classifications
-
- 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/445—Program loading or initiating
- G06F9/44594—Unloading
-
- 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/445—Program loading or initiating
-
- 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/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
-
- 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4812—Task transfer initiation or dispatching by interrupt, e.g. masked
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Processing Or Creating Images (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本申请实施例公开了一种动画播放方法、装置、电子设备和计算机可读存储介质;在本申请实施例中,对正在播放的目标启动动画进行监听;若监听到针对所述目标启动动画的退出指令,则获取所述目标启动动画的播放进度;根据所述目标启动动画的播放进度,播放退出动画;当所述退出动画播放完成时,执行打断事务,以显示在播放所述目标启动动画之前的界面。本申请实施例可以提高启动动画的播放和退出动画的播放之间的衔接度。
Description
技术领域
本申请涉及动画技术领域,具体涉及一种动画播放方法、装置、电子设备和计算机可读存储介质。
背景技术
随着科学技术的发展,电子设备上运行的应用程序越来越多,也越来越受用户的喜爱。当用户点击应用程序的图标之后,应用程序的图标会进行放大并显示应用程序的界面,这个过程称为启动动画的播放,根据退出指令从应用程序的界面回到桌面的过程,称为退出动画的播放。
然而,如果在启动动画的播放未完成时接收到退出指令,会导致启动动画和退出动画之间的衔接不顺畅,出现卡顿的现象。
发明内容
本申请实施例提供一种动画播放方法、装置、电子设备和计算机可读存储介质,可以解决启动动画的播放和退出动画的播放衔接不顺畅的技术问题。
一种动画播放方法,包括:
对正在播放的目标启动动画进行监听;
若监听到针对上述目标启动动画的退出指令,则获取上述目标启动动画的播放进度;
根据上述目标启动动画的播放进度,播放退出动画;
当上述退出动画播放完成时,执行打断事务,以显示在播放上述目标启动动画之前的界面。
相应地,本申请实施例提供一种动画播放装置,包括:
监听模块,用于对正在播放的目标启动动画进行监听;
获取模块,用于若监听到针对上述目标启动动画的退出指令,则获取上述目标启动动画的播放进度;
播放模块,用于根据上述目标启动动画的播放进度,播放退出动画;
执行模块,用于当上述退出动画播放完成时,执行打断事务,以显示在播放上述目标启动动画之前的界面。
此外,本申请实施例还提供一种电子设备,包括处理器和存储器,上述存储器存储有计算机程序,上述处理器用于运行上述存储器内的计算机程序实现本申请实施例提供的动画播放方法。
此外,本申请实施例还提供一种计算机可读存储介质,上述计算机可读存储介质存储有计算机程序,上述计算机程序适于处理器进行加载,以执行本申请实施例所提供的任一种动画播放方法。
此外,本申请实施例还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现本申请实施例所提供的任一种动画播放方法。
在本申请实施例中,对正在播放的目标启动动画进行监听。若监听到针对目标启动动画的退出指令,则获取目标启动动画的播放进度。然后根据目标启动动画的播放进度,播放退出动画。当退出动画播放完成时,执行打断事务,以显示在播放目标启动动画之前的界面。
即在本申请实施例中,当监听到目标启动动画的退出指令时,先根据目标启动动画的播放进度播放退出动画,使得目标启动动画的播放和退出动画的播放无缝衔接,然后在退出动画播放完成时,再执行打断事务,避免出现在获取到退出指令时,先执行打断事务,再播放退出动画导致的启动动画的播放和退出动画的播放衔接不顺畅的现象。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的动画播放方法的示意图;
图2是本申请实施例提供的目标启动动画的注册过程的示意图;
图3是本申请实施例提供的打断动画管理类和中间服务的示意图;
图4是本申请实施例提供的目标启动动画的示意图;
图5是本申请实施例提供的另一种动画播放方法的示意图;
图6是本申请实施例提供的另一种动画播放方法的示意图;
图7是本申请实施例提供的打断动画管理类、中间服务、动画播放进程以及打断事务的交互示意图;
图8是本申请实施例提供的目标启动动画的注销过程的示意图;
图9是本申请实施例提供的目标启动动画的注销过程和注册过程的示意图;
图10是本申请实施例提供的动画播放装置的结构示意图;
图11是本申请实施例提供的电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提供一种动画播放方法、装置、电子设备和计算机可读存储介质。其中,该动画播放装置可以集成在电子设备中,该电子设备可以是服务器,也可以是终端等设备。
其中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、网络加速服务(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。
终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。
另外,本申请实施例中的“多个”指两个或两个以上。本申请实施例中的“第一”和“第二”等用于区分描述,而不能理解为暗示相对重要性。
以下分别进行详细说明。需要说明的是,以下实施例的描述顺序不作为对实施例优选顺序的限定。
在本实施例中,将从动画播放装置的角度进行描述,为了方便对本申请的动画播放方法进行说明,以下将以动画播放装置集成在终端中进行详细说明,即以终端作为执行主体进行详细说明。
请参阅图1,图1是本申请一实施例提供的动画播放方法的流程示意图。该动画播放方法可以包括:
S101、对正在播放的目标启动动画进行监听。
启动动画可以为在客户端启动的过程中,客户端所在的终端的屏幕所动态显示的画面。比如,当客户端为应用程序时,终端响应于对应用程序的图标的触发操作,先动态显示应用程序的图标,然后动态显示应用程序的界面,直至应用程序的界面铺满终端的屏幕,则动态显示应用程序的图标和界面的画面组成启动动画。
客户端可以为小程序、网页、应用程序以及终端开机程序等。对于客户端的类型,用户可以根据实际情况进行选择,本实施例在此不做限定。
当终端获取到客户端之后,终端可以先将客户端的目标启动动画进行注册,以在检测到目标启动动画正进行播放时,对目标启动动画进行监听。或者,终端也可以在目标启动动画进行播放时再对目标启动画进行注册,此时对正在播放的目标启动动画进行监听,包括:
对目标启动动画进行检测;
当检测到目标启动动画正在播放时,对目标启动动画进行注册,以对目标启动动画进行监听。
在一些实施例中,当检测到目标启动动画正在播放时,对目标启动动画进行注册,以对目标启动动画进行监听,包括:
当检测到目标启动动画正在播放时,通过打断动画管理类,获取目标启动动画,打断动画管理类中包括中间服务的调用接口;
通过调用接口,调用中间服务中的注册函数,以对目标启动动画进行注册;
当注册成功时,通过调用接口,调用中间服务中的触发函数,以对目标启动动画进行监听。
在本实施例中,中间服务可以为一个bind服务,注册函数和触发函数位于中间服务中,但终端没有直接调用中间服务的功能,因此,设置打断动画管理类,打断动画管理类中包括了中间服务的调用接口,然后通过打断动画管理类中的调用接口,调用中间服务的注册函数和触发函数,以实现对目标启动动画的监听。
其中,通过打断动画管理类,获取目标启动动画,可以指通过打断动画管理类,获取目标启动动画的标识和目标启动动画的退出动作等。
比如,如图2所示,当检测目标启动动画开始播放时,终端通过打断动画管理类(BreakAnimManager)中的调用接口(getService),调用中间服务(BreakAnimManagerService)的注册函数(addBreakTarget),根据目标启动动画的退出动作(int event)和目标启动动画的标识(IBreakableTarget)对目标启动动画进行注册。比如,利用中间服务中的注册函数对目标启动动画进行注册的形式可以为:voidaddBreakTarget(int event,IBreakableTarget target)。
也即是,将目标启动动画的退出动作和目标启动动画的标识发送至打断动画管理类,终端再通过打断动画管理类中的调用接口将目标启动动画的退出动画和目标启动动画的标识发送至中间服务,最后终端再利用中间服务中的注册函数对目标启动动画进行注册。
对目标启动动画注册成功之后,终端再利用中间服务中的触发函数(breakAnim)对目标启动动画进行监听。
由于通过打断动画管理类和中间服务实现对目标启动动画的注册和监听,因此,在当检测到所述目标启动动画正在播放时,通过打断动画管理类,获取目标启动动画之前,还包括:
获取注册函数和触发函数,并根据注册函数和触发函数创建中间服务;
根据中间服务的调用接口,创建打断动画管理类。
比如,打断动画管理类和中间服务可以如图3所示,Animation表示目标启动动画对应的动画播放进程。
应理解,当客户端为应用程序时,打断动画管理类可以以软件开发工具包(Software Development Kit,SDK)的形式存在,以便将打断动画管理类插入至应用程序中。
S102、若监听到针对目标启动动画的退出指令,则获取目标启动动画的播放进度。
终端如果监听到针对目标启动动画的退出指令,则获取目标启动动画的播放进度。目标启动动画的播放进度,可以动态指终端的屏幕动态显示到第几帧画面,或者,目标启动动画的播放进度也可以指目标启动动画对应的窗口的大小,比如,当目标启动动画对应的窗口的大小为70%(即目标启动动画对应的窗口占屏幕的70%)时,监听到目标启动动画的退出指令,则目标启动动画的播放进度为70%。
S103、根据目标启动动画的播放进度,播放退出动画。
为了避免出现抖动的现象,终端可以根据目标启动动画的播放进度,播放退出动画,使得退出动画的播放和目标启动动画的播放的衔接更加顺畅。
比如,当目标启动动画的播放进度为70%时,退出动画也从70%开始播放。
可选地,退出动画和目标启动动画可以为同种类型的动画,也可以为不同种类型的动画。退出动画和目标启动动画可以为同种类型的动画可以指退出动画的内容和目标启动动画的内容相同,退出动画和目标启动动画可以为不同种类型的动画,可以指退出动画的内容和目标启动动画的内容不相同。
需要说明的是,当客户端为小程序或应用程序时,退出动画的内容和目标启动动画的内容相同,可以指目标启动动画对应的窗口的大小对应的内容和退出动画对应的窗口的大小对应的内容相同。退出动画的内容和目标启动动画的内容不相同,目标启动动画对应的窗口的大小对应的内容和退出动画对应的窗口的大小对应的内容不相同。
比如,如图4所示,在目标启动动画对应的窗口的大小为0-30%的过程中,在目标启动动画对应的窗口中动态显示应用程序的图标,此时,目标启动动画为动态显示应用程序的图标的画面,图4中的401为目标启动动画对应的窗口的大小为15%时,终端显示的画面,图4中的402为目标启动动画对应的窗口的大小为30%时,终端显示的画面。
在目标启动动画对应的窗口的大小为31%-100%的过程中,在目标启动动画对应的窗口中动态显示应用程序的界面。图4中的403为目标启动动画对应的窗口的大小为70%时,终端显示的画面,图4中的404为目标启动动画对应的窗口的大小为100%时,终端显示的画面,此时,目标启动动画对应的窗口铺满整个屏幕,也即,应用程序的界面铺满整个屏幕。
如果在退出动画的窗口的大小为100%-31%的过程中,也在退出动画的窗口中动态显示应用程序的界面,在退出动画的窗口的大小为30%-0的过程中,也在退出动画的窗口中动态显示应用程序的图标,则退出动画的内容和目标启动动画的内容相同。
如果在退出动画的窗口的大小为100%-61%的过程中,在退出动画的窗口中动态显示应用程序的界面,在退出动画的窗口的大小为60%-0的过程中,在退出动画的窗口中动态显示应用程序的图标,则退出动画的内容和目标启动动画的内容不相同。
当退出动画和目标启动动画为同种类型的动画时,根据目标启动动画的播放进度,播放退出动画,包括:
根据目标启动动画的播放进度,回放目标启动动画,以播放退出动画。
由于退出动画和目标启动动画为同种类型的动画,因此,可以根据目标启动动画的播放进度,直接回放目标启动动画,从而播放退出动画。
比如,目标启动动画为应用程序的启动动画。目标启动动画从0%开始播放,当目标启动动画的播放进度为70%时,接收到退出指令,则从70%开始回放启动动画。
当退出动画和目标启动动画为不同种类型的动画时,根据目标启动动画的播放进度,播放退出动画,包括:
获取退出动画;
根据目标启动动画的播放进度,确定退出动画的起始播放位置;
从起始播放位置,播放退出动画。
比如,目标启动动画为应用程序的启动动画。目标启动动画从0%开始播放,当目标启动动画的播放进度为70%时,接收到退出指令,则退出动画的起始播放位置为70%,也即是,退出动画对应的窗口的大小为屏幕的70%。
在本实施例中,退出动画和目标启动动画为不同种类型的动画,从而使得在客户端启动和退出的过程中,播放不同的动画,给用户带来更好的体验。
其中,退出动画可以为目标启动动画的对应的退出动画,退出动画和目标启动动画可以先建立关联关系,然后终端再从关联关系中查找目标启动动画对应的退出动画,可以将目标启动动画和退出动画分别与客户端关联,终端先确定目标启动动画对应的客户端,然后再查找目标启动动画对应的客户端对应的退出动画。
在一些实施例中,退出指令包括退出动作,根据目标启动动画的播放进度,播放退出动画,包括:
确定退出动作对应的退出动画;
根据目标启动动画的播放进度,播放退出动作对应的退出动画。
在本实施例中,存在不同的退出动作,一种退出动作可以对应一种退出动画,从而丰富退出动画的多样性,提高用户的体验。
退出动作可以包括触发Home键,上滑动作、上滑动作、左滑动作以及右滑动作等。
在另一些实施例中,在获取目标启动动画之前,还包括:
获取动画播放指令;
根据动画播放指令启动动画播放进程,以播放目标启动动画,动画播放进程包括目标启动动画的播放代码以及退出动画的播放代码;
根据目标启动动画的播放进度,播放退出动画,包括:
通过动画播放进程,根据目标启动动画的播放进度,播放退出动画。
动画进行播放时,需要先初始化,以加载动画资源,比如,目标启动动画为应用程序的启动动画时,需要先进行初始化,以加载应用程序的图标、应用程序的界面以及应用程序的窗口等。如果目标启动动画的播放代码和退出动画的播放代码属于不同的进程,则在播放退出动画时,需再次进行初始化,从而加载动画资源,减慢了退出动画的播放速度。
在本实施例中,目标启动动画的播放代码和退出动画的播放代码位于同一个进程中,则在播放退出动画时可以直接利用目标启动动画的动画播放进程的上下文信息(动画播放进程的上下文信息指动画播放进程运行时的变量和数据),从而使得在播放退出动画时,无需再初始化动画资源,从而进一步提高目标启动动画的播放和退出动画的播放之间的衔接度。
S104、当退出动画播放完成时,执行打断事务,以显示在播放目标启动动画之前的界面。
打断事务包括返回在播放目标启动动画之前的界面的操作,比如,目标启动动画为应用程序的启动动画,则当退出动画播放完成时,执行返回桌面的操作,以回到桌面。
由于打断事务的执行时间较长,因此,如果先执行打断事务,再播放退出动画,导致目标启动动画的播放和退出动画的播放之间的时间较长,使得目标启动动画的播放和退出动画的播放衔接不顺畅,当终端的性能较差时,目标启动动画的播放和退出动画的播放衔接不顺畅的程度较为严重。
比如,如图5中的501所示,在播放目标启动动画时,获取到退出指令,则保存目标启动动画的播放进度,执行打断事务,然后获取目标启动动画的播放进度,最后,根据目标启动动画的播放进度,播放退出动画。
而在本实施例中,先播放退出动画,当退出动画播放完成时,再执行打断事务,从而使得目标启动动画的播放和退出动画的播放无缝衔接,提高目标启动动画的播放和退出动画的播放之间的衔接度,使得即使在性能较差的终端中,也不会出现目标启动动画的播放和退出动画的播放衔接不顺畅的现象,提高用户体验。
比如,如图5中的502所示,在播放目标启动动画时,获取到退出指令,则根据目标启动动画的播放进度播放退出动画,然后再执行打断事务。
在一些实施例中,根据目标启动动画的播放进度,播放退出动画,当退出动画播放完成时,执行打断事务,包括:
获取退出动画对应的退出进程的第一启动顺序和打断事务对应的打断进程的第二启动顺序,第一启动顺序先于第二启动顺序;
根据目标启动动画的播放进度、第一启动顺序和第二启动顺序,启动退出进程和打断进程,以实现当退出动画播放完成时,执行打断事务。
在本实施例中,通过预先设置退出进程的第一启动顺序和打断进程的第二启动顺序,第一启动顺序先于第二启动顺序,然后根据第一启动顺序和第二启动顺序启动退出进程和打断进程,从而实现当退出动画播放完成时,执行打断事务。
需要说明的是,如果退出动画的播放代码位于动画播放进程中,则退出进程即为动画播放进程,由于当获取到针对目标启动动画的退出指令时,动画播放进程会暂停执行,因此,此时,第一启动顺序可以为继续启动动画播放进程的顺序。
退出动画对应的退出进程指退出动画的播放进程,打断事务的打断进程指打断事务的执行进程。
当终端通过中间服务中的触发函数对目标启动动画进行监听时,若监听到针对目标启动动画的退出指令,则获取目标启动动画的播放进度,根据目标启动动画的播放进度,播放退出动画,包括:
若通过触发函数监听到针对目标启动动画的退出指令,则通过触发函数将退出指令发送至目标启动动画对应的动画播放进程中监听函数;
当通过监听函数获取到退出指令时,利用目标启动动画对应的动画播放进程,获取目标启动动画的播放进度,并根据目标启动动画的播放进度,播放退出动画。
比如,如图6所示,通过触发函数监听到退出指令之后,通过触发函数将退出指令发送至监听函数,当通过监听函数获取到退出指令之后,利用动画播放进程,回放目标启动动画,从而实现退出动画的播放。
可选地,若通过触发函数监听到针对目标启动动画的退出指令,则通过触发函数将退出指令发送至目标启动动画对应的动画播放进程中监听函数,包括:
若通过触发函数监听到针对目标启动动画的退出指令,则获取目标启动动画对应的打断事务标识;
通过触发函数将退出指令和打断事务标识发送至目标启动动画对应的动画播放进程中监听函数;
当退出动画播放完成时,执行打断事务,包括:
当退出动画播放完成时,从监听函数中获取打断事务标识;
调用打断事务标识对应的接口,以执行打断事务。
在本实施例中,当通过触发函数获取到退出指令(退出动作)时,通过触发函数将退出指令和打断事务标识(IBreakAnimFinishedCallback callback)一起发送至监听函数中,此时,触发函数的形式可以为int breakAnim(int event,IBreakAnimFinishedCallback callback),监听函数(onBreak)获取到退出指令(退出动作)和打断事务标识的形式可以为onBreak(int event,IBreakAnimFinishedCallbackcallback)。
终端从而通过监听函数获取到打断事务标识。然后当利用动画播放进程,在播放退出动画完成时,通过动画播放进程将退出指令发送至打断事务标识对应的接口(onBreakAnimFinished),最后通过打断事务标识对应的接口,根据退出指令,执行打断事务。
退出检测进程(退出检测进程比如可以为Home进程)与动画播放进程之间并不能直接通信,因此,在本实施例中,建立打断动画管理类和中间服务,当通过退出检测进程获取到退出指令时,将退出指令和打断事务标识发送至打断动画管理类,然后通过打断动画管理类和中间服务将退出动作和打断事务标识发送至动画播放进程,从而实现退出检测进程和动画播放进程的跨进程通信。
比如,如图7所示,通过退出检测进程检测客户端的退出动作和获取打断事务标识,通过打断动画管理类,调用中间服务中的触发函数,从退出检测进程中获取退出动作和打断事务标识,也即是,通过打断动画管理类,将退出动作和打断事务接口标识发送至中间服务中的触发函数。
接着再通过中间服务中的触发函数,将退出动作和打断事务标识发送至目标启动动画的动画播放进程中的监听函数。当通过监听函数获取到退出动作和打断事务标识时,根据目标启动动画的播放进度,播放退出动画,并在退出动画播放完成时,从监听函数中获取打断事务标识,并调用打断事务标识对应的接口,执行打断事务,从而回到在播放目标启动动画之前的界面,也即是,在退出动画播放完成时,将退出动作发送至打断事务标识对应的接口,以执行打断事务。
如果在播放目标启动动画的过程中,没有获取到针对目标启动动画的退出指令,则可以对目标启动动画进行注销,使得无需一直对目标启动动画进行监听,则在另一些实施例中,在当注册成功时,通过调用接口,调用中间服务中的触发函数,以对目标启动动画进行监听之后,还包括:
通过打断动画管理类,获取目标启动动画的播放完成指令;
通过调用接口,根据播放完成指令,调用中间服务中的注销函数,以对目标启动动画进行注销。
比如,如图8所示,当目标启动动画的播放完成时,通过打断动画管理类的调用接口,调用中间服务中的注销函数(removeBreakTarget)对目标启动动画进行注销,注销的形式可以为void removeBreakTarget(IBreakableTarget target)。
也即是,当通过打断动画管理类获取到播放完成指令时,通过打断动画管理类的调用接口将播放完成指令发送至中间服务中,再通过中间服务中的注销函数对目标启动动画进行注销。
在本实施例中,在目标启动动画开始播放时,通过中间服务中的注册函数对目标启动动画进行注册,在目标启动动画播放完成时,通过中间服务中的注销函数对目标启动动画进行注销(如图9所示),从而使得可以实现在目标启动动画播放时对目标启动动画进行监听,在目标启动动画播放完成时,结束对目标启动动画的监听。
由以上可知,在本申请实施例中,对正在播放的目标启动动画进行监听。若监听到针对目标启动动画的退出指令,则获取目标启动动画的播放进度。然后根据目标启动动画的播放进度,播放退出动画。当退出动画播放完成时,执行打断事务,以显示在播放目标启动动画之前的界面。
即在本申请实施例中,当监听到目标启动动画的退出指令时,先根据目标启动动画的播放进度播放退出动画,使得目标启动动画的播放和退出动画的播放无缝衔接,然后在退出动画播放完成时,再执行打断事务,避免出现在获取到退出指令时,先执行打断事务,再播放退出动画导致的启动动画的播放和退出动画的播放衔接不顺畅的现象。
为便于更好的实施本申请实施例提供的动画播放方法,本申请实施例还提供一种基于上述动画播放方法的装置。其中名词的含义与上述动画播放方法中相同,具体实现细节可以参考方法实施例中的说明。
例如,如图10所示,该动画播放装置可以包括:
监听模块1001,用于对正在播放的目标启动动画进行监听。
获取模块1002,用于若监听到针对目标启动动画的退出指令,则获取目标启动动画的播放进度。
播放模块1003,用于根据目标启动动画的播放进度,播放退出动画。
执行模块1004,用于当退出动画播放完成时,执行打断事务,以显示在播放目标启动动画之前的界面。
可选地,该动画播放装置还包括:
指令获取模块,用于执行:
获取动画播放指令;
根据动画播放指令启动动画播放进程,以播放目标启动动画,动画播放进程包括目标启动动画的播放代码以及退出动画的播放代码。
相应地,播放模块1003具体用于执行:
通过动画播放进程,根据目标启动动画的播放进度,播放退出动画。
可选地,播放模块1003具体用于执行:
获取退出动画对应的退出进程的第一启动顺序和打断事务对应的打断进程的第二启动顺序,第一启动顺序先于第二启动顺序;
根据目标启动动画的播放进度、第一启动顺序和第二启动顺序,启动退出进程和打断进程,以实现当退出动画播放完成时,执行打断事务。
可选地,监听模块1001具体用于执行:
对目标启动动画进行检测;
当检测到目标启动动画正在播放时,对目标启动动画进行注册,以对目标启动动画进行监听。
可选地,监听模块1001具体用于执行:
当检测到目标启动动画正在播放时,通过打断动画管理类,获取目标启动动画,打断动画管理类中包括中间服务的调用接口;
通过调用接口,调用中间服务中的注册函数,以对目标启动动画进行注册;
当注册成功时,通过调用接口,调用中间服务中的触发函数,以对目标启动动画进行监听。
可选地,获取模块1002具体用于执行:
若通过触发函数监听到针对目标启动动画的退出指令,则通过触发函数将退出指令发送至目标启动动画对应的动画播放进程中监听函数。
播放模块1003具体用于执行:
当通过监听函数获取到退出指令时,利用目标启动动画对应的动画播放进程,获取目标启动动画的播放进度,并根据目标启动动画的播放进度,播放退出动画。
可选地,获取模块1002具体用于执行:
若通过触发函数监听到针对目标启动动画的退出指令,则获取目标启动动画对应的打断事务标识;
通过触发函数将退出指令和打断事务标识发送至目标启动动画对应的动画播放进程中监听函数;
相应地,执行模块1004具体用于执行:
当退出动画播放完成时,从监听函数中获取打断事务标识;
调用打断事务标识对应的接口,以执行打断事务。
可选地,该动画播放装置还包括:
创建模块,用于执行:
获取注册函数和触发函数,并根据注册函数和触发函数创建中间服务;
根据中间服务的调用接口,创建打断动画管理类。
可选地,该动画播放装置还包括:
注销模块,用于执行:
通过打断动画管理类,获取目标启动动画的播放完成指令;
通过调用接口,根据播放完成指令,调用中间服务中的注销函数,以对目标启动动画进行注销。
可选地,退出动画与目标启动动画为同种类型的动画。
相应地,播放模块1003具体用于执行:
根据目标启动动画的播放进度,回放目标启动动画,以播放退出动画。
可选地,退出动画与目标启动动画为不同种类型的动画。
相应地,播放模块1003具体用于执行:
获取退出动画;
根据目标启动动画的播放进度,确定退出动画的起始播放位置;
从起始播放位置,播放退出动画。
可选地,退出指令包括退出动画。
相应地,播放模块1003具体用于执行:
确定退出动作对应的退出动画;
根据目标启动动画的播放进度,播放退出动作对应的退出动画。
具体实施时,以上各个模块可以作为独立的实体来实现,也可以进行任意组合,作为同一或若干个实体来实现,以上各个模块的具体实施方式以及对应的有益效果可参见前面的方法实施例,在此不再赘述。
本申请实施例还提供一种电子设备,该电子设备可以是服务器或终端等,如图11所示,其示出了本申请实施例所涉及的电子设备的结构示意图,具体来讲:
该电子设备可以包括一个或者一个以上处理核心的处理器1101、一个或一个以上计算机可读存储介质的存储器1102、电源1103和输入单元1104等部件。本领域技术人员可以理解,图11中示出的电子设备结构并不构成对电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
处理器1101是该电子设备的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或执行存储在存储器1102内的计算机程序和/或模块,以及调用存储在存储器1102内的数据,执行电子设备的各种功能和处理数据。可选的,处理器1101可包括一个或多个处理核心;优选的,处理器1101可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1101中。
存储器1102可用于存储计算机程序以及模块,处理器1101通过运行存储在存储器1102的计算机程序以及模块,从而执行各种功能应用以及数据处理。存储器1102可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的计算机程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据电子设备的使用所创建的数据等。此外,存储器1102可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器1102还可以包括存储器控制器,以提供处理器1101对存储器1102的访问。
电子设备还包括给各个部件供电的电源1103,优选的,电源1103可以通过电源管理系统与处理器1101逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源1103还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
该电子设备还可包括输入单元1104,该输入单元1104可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
尽管未示出,电子设备还可以包括显示单元等,在此不再赘述。具体在本实施例中,电子设备中的处理器1101会按照如下的指令,将一个或一个以上的计算机程序的进程对应的可执行文件加载到存储器1102中,并由处理器1101来运行存储在存储器1102中的计算机程序,从而实现各种功能,比如:
对正在播放的目标启动动画进行监听;
若监听到针对目标启动动画的退出指令,则获取目标启动动画的播放进度;
根据目标启动动画的播放进度,播放退出动画;
当退出动画播放完成时,执行打断事务,以显示在播放目标启动动画之前的界面。
以上各个操作的具体实施方式以及对应的有益效果可参见上文对动画播放方法的详细描述,在此不作赘述。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过计算机程序来完成,或通过计算机程序控制相关的硬件来完成,该计算机程序可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
为此,本申请实施例提供一种计算机可读存储介质,其中存储有计算机程序,该计算机程序能够被处理器进行加载,以执行本申请实施例所提供的任一种动画播放方法中的步骤。例如,该计算机程序可以执行如下步骤:
对正在播放的目标启动动画进行监听;
若监听到针对目标启动动画的退出指令,则获取目标启动动画的播放进度;
根据目标启动动画的播放进度,播放退出动画;
当退出动画播放完成时,执行打断事务,以显示在播放目标启动动画之前的界面。
以上各个操作的具体实施方式以及对应的有益效果可参见前面的实施例,在此不再赘述。
其中,该计算机可读存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
由于该计算机可读存储介质中所存储的计算机程序,可以执行本申请实施例所提供的任一种动画播放方法中的步骤,因此,可以实现本申请实施例所提供的任一种动画播放方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
其中,根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述动画播放方法。
以上对本申请实施例所提供的一种动画播放方法、装置、电子设备和计算机可读存储介质进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (15)
1.一种动画播放方法,其特征在于,包括:
对正在播放的目标启动动画进行监听;
若监听到针对所述目标启动动画的退出指令,则获取所述目标启动动画的播放进度;
根据所述目标启动动画的播放进度,播放退出动画;
当所述退出动画播放完成时,执行打断事务,以显示在播放所述目标启动动画之前的界面。
2.根据权利要求1所述的动画播放方法,其特征在于,在所述获取目标启动动画之前,还包括:
获取动画播放指令;
根据所述动画播放指令启动动画播放进程,以播放所述目标启动动画,所述动画播放进程包括所述目标启动动画的播放代码以及所述退出动画的播放代码;
所述根据所述目标启动动画的播放进度,播放退出动画,包括:
通过所述动画播放进程,根据所述目标启动动画的播放进度,播放退出动画。
3.根据权利要求1所述的动画播放方法,其特征在于,所述根据所述目标启动动画的播放进度,播放退出动画,当所述退出动画播放完成时,执行打断事务,包括:
获取所述退出动画对应的退出进程的第一启动顺序和所述打断事务对应的打断进程的第二启动顺序,所述第一启动顺序先于所述第二启动顺序;
根据所述目标启动动画的播放进度、所述第一启动顺序和所述第二启动顺序,启动所述退出进程和所述打断进程,以实现当退出动画播放完成时,执行打断事务。
4.根据权利要求1所述的动画播放方法,其特征在于,所述对正在播放的目标启动动画进行监听,包括:
对目标启动动画进行检测;
当检测到所述目标启动动画正在播放时,对所述目标启动动画进行注册,以对所述目标启动动画进行监听。
5.根据权利要求4所述的动画播放方法,其特征在于,所述当检测到所述目标启动动画正在播放时,对所述目标启动动画进行注册,以对所述目标启动动画进行监听,包括:
当检测到所述目标启动动画正在播放时,通过打断动画管理类,获取所述目标启动动画,所述打断动画管理类中包括中间服务的调用接口;
通过所述调用接口,调用所述中间服务中的注册函数,以对所述目标启动动画进行注册;
当注册成功时,通过所述调用接口,调用所述中间服务中的触发函数,以对所述目标启动动画进行监听。
6.根据权利要求5所述的动画播放方法,其特征在于,所述若监听到针对所述目标启动动画的退出指令,则获取所述目标启动动画的播放进度,根据所述目标启动动画的播放进度,播放退出动画,包括:
若通过所述触发函数监听到针对所述目标启动动画的退出指令,则通过所述触发函数将所述退出指令发送至所述目标启动动画对应的动画播放进程中监听函数;
当通过所述监听函数获取到所述退出指令时,利用所述目标启动动画对应的动画播放进程,获取所述目标启动动画的播放进度,并根据所述目标启动动画的播放进度,播放退出动画。
7.根据权利要求6所述的动画播放方法,其特征在于,若通过所述触发函数监听到针对所述目标启动动画的退出指令,则通过所述触发函数将所述退出指令发送至所述目标启动动画对应的动画播放进程中监听函数,包括:
若通过所述触发函数监听到针对所述目标启动动画的退出指令,则获取所述目标启动动画对应的打断事务标识;
通过所述触发函数将所述退出指令和所述打断事务标识发送至所述目标启动动画对应的动画播放进程中监听函数;
当所述退出动画播放完成时,执行打断事务,包括:
当所述退出动画播放完成时,从所述监听函数中获取所述打断事务标识;
调用所述打断事务标识对应的接口,以执行所述打断事务。
8.根据权利要求5所述的动画播放方法,其特征在于,在所述当检测到所述目标启动动画正在播放时,通过打断动画管理类,获取所述目标启动动画之前,还包括:
获取所述注册函数和所述触发函数,并根据所述注册函数和所述触发函数创建所述中间服务;
根据所述中间服务的调用接口,创建所述打断动画管理类。
9.根据权利要求5所述的动画播放方法,其特征在于,在所述当注册成功时,通过所述调用接口,调用所述中间服务中的触发函数,以对所述目标启动动画进行监听之后,还包括:
通过所述打断动画管理类,获取所述目标启动动画的播放完成指令;
通过所述调用接口,根据所述播放完成指令,调用所述中间服务中的注销函数,以对所述目标启动动画进行注销。
10.根据权利要求1所述的动画播放方法,其特征在于,所述退出动画与所述目标启动动画为同种类型的动画;
所述根据所述目标启动动画的播放进度,播放退出动画,包括:
根据所述目标启动动画的播放进度,回放所述目标启动动画,以播放退出动画。
11.根据权利要求1所述的动画播放方法,其特征在于,所述退出动画与所述目标启动动画为不同种类型的动画;
根据所述目标启动动画的播放进度,播放退出动画,包括:
获取退出动画;
根据所述目标启动动画的播放进度,确定所述退出动画的起始播放位置;
从所述起始播放位置,播放所述退出动画。
12.根据权利要求1所述的动画播放方法,其特征在于,所述退出指令包括退出动作;
根据所述目标启动动画的播放进度,播放退出动画,包括:
确定所述退出动作对应的退出动画;
根据所述目标启动动画的播放进度,播放所述退出动作对应的退出动画。
13.一种动画播放装置,其特征在于,包括:
监听模块,用于对正在播放的目标启动动画进行监听;
获取模块,用于若监听到针对所述目标启动动画的退出指令,则获取所述目标启动动画的播放进度;
播放模块,用于根据所述目标启动动画的播放进度,播放退出动画;
执行模块,用于当所述退出动画播放完成时,执行打断事务,以显示在播放所述目标启动动画之前的界面。
14.一种电子设备,其特征在于,包括处理器和存储器,所述存储器存储有计算机程序,所述处理器用于运行所述存储器内的计算机程序,以执行权利要求1至12任一项所述的动画播放方法。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序适于处理器进行加载,以执行权利要求1至12任一项所述的动画播放方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210797483.7A CN117130678A (zh) | 2022-07-06 | 2022-07-06 | 动画播放方法、装置、电子设备和计算机可读存储介质 |
PCT/CN2023/091844 WO2024007710A1 (zh) | 2022-07-06 | 2023-04-28 | 动画播放方法、装置、电子设备和计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210797483.7A CN117130678A (zh) | 2022-07-06 | 2022-07-06 | 动画播放方法、装置、电子设备和计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117130678A true CN117130678A (zh) | 2023-11-28 |
Family
ID=88851432
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210797483.7A Pending CN117130678A (zh) | 2022-07-06 | 2022-07-06 | 动画播放方法、装置、电子设备和计算机可读存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN117130678A (zh) |
WO (1) | WO2024007710A1 (zh) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103325398B (zh) * | 2012-03-23 | 2016-03-23 | 腾讯科技(深圳)有限公司 | 一种动画播放方法及装置 |
CN105373357B (zh) * | 2014-08-20 | 2018-12-21 | 珠海金山办公软件有限公司 | 一种在幻灯片放映过程中插入动画的方法、装置及系统 |
CN105451064B (zh) * | 2015-11-16 | 2018-11-02 | 深圳Tcl数字技术有限公司 | 显示终端开机播放视频的方法及显示终端 |
CN111880877B (zh) * | 2020-07-24 | 2023-10-31 | 上海米哈游天命科技有限公司 | 一种动画切换方法、装置、设备及存储介质 |
CN112700515A (zh) * | 2020-12-28 | 2021-04-23 | 广州博冠信息科技有限公司 | 动画播放方法和装置、存储介质、电子设备 |
-
2022
- 2022-07-06 CN CN202210797483.7A patent/CN117130678A/zh active Pending
-
2023
- 2023-04-28 WO PCT/CN2023/091844 patent/WO2024007710A1/zh unknown
Also Published As
Publication number | Publication date |
---|---|
WO2024007710A1 (zh) | 2024-01-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108174248B (zh) | 视频播放方法、视频播放控制方法、装置、及存储介质 | |
CN111246308B (zh) | 访问直播间的方法及装置、直播服务器、存储介质 | |
CN110830735B (zh) | 一种视频生成方法、装置、计算机设备和存储介质 | |
US10232252B2 (en) | Information processing system, information processing method, program, and information storage medium | |
US20230211235A1 (en) | Device control method and apparatus, computer device, and storage medium | |
CN111773667A (zh) | 直播游戏交互方法、装置、计算机可读介质及电子设备 | |
CN111214828A (zh) | 游戏运行方法、装置、设备、介质及云端游戏平台 | |
CN113485617A (zh) | 动画展示方法、装置、电子设备及存储介质 | |
CN114666671A (zh) | 直播点赞互动方法、系统、装置、设备及存储介质 | |
CN111346386B (zh) | 一种消息处理方法和装置 | |
CN116889733A (zh) | 游戏资源加载方法、装置、电子设备及存储介质 | |
CN117130678A (zh) | 动画播放方法、装置、电子设备和计算机可读存储介质 | |
US8751564B2 (en) | Reducing latency for served applications by anticipatory preprocessing | |
CN115364477A (zh) | 云游戏控制方法、装置、电子设备及存储介质 | |
CN111766992B (zh) | 信息显示方法、装置、电子设备及存储介质 | |
CN111225266B (zh) | 用户界面交互方法和系统 | |
CN114025170A (zh) | 视频播放方法、装置、计算机设备和计算机可读存储介质 | |
CN114090085A (zh) | 对象控制方法及相关装置 | |
CN114116090A (zh) | 信息展示方法、装置、电子设备及计算机可读存储介质 | |
CN114100117B (zh) | 游戏加载方法、装置、计算机设备及存储介质 | |
CN115103218B (zh) | 数据流回收方法及其装置、设备、介质 | |
CN117768668A (zh) | 直播互动方法、装置和计算机可读存储介质 | |
CN117717769A (zh) | 数据处理方法、装置、设备及介质 | |
CN114210050A (zh) | 云游戏运行方法、系统及云游戏服务器 | |
CN113873315A (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 |