CN105045655A - 应用资源加载方法和装置 - Google Patents

应用资源加载方法和装置 Download PDF

Info

Publication number
CN105045655A
CN105045655A CN201510250698.7A CN201510250698A CN105045655A CN 105045655 A CN105045655 A CN 105045655A CN 201510250698 A CN201510250698 A CN 201510250698A CN 105045655 A CN105045655 A CN 105045655A
Authority
CN
China
Prior art keywords
loading
application
resource file
thread
resource
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
Application number
CN201510250698.7A
Other languages
English (en)
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.)
Guangdong Genius Technology Co Ltd
Original Assignee
Guangdong Genius 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 Guangdong Genius Technology Co Ltd filed Critical Guangdong Genius Technology Co Ltd
Priority to CN201510250698.7A priority Critical patent/CN105045655A/zh
Publication of CN105045655A publication Critical patent/CN105045655A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供了一种应用资源加载方法,所述方法包括:初始化应用中每一类资源文件的描述信息;播放加载动画,并同时根据所述描述信息异步加载所述应用的多个资源文件,以分批将所述多个资源文件载入内存;移除播放的加载动画;通过所述内存中的资源文件进行应用中的场景跳转。此外,还提供了一种与该方法匹配的应用资源加载装置。上述应用资源加载方法和装置能在应用的资源加载中避免由于加载时间变长而造成的画面卡顿现象。

Description

应用资源加载方法和装置
技术领域
本发明涉及互联网应用技术领域,特别涉及一种应用资源加载方法和装置。
背景技术
随着互联网应用技术的发展,应用作为满足人们生活和工作的一种方式,已经成为人们生活和工作所必须的工具。为了满足人们对应用的各种使用上的需求,常常在终端设备中触发开启相应的应用,并通过应用中画面的加载提供相应的应用功能显示和操作入口。
然而,现有应用进行画面加载大都是通过单线程在每一帧之间更新画面中各元素的状态实现的,这个过程实际是一串行过程,但是若在某一帧的画面更新中遇到某些费时的输入输出操作时,将存在着帧画面所对应的帧率骤降,进而出现画面卡顿的情况。
例如,在游戏应用进行场景跳转的过程中,通常释放当前场景的资源并加载下一场景的资源,若读取并加载的资源中图片量很大且分辨率很高的情况下将会造成线程阻塞,而又因为只有一个线程,所以不会中断当前执行内容而去执行其它内容,进而使得当前画面将卡顿较长时间。
发明内容
基于此,有必要提供一种能在应用的资源加载中避免由于加载时间变长而造成的画面卡顿现象的应用资源加载方法。
此外,还有必要提供一种能在应用的资源加载中避免由于加载时间变长而造成的画面卡顿现象的应用资源加载装置。
为解决上述技术问题,将采用如下技术方案:
一种应用资源加载方法,包括:
初始化应用中每一类资源文件的描述信息;
播放加载动画,并同时根据所述描述信息异步加载所述应用的多个资源文件,以分批将所述多个资源文件载入内存;
移除播放的加载动画;
通过所述内存中的资源文件进行应用中的场景跳转。
优选的,所述播放加载动画,并同时根据所述描述信息异步加载所述应用的多个资源文件,以将所述多个资源文件载入内存的步骤包括:
对加载动画进行同步加载,并在应用界面播放所述加载动画;
随着所述加载动画的播放创建子线程;
按照预设时间片交错运行所述子线程对所述描述信息进行的路径读取和应用中主线程根据所述路径和资源文件中的数据类型分批进行的资源文件载入内存。
优选的,所述子线程对所述描述信息进行的路径读取的步骤为:
在所述子线程中处理所述描述信息,以得到所述资源文件中每一数据对应的路径,并按照数据类型将所述路径存入相应的路径集合
优选的,所述应用中主线程根据所述路径和资源文件中的数据类型分批进行的资源文件载入内存步骤为:
通过所述主线程分别根据与所述数据类型对应的所述路径集合以帧为单位循环执行资源文件中单一数据的载入内存,直至所述资源文件中所有数据加载完成。
优选的,所述按照预设时间片交错运行所述子线程对所述描述信息进行的路径读取和应用中主线程根据所述路径和资源文件中的数据类型分批进行的资源文件载入内存的步骤中,
所述子线程对所述描述信息进行的路径读取步骤和所述应用中主线程根据所述路径和资源文件中的数据类型分批进行的资源文件载入的步骤之间还包括:
关闭所述子线程,并返回所述主线程的步骤。
一种应用资源加载装置,包括:
初始化模块,用于初始化应用中每一类资源文件的描述信息。
加载处理模块,用于播放加载动画,并同时根据所述描述信息异步加载所述应用的多个资源文件,以分批将所述多个资源文件载入内存;
移除模块,用于移除播放的加载动画;
场景跳转模块,用于通过所述内存中的资源文件进行应用场景跳转。
优选的,所述加载处理模块包括:
动画播放单元,用于对加载动画进行同步加载,并且在应用界面播放所述加载动画;
线程创建单元,用于随着所述加载动画的播放创建子线程;
分批载入单元,用于按照预设时间片交错运行所述子线程对所述描述信息进行的路径读取和应用中主线程根据所述路径和资源文件中的数据类型分批进行的资源文件载入内存。
优选的,所述分批载入单元包括:
信息处理子单元,用于在所述子线程中处理所述描述信息,以得到所述资源文件中每一数据对应的路径,并按照数据类型将路径存入相应的路径集合。
优选的,所述分批载入单元还包括:
单一数据载入子单元,用于通过所述主线程分别根据与所述数据类型对应的所述路径集合以帧为单位循环执行资源文件中单一数据的载入内存,直至所述资源文件中所有数据加载完成。
优选的,所述分批载入单元还包括:
线程切换子单元,用于关闭所述子线程,并且返回所述主线程。
上述应用资源加载方法和装置,在需要进行应用资源加载时,将初始化应用中每一类资源文件的描述信息,并播放加载动画以供观看,与此同时还根据描述信息进行应用中多个资源文件的异步加载,以将资源文件分批载入内存,资源文件载入完成之后移除当前播放的加载动画,并通过内存中的资源文件进行应用中的场景跳转,由于内存中进行的资源文件载入是分批进行的,因此,将有效避免了加载引发的计算量过大的问题,进而避免了内存中一次载入的量过大而导致的加载缓慢的局限性,并且在进行资源文件的异步加载的同时还进行了加载动画的播放,因此通过加载动画的流畅播放避免了加载的过程中画面卡顿现象的出现。
附图说明
图1是一个实施例中应用资源加载方法的流程图;
图2是图1中播放加载动画,并且根据描述信息异步加载应用的多个资源文件,以分批将多个资源文件载入内存的方法流程图;
图3是一个实施例中应用资源加载装置的结构框图;
图4是图3中加载处理模块的结构框图;
图5是图4中分批载入单元的结构框图。
具体实施方式
体现本发明特征与优点的典型实施方式将在以下的说明中详细叙述。应理解的是本发明能够在不同的实施方式上具有各种的变化,其皆不脱离本发明的范围,且其中的说明及图示在本质上是当作说明之用,而非用以限制本发明。
如前所述,应用资源加载中,例如,游戏应用中各种游戏资源的加载中,由于游戏资源将用于实现各种游戏场景以及游戏场景中的各种虚拟角色、虚拟物品等,因此,应用中的资源包含了较大数据量,其所加载的完成将需要完成较大的计算量,造成较大的***负担。
因此,为了降低***负担,避免由于加载时间变长而造成的画面卡顿现象,特提出了一种应用资源加载方法,该方法可依赖于计算机程序,该计算机程序可运行于符合冯诺依曼体系的计算机***之上。该计算机***可以是智能手机、平板电脑、家教机、学***板等电子设备中运行的***。
在一个实施例中,具体的,该方法如图1所述,包括:
步骤110,初始化应用中每一类资源文件的描述信息。
本实施例中,在触发开启应用时或者需要进行场景跳转时,将进行应用中资源文件所对应的描述信息的初始化,以通过设置需要加载的每一类资源文件所对应的信息得到相应的描述信息,其中,资源文件包括多类文件,如图片文件、动画文件和声音文件。
具体的,初始化得到的描述信息将记录了图片文件中每一图片数据所对应的路径、动画文件中动画需要用到的图片数据所对应的路径以及声音文件一段声音数据的路径等,将用于实现资源文件中的数据获取。
步骤130,播放加载动画,并且根据描述信息异步加载应用的多个资源文件,以分批将多个资源文件载入内存。
本实施例中,在完成描述信息的初始化以得到应用中每一类资源文件的描述信息之后,将获取加载动画,以进行该加载动画的播放,进而为应用当前所进行的场景跳转提供友好的过渡界面,保证加载过程中画面的平滑性。
与此同时,还将进行应用中多个资源文件的异步加载,以在不影响当前加载动画播放的前提下分批将应用中的多个资源文件载入内存。具体的,应用中的资源文件可以是图片文件、动画文件或者声音文件,将用以实现场景的呈现和声音的表现。
由于动画文件和声音文件的数据量较大,因此应用中通过一次加载便将所有资源文件载入内存的方式将会造成计算量过大的问题,并将由此导致加载过于缓慢的缺陷。为避免如上所述的情况出现,根据描述信息将应用中的多个资源文件分批载入内存中。
步骤150,移除播放的加载动画。
本实施例中,通过多个资源文件的分批载入内存以完成加载之后,将移除当前正在播放的加载动画,以便于为后续的场景跳转做准备。
步骤170,通过内存中的资源文件进行应用中的场景跳转。
本实施例中,读取内存中的资源文件,以通过使用资源文件中的图片数据和/或声音数据在当前移除了加载动画的应用界面中展现对应的场景,实现应用中的场景跳转。
由于应用中场景的跳转是通过内存中的资源文件实现的,并且直接从内存中读取数据的速度非常快,因此避免了由于硬盘中读取数据的速度较慢而造成应用资源加载需耗费很长时间,进而保证了应用界面中显示的顺畅性。
通过如上所述的应用资源加载方法,在播放加载动画的同时异步加载应用的资源文件,以将应用的所有资源文件分批载入内存,进而使用内存中的资源文件得以实现应用中的场景跳转,用户不会观察到应用界面上的帧率骤降甚至直接卡住的情况,使得应用界面更为友好。
如上所述进行的多个资源文件分批加载可以是应用中所有场景对应的资源文件,也可以是当前应用即将跳转进入的下一场景对应的资源文件,在此不进行限定,将根据实际运营的需要设置。
进一步的,在本实施例中,如图2所示,上述步骤130包括:
步骤131,对加载动画进行同步加载,并且在应用界面播放加载动画。
本实施例中,加载动画的播放指的是在资源文件载入内存的过程中播放loading画面,以保证资源文件载入过程中界面的友好性。也就是说加载动画的加载和播放将是与应用中资源文件的加载相匹配的,需要对加载动画进行同步加载,以在应用中资源文件的加载过程中持续播放该加载动画。
步骤133,随着加载动画的播放创建子线程。
本实施例中,在触发播放加载动画时,将通过应用的主线程创建子线程,以便于通过子线程进行应用的资源文件加载过程中对描述信息的分析处理。
步骤135,按照预设时间片交错运行子线程对描述信息进行的路径读取和应用中主线程根据路径和资源文件中的数据类型分批进行的资源文件载入内存。
本实施例中,应用中资源文件的加载将由子线程和主线程执行,并且主线程和子线程之间是一种相互交错运行的状态,因此需要预先设置时间片,以对主线程和子线程的交错运行进行有序管理。
例如,预先设置时间片为100毫秒,则当前的100毫秒内由主线程执行相应的操作,下一个100毫秒则由子线程执行相应操作,再过100毫秒又回主线程,通过这一方式将有效避免了一个线程无限期延迟的情况发生,一旦时间片到了之后将强行中断当前的线程而去执行另一线程。
进一步的,每一资源文件均有对应的描述信息,若资源文件为动画文件,其所对应的描述信息是动画描述文件,用于对动画中图片的行为进行描述,例如,图片的旋转、移动和缩放等,其一般可为ExportJson文件,因此,该描述信息比较大,并且在动画文件中涉及的图片行为越复杂,则描述信息也相应越大,对描述信息的加载需要耗费的时间也相应变长,因此,通过子线程进行描述信息的加载,以从描述信息中读取得到对应的图片文件所包含的每一图片数据对应的路径、动画文件所需要用到的每一图片数据对应的路径和/或每一声音文件对应的路径,进而避免加载大的描述信息,即动画描述文件时出现应用界面中画面卡住的情况。
子线程从描述信息中读取进入场景所需要的每一图片和每一声音所分别对应的路径的过程中,待当前时间片结束则子线程关闭,以返回到主线程中,此时下一时间片开始,主线程根据子线程所读取得到的路径以及资源文件中的数据类型分批加载相应的数据,该时间片结束时开启子线程,以继续对描述信息进行路径的读取。
主线程和子线程循环执行上述的交错运行过程,直至完成整个加载过程。
进一步的,在本实施例中,该子线程对描述信息进行路径读取的步骤具体为:
在子线程中处理描述信息,以得到资源文件中每一数据对应的路径,并且按照数据类型将路径存入相应的路径集合。
具体的,资源文件包括相应的数据,每一类资源文件其所包含的数据对应的数据类型不尽相同。其中,图片文件包括了多个图片数据;声音文件包括了一段声音数据;而动画文件则包括了多个图片数据。
子线程所读取得到的路径是按照其所对应的数据类型进行分类存储的,也就是说,图片数据对应的路径被存入至同一路径集合中,声音数据对应的路径也被存入另一相同的路径集合。
进一步的,在本实施例中,该应用中主线程根据路径和资源文件中的数据类型分批进行资源文件载入内存的步骤具体为:
通过主线程分别根据与数据类型对应的路径集合以帧为单位循环执行资源文件中单一数据的载入内存,直至资源文件中所有数据加载完成。
资源文件中的单一数据将是以帧为单位进行加载的,即一帧将向内存载入一数据,该数据可以是图片数据或者声音数据。
图片数据的载入和声音数据的载入可先后进行,例如通过图片数据类型对应的路径集合在完成了图片数据的载入之后,再通过声音数据类型对应的路径集合进行声音数据的载入;但也可交替进行。
具体的,在以帧为单位通过主线程所进行的单一数据载入中,在一帧中根据图片数据类型对应的路径集合读取一图片数据,在下一帧中根据声音数据类型对应的路径集合读取一声音数据,以此类推,分别完成图片数据类型对应的路径集合中每一路径对应的图片数据的载入以及声音数据类型对应的路径集合中每一路径对应的声音数据的载入。
通过一帧载入一图片数据或者一声音数据的方式所完成的资源文件载入,将避免了一帧里面加载大量的图片和声音资源,从而进一步减少了造成应用界面中画面卡顿的机率。
在优选的实施例中,每一路径集合都将设置了对应的索引值,并且该索引值将根据每一次的数据加载来进行更新,进而根据更新的索引值获知路径集合所对应的数据是否已经加载完毕。该索引值为整型变量。
具体的,图片数据类型的路径集合对应设置了图片索引值,声音数据类型的路径集合对应设置了声音索引值,图片索引值和声音索引值的初始值均为零,以方便运算。
在进行了一次图片数据的加载后对图片索引值进行自增运算,以得到更新的图片索引值;相应的,在进行了一次声音数据的加载后对声音索引值进行自增运算,以得到更新的声音索引值。
分别判断更新的图片索引值是否达到相应路径集合中的路径数量,以及声音索引值是否达到相应路径集合中的路径数量,若为是,则说明当前所进行的图片数据加载或者声音数据加载已完毕,所有数据均已载入内存。
通过这一设置索引值的方式将为数据的分批加载提供了可控性。
进一步的,在本实施例中,在子线程对描述信息进行的路径读取和在应用中主线程根据路径和资源文件中的数据类型分批进行的资源文件载入之间,还包括了关闭子线程,并且返回主线程的步骤,进而实现子线程和主线程之间的切换。
如上所述的应用资源加载可应用于cocos2d-x引擎中,可用于实现各种游戏应用中各场景之间的跳转。
在一个实施例中,还相应地提供了一种应用资源加载装置,如图3所示,包括初始化模块310、加载处理模块330、移除模块350和场景跳转模块370。
初始化模块310,用于初始化应用中每一类资源文件的描述信息。
本实施例中,在触发开启应用时或者需要进行场景跳转时,初始化模块310将进行应用中资源文件所对应的描述信息的初始化,以通过设置需要加载的每一类资源文件所对应的信息得到相应的描述信息,其中,资源文件包括多类文件,如图片文件、动画文件和声音文件。
具体的,初始化模块310初始化得到的描述信息将记录了图片文件中每一图片数据所对应的路径、动画文件中动画需要用到的图片数据所对应的路径以及声音文件一段声音数据的路径等,将用于实现资源文件中的数据获取。
加载处理模块330,用于播放加载动画,并同时根据描述信息异步加载应用的多个资源文件,以分批将多个资源文件载入内存。
本实施例中,在完成描述信息的初始化以得到应用中每一类资源文件的描述信息之后,加载处理模块330将获取加载动画,以进行该加载动画的播放,进而为应用当前所进行的场景跳转提供友好的过渡界面,保证加载过程中画面的平滑性。
与此同时,加载处理模块330还将进行应用中多个资源文件的异步加载,以在不影响当前加载动画播放的前提下分批将应用中的多个资源文件载入内存。具体的,应用中的资源文件可以是图片文件、动画文件或者声音文件,将用以实现场景的呈现和声音的表现。
由于动画文件和声音文件的数据量较大,因此应用中通过一次加载便将所有资源文件载入内存的方式将会造成计算量过大的问题,并将由此导致加载过于缓慢的缺陷。为避免如上所述的情况出现,加载处理模块330根据描述信息将应用中的多个资源文件分批载入内存中。
移除模块350,用于移除播放的加载动画。
本实施例中,通过多个资源文件的分批载入内存以完成加载之后,移除模块350将移除当前正在播放的加载动画,以便于为后续的场景跳转做准备。
场景跳转模块370,用于通过内存中的资源文件进行应用场景跳转。
本实施例中,场景跳转模块370读取内存中的资源文件,以通过使用资源文件中的图片数据和/或声音数据在当前移除了加载动画的应用界面中展现对应的场景,实现应用中的场景跳转。
由于应用中场景的跳转是通过内存中的资源文件实现的,并且直接从内存中读取数据的速度非常快,因此避免了由于硬盘中读取数据的速度较慢而造成应用资源加载需耗费很长时间,进而保证了应用界面中显示的顺畅性。
通过如上所述的应用资源加载装置,在播放加载动画的同时异步加载应用的资源文件,以将应用的所有资源文件分批载入内存,进而使用内存中的资源文件得以实现应用中的场景跳转,用户不会观察到应用界面上的帧率骤降甚至直接卡住的情况,使得应用界面更为友好。
如上所述进行的多个资源文件分批加载可以是应用中所有场景对应的资源文件,也可以是当前应用即将跳转进入的下一场景对应的资源文件,在此不进行限定,将根据实际运营的需要设置。
进一步的,在本实施例中,如图4所示,该加载处理模块330包括动画播放单元331、线程创建单元333和分批载入单元335。
动画播放单元331,用于对加载动画进行同步加载,并且且在应用界面播放加载动画。
本实施例中,加载动画的播放指的是在资源文件载入内存的过程中播放loading画面,以保证资源文件载入过程中界面的友好性。也就是说加载动画的加载和播放将是与应用中资源文件的加载相匹配的,需要对加载动画进行同步加载,以在应用中资源文件的加载过程中持续播放该加载动画。
线程创建单元333,用于随意加载动画的播放创建子线程。
本实施例中,在触发播放加载动画时,线程创建单元333将通过应用的主线程创建子线程,以便于通过子线程进行应用的资源文件加载过程中对描述信息的分析处理。
分批载入单元335,用于按照预设时间片交错运行子线程对描述信息进行的路径读取和应用中主线程根据路径和资源文件中的数据类型分批进行的资源文件载入内存。
本实施例中,应用中资源文件的加载将由子线程和主线程执行,并且主线程和子线程之间是一种相互交错运行的状态,因此需要预先设置时间片,以对主线程和子线程的交错运行进行有序管理。
例如,预先设置时间片为100毫秒,则当前的100毫秒内由主线程执行相应的操作,下一个100毫秒则由子线程执行相应操作,再过100毫秒又回主线程,通过这一方式将有效避免了一个线程无限期延迟的情况发生,一旦时间片到了之后将强行中断当前的线程而去执行另一线程。
进一步的,每一资源文件均有对应的描述信息,若资源文件为动画文件,其所对应的描述信息是动画描述文件,用于对动画中图片的行为进行描述,例如,图片的旋转、移动和缩放等,其一般可为ExportJson文件,因此,该描述信息比较大,并且在动画文件中涉及的图片行为越复杂,则描述信息也相应越大,对描述信息的加载需要耗费的时间也相应变长,因此,分批载入单元335通过子线程进行描述信息的加载,以从描述信息中读取得到对应的图片文件所包含的每一图片数据对应的路径、动画文件所需要用到的每一图片数据对应的路径和/或每一声音文件对应的路径,进而避免加载大的描述信息,即动画描述文件时出现应用界面中画面卡住的情况。
子线程从描述信息中读取进入场景所需要的每一图片和每一声音所分别对应的路径的过程中,待当前时间片结束则子线程关闭,以返回到主线程中,此时下一时间片开始,主线程根据子线程所读取得到的路径以及资源文件中的数据类型分批加载相应的数据,该时间片结束时开启子线程,以继续对描述信息进行路径的读取。
主线程和子线程循环执行上述的交错运行过程,直至完成整个加载过程。
进一步的,在本实施例中,如图5所示,分批载入单元335包括信息处理子单元3351、线程切换子单元3353和单一数据载入子单元3355。
信息处理子单元3351,用于在子线程中处理描述信息,以得到资源文件中每一数据对应的路径,并按照数据类型将路径存入相应的路径集合。
具体的,资源文件包括相应的数据,每一类资源文件其所包含的数据对应的数据类型不尽相同。其中,图片文件包括了多个图片数据;声音文件包括了一段声音数据;而动画文件则包括了多个图片数据。
信息处理子单元3351对子线程所读取得到的路径是按照其所对应的数据类型进行分类存储的,也就是说,图片数据对应的路径被存入至同一路径集合中,声音数据对应的路径也被存入另一相同的路径集合。
线程切换子单元3353,用于关闭子线程,并且返回主线程,以实现子线程和主线程之间的切换。
单一数据载入子单元3355,用于通过主线程分别根据与数据类型对应的路径集合以帧为单位循环执行资源文件中单一数据的载入内存,直至资源文件中所有数据加载完成。
资源文件中的单一数据将是以帧为单位进行加载的,即一帧将向内存载入一数据,该数据可以是图片数据或者声音数据。
单一数据载入子单元3355中图片数据的载入和声音数据的载入可先后进行,例如通过图片数据类型对应的路径集合在完成了图片数据的载入之后,再通过声音数据类型对应的路径集合进行声音数据的载入;但也可交替进行。
具体的,单一数据载入子单元3355在以帧为单位通过主线程所进行的单一数据载入中,在一帧中根据图片数据类型对应的路径集合读取一图片数据,在下一帧中根据声音数据类型对应的路径集合读取一声音数据,以此类推,单一数据载入子单元3355分别完成图片数据类型对应的路径集合中每一路径对应的图片数据的载入以及声音数据类型对应的路径集合中每一路径对应的声音数据的载入。
单一数据载入子单元3355通过一帧载入一图片数据或者一声音数据的方式所完成的资源文件载入,将避免了一帧里面加载大量的图片和声音资源,从而进一步减少了造成应用界面中画面卡顿的机率。
在优选的实施例中,每一路径集合都将设置了对应的索引值,并且该索引值将根据每一次的数据加载来进行更新,进而根据更新的索引值获知路径集合所对应的数据是否已经加载完毕。该索引值为整型变量。
具体的,图片数据类型的路径集合对应设置了图片索引值,声音数据类型的路径集合对应设置了声音索引值,图片索引值和声音索引值的初始值均为零,以方便运算。
在进行了一次图片数据的加载后对图片索引值进行自增运算,以得到更新的图片索引值;相应的,在进行了一次声音数据的加载后对声音索引值进行自增运算,以得到更新的声音索引值。
分别判断更新的图片索引值是否达到相应路径集合中的路径数量,以及声音索引值是否达到相应路径集合中的路径数量,若为是,则说明当前所进行的图片数据加载或者声音数据加载已完毕,所有数据均已载入内存。
通过这一设置索引值的方式将为数据的分批加载提供了可控性。
虽然已参照几个典型实施方式描述了本发明,但应当理解,所用的术语是说明和示例性、而非限制性的术语。由于本发明能够以多种形式具体实施而不脱离发明的精神或实质,所以应当理解,上述实施方式不限于任何前述的细节,而应在随附权利要求所限定的精神和范围内广泛地解释,因此落入权利要求或其等效范围内的全部变化和改型都应为随附权利要求所涵盖。

Claims (10)

1.一种应用资源加载方法,其特征在于,包括:
初始化应用中每一类资源文件的描述信息;
播放加载动画,并同时根据所述描述信息异步加载所述应用的多个资源文件,以分批将所述多个资源文件载入内存;
移除播放的加载动画;
通过所述内存中的资源文件进行应用中的场景跳转。
2.根据权利要求1所述的应用资源加载方法,其特征在于,所述播放加载动画,并同时根据所述描述信息异步加载所述应用的多个资源文件,以将所述多个资源文件载入内存的步骤包括:
对加载动画进行同步加载,并在应用界面播放所述加载动画;
随着所述加载动画的播放创建子线程;
按照预设时间片交错运行所述子线程对所述描述信息进行的路径读取和应用中主线程根据所述路径和资源文件中的数据类型分批进行的资源文件载入内存。
3.根据权利要求2所述的应用资源加载方法,其特征在于,所述子线程对所述描述信息进行的路径读取的步骤为:
在所述子线程中处理所述描述信息,以得到所述资源文件中每一数据对应的路径,并按照数据类型将所述路径存入相应的路径集合。
4.根据权利要求3所述的应用资源加载方法,其特征在于,所述应用中主线程根据所述路径和资源文件中的数据类型分批进行的资源文件载入内存步骤为:
通过所述主线程分别根据与所述数据类型对应的所述路径集合以帧为单位循环执行资源文件中单一数据的载入内存,直至所述资源文件中所有数据加载完成。
5.根据权利要求2所述的应用资源加载方法,其特征在于,所述按照预设时间片交错运行所述子线程对所述描述信息进行的路径读取和应用中主线程根据所述路径和资源文件中的数据类型分批进行的资源文件载入内存的步骤中,
所述子线程对所述描述信息进行的路径读取步骤和所述应用中主线程根据所述路径和资源文件中的数据类型分批进行的资源文件载入的步骤之间还包括:
关闭所述子线程,并返回所述主线程的步骤。
6.一种应用资源加载装置,其特征在于,包括:
初始化模块,用于初始化应用中每一类资源文件的描述信息。
加载处理模块,用于播放加载动画,并同时根据所述描述信息异步加载所述应用的多个资源文件,以分批将所述多个资源文件载入内存;
移除模块,用于移除播放的加载动画;
场景跳转模块,用于通过所述内存中的资源文件进行应用场景跳转。
7.根据权利要求6所述的应用资源加载装置,其特征在于,所述加载处理模块包括:
动画播放单元,用于对加载动画进行同步加载,并且在应用界面播放所述加载动画;
线程创建单元,用于随着所述加载动画的播放创建子线程;
分批载入单元,用于按照预设时间片交错运行所述子线程对所述描述信息进行的路径读取和应用中主线程根据所述路径和资源文件中的数据类型分批进行的资源文件载入内存。
8.根据权利要求7所述的应用资源加载装置,其特征在于,所述分批载入单元包括:
信息处理子单元,用于在所述子线程中处理所述描述信息,以得到所述资源文件中每一数据对应的路径,并按照数据类型将路径存入相应的路径集合。
9.根据权利要求8所述的应用资源加载装置,其特征在于,所述分批载入单元还包括:
单一数据载入子单元,用于通过所述主线程分别根据与所述数据类型对应的所述路径集合以帧为单位循环执行资源文件中单一数据的载入内存,直至所述资源文件中所有数据加载完成。
10.根据权利要求7所述的应用资源加载装置,其特征在于,所述分批载入单元还包括:
线程切换子单元,用于关闭所述子线程,并且返回所述主线程。
CN201510250698.7A 2015-05-15 2015-05-15 应用资源加载方法和装置 Pending CN105045655A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510250698.7A CN105045655A (zh) 2015-05-15 2015-05-15 应用资源加载方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510250698.7A CN105045655A (zh) 2015-05-15 2015-05-15 应用资源加载方法和装置

Publications (1)

Publication Number Publication Date
CN105045655A true CN105045655A (zh) 2015-11-11

Family

ID=54452219

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510250698.7A Pending CN105045655A (zh) 2015-05-15 2015-05-15 应用资源加载方法和装置

Country Status (1)

Country Link
CN (1) CN105045655A (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105354320A (zh) * 2015-11-16 2016-02-24 天津南大通用数据技术股份有限公司 一种快速加载多个数据文件的方法及装置
CN105955765A (zh) * 2016-04-22 2016-09-21 北京小米移动软件有限公司 应用预加载方法及装置
CN106874167A (zh) * 2016-12-30 2017-06-20 晶赞广告(上海)有限公司 展示信息的检测方法及装置
CN109636884A (zh) * 2018-10-25 2019-04-16 阿里巴巴集团控股有限公司 动画处理方法、装置及设备
CN110019024A (zh) * 2019-04-11 2019-07-16 苏州浪潮智能科技有限公司 一种目录查询方法、***及电子设备和存储介质
CN110515672A (zh) * 2018-05-21 2019-11-29 阿里巴巴集团控股有限公司 业务数据加载方法、装置以及电子设备
CN110639201A (zh) * 2019-09-08 2020-01-03 北京智明星通科技股份有限公司 一种***的多媒体资源获取方法、装置和移动终端
CN112507058A (zh) * 2021-02-05 2021-03-16 成都怡康科技有限公司 一种基于定位终端的轨迹回放方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080211822A1 (en) * 2004-06-23 2008-09-04 Nhn Corporation Method and System For Loading of Image Resource
CN102340488A (zh) * 2010-07-22 2012-02-01 腾讯科技(北京)有限公司 一种游戏地图的下载方法、***及移动终端
CN102790806A (zh) * 2012-08-17 2012-11-21 深圳锐取信息技术股份有限公司 一种基于http协议下载课件的方法及装置
CN103631565A (zh) * 2013-11-13 2014-03-12 北京像素软件科技股份有限公司 场景资源的加载方法和加载装置
CN103729558A (zh) * 2013-12-26 2014-04-16 北京像素软件科技股份有限公司 一种场景切换方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080211822A1 (en) * 2004-06-23 2008-09-04 Nhn Corporation Method and System For Loading of Image Resource
CN102340488A (zh) * 2010-07-22 2012-02-01 腾讯科技(北京)有限公司 一种游戏地图的下载方法、***及移动终端
CN102790806A (zh) * 2012-08-17 2012-11-21 深圳锐取信息技术股份有限公司 一种基于http协议下载课件的方法及装置
CN103631565A (zh) * 2013-11-13 2014-03-12 北京像素软件科技股份有限公司 场景资源的加载方法和加载装置
CN103729558A (zh) * 2013-12-26 2014-04-16 北京像素软件科技股份有限公司 一种场景切换方法

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105354320A (zh) * 2015-11-16 2016-02-24 天津南大通用数据技术股份有限公司 一种快速加载多个数据文件的方法及装置
CN105955765A (zh) * 2016-04-22 2016-09-21 北京小米移动软件有限公司 应用预加载方法及装置
CN105955765B (zh) * 2016-04-22 2020-03-03 北京小米移动软件有限公司 应用预加载方法及装置
CN106874167A (zh) * 2016-12-30 2017-06-20 晶赞广告(上海)有限公司 展示信息的检测方法及装置
CN110515672A (zh) * 2018-05-21 2019-11-29 阿里巴巴集团控股有限公司 业务数据加载方法、装置以及电子设备
CN109636884A (zh) * 2018-10-25 2019-04-16 阿里巴巴集团控股有限公司 动画处理方法、装置及设备
CN110019024A (zh) * 2019-04-11 2019-07-16 苏州浪潮智能科技有限公司 一种目录查询方法、***及电子设备和存储介质
CN110019024B (zh) * 2019-04-11 2021-09-17 苏州浪潮智能科技有限公司 一种目录查询方法、***及电子设备和存储介质
CN110639201A (zh) * 2019-09-08 2020-01-03 北京智明星通科技股份有限公司 一种***的多媒体资源获取方法、装置和移动终端
CN112507058A (zh) * 2021-02-05 2021-03-16 成都怡康科技有限公司 一种基于定位终端的轨迹回放方法
CN112507058B (zh) * 2021-02-05 2021-04-16 成都怡康科技有限公司 一种基于定位终端的轨迹回放方法

Similar Documents

Publication Publication Date Title
CN105045655A (zh) 应用资源加载方法和装置
US10499035B2 (en) Method and system of displaying a popping-screen
KR102339205B1 (ko) 가상 장면 디스플레이 방법 및 디바이스, 및 저장 매체
US11653072B2 (en) Method and system for generating interactive media content
US20190364211A1 (en) System and method for editing video contents automatically technical field
CN109788212A (zh) 一种分段视频的处理方法、装置、终端和存储介质
CN109379633B (zh) 视频编辑方法、装置、计算机设备及可读存储介质
CN112800858A (zh) 一种模型配置以及图像识别的方法及装置
CN110007985B (zh) 小程序音乐播放器组件调用方法及设备
US11941728B2 (en) Previewing method and apparatus for effect application, and device, and storage medium
CN113473017A (zh) 一种图像处理方法、装置、设备及存储介质
CN112559044A (zh) 一种播放切换方法、装置及计算机可读存储介质
CN109040838B (zh) 一种视频数据的处理方法、装置及视频播放方法、客户端
CN104486553B (zh) 一种全景照片拍摄方法和终端
CN112533058A (zh) 视频处理方法、装置、设备及计算机可读存储介质
CN110362375A (zh) 桌面数据的显示方法、装置、设备和存储介质
CN116781992A (zh) 视频生成方法、装置、电子设备及存储介质
CN110087120A (zh) 在线列表与本地列表的同窗切换方法、及计算设备
TW202011233A (zh) 個人雲系統及其相關本地化方法
CN114125560A (zh) 一种视频播放方法、装置、电子设备及存储介质
CN107832366A (zh) 视频分享方法及装置、终端装置及计算机可读存储介质
CN110428453B (zh) 数据处理方法、装置、数据处理设备及存储介质
CN112947901A (zh) 扩增实境的内容控制***、方法及计算机存储介质
KR101553272B1 (ko) 복수의 타이머를 사용하여 멀티미디어 콘텐츠를 저작하는 방법 및 복수의 타이머를 사용하여 멀티미디어 콘텐츠를 저작하는 저작 장치
CN112734942B (zh) Ar内容播放修改方法、装置、计算机设备及存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20151111

RJ01 Rejection of invention patent application after publication