图片加载装置和方法

文档序号:10654143阅读:388来源:国知局
图片加载装置和方法
【专利摘要】本发明公开了一种图片加载装置,该装置包括:指令模块,用于根据基于本地图片输入的图片加载指令,创建对应的图片解码任务;去重模块,用于对预先配置的图片任务堆栈进行去重处理,将所述图片解码任务压入到所述图片任务堆栈中;加载模块,用于若图片进程为空闲状态,则取出所述图片解码任务并执行,加载所述本地图片。本发明还公开了一种图片加载方法。本发明解决了本地图片加载卡顿的技术问题,用户查阅相册或滑动相册时图片加载过程流畅,实现了本地图片加载流畅、不卡顿。
【专利说明】
图片加载装置和方法
技术领域
[0001 ]本发明设及通信技术领域,尤其设及一种图片加载装置和方法。
【背景技术】
[0002] 随着手机等移动终端的普及,用户在日常使用中,会保存大量的图片到移动终端 本地,例如外出旅游时拍摄的照片,用于各种社交应用的表情图片等等。
[0003] 当用户查看本地存储的照片,或是通过应用软件查看本地图片时,由于移动终端 的处理速度有限,同时加载大量的图片到显示界面上会导致移动终端的UI (User Interface,用户界面)线程无法响应,从而导致显示界面出现卡顿现象,用户无法滑动相册 列表,或者是相册列表为空白、未显示图片的,严重影响了用户的使用体验。

【发明内容】

[0004] 本发明的主要目的在于提供一种图片加载装置和方法,旨在解决本地图片加载卡 顿的技术问题。
[0005] 为实现上述目的,本发明提供一种图片加载装置,所述图片加载装置包括:
[0006] 指令模块,用于根据基于本地图片输入的图片加载指令,创建对应的图片解码任 务;
[0007] 去重模块,用于对预先配置的图片任务堆找进行去重处理,将所述图片解码任务 压入到所述图片任务堆找中;
[000引加载模块,用于若图片进程为空闲状态,则取出所述图片解码任务并执行,加载所 述本地图片。
[0009] 在一个实施例中,所述图片加载装置还包括:
[0010] 缓存模块,用于获取所述本地图片的缓存图片,创建所述缓存图片与所述本地图 片的映射关系;
[0011] 查找模块,用于根据基于本地图片输入的图片加载指令,W及所述映射关系,查找 所述本地图片对应的缓存图片;
[0012] 获取模块,用于若查找到所述本地图片对应的缓存图片,则获取所述本地图片对 应的缓存图片,进行图片加载;
[0013] 所述指令模块,还用于若未查找到所述本地图片对应的缓存图片,则根据所述图 片加载指令,创建对应的图片解码任务。
[0014] 在一个实施例中,所述去重模块还用于,
[0015] 获取所述图片解码任务绑定的界面控件;根据所述界面控件,对所述图片任务堆 找中的任务进行去重处理;将所述图片解码任务压入所述图片任务堆找。
[0016] 在一个实施例中,所述图片加载装置还包括:
[0017] 状态模块,用于根据所述图片进程的状态标志,获取所述图片进程的运行状态。
[0018] 在一个实施例中,所述加载模块还用于,
[0019] 若所述图片进程为空闲状态,则从所述图片任务堆找中取出所述图片解码任务, 更新所述状态标志为忙碌状态;执行所述图片解码任务,加载所述本地图片;更新所述状态 标志为空闲状态。
[0020] 此外,为实现上述目的,本发明还提供一种图片加载方法,所述图片加载方法包括 W下步骤:
[0021 ]根据基于本地图片输入的图片加载指令,创建对应的图片解码任务;
[0022] 对预先配置的图片任务堆找进行去重处理,将所述图片解码任务压入到所述图片 任务堆找中;
[0023] 若图片进程为空闲状态,则取出所述图片解码任务并执行,加载所述本地图片。
[0024] 在一个实施例中,所述若图片进程为空闲状态,则取出所述图片解码任务并执行, 加载所述本地图片的步骤之后,还包括:
[0025] 获取所述本地图片的缓存图片,创建所述缓存图片与所述本地图片的映射关系;
[0026] 所述根据基于本地图片输入的图片加载指令,创建对应的图片解码任务的步骤之 前,还包括:
[0027] 根据基于本地图片输入的图片加载指令,W及所述映射关系,查找所述本地图片 对应的缓存图片;
[0028] 若查找到所述本地图片对应的缓存图片,则获取所述本地图片对应的缓存图片, 进行图片加载;
[0029] 若未查找到所述本地图片对应的缓存图片,则转入执行步骤:根据基于本地图片 输入的图片加载指令,创建对应的图片解码任务。
[0030] 在一个实施例中,所述对图片任务堆找进行去重处理,将所述图片解码任务压入 到所述图片任务堆找中的步骤包括:
[0031 ]获取所述图片解码任务绑定的界面控件;
[0032] 根据所述界面控件,对所述图片任务堆找中的任务进行去重处理;
[0033] 将所述图片解码任务压入所述图片任务堆找。
[0034] 在一个实施例中,所述若图片进程为空闲状态,则取出所述图片解码任务并执行, 加载所述本地图片的步骤之前,还包括:
[0035] 根据所述图片进程的状态标志,获取所述图片进程的运行状态;
[0036] 若所述图片进程为空闲状态,则转入执行步骤:取出所述图片解码任务并执行,加 载所述本地图片。
[0037] 在一个实施例中,所述若图片进程为空闲状态,则取出所述图片解码任务并执行, 加载所述本地图片的步骤包括:
[0038] 若所述图片进程为空闲状态,则从所述图片任务堆找中取出所述图片解码任务, 更新所述状态标志为忙碌状态;
[0039] 执行所述图片解码任务,加载所述本地图片;
[0040] 更新所述状态标志为空闲状态。
[0041] 本发明提出的一种图片加载装置和方法,通过指令模块根据基于本地图片输入的 图片加载指令,创建对应的图片解码任务;去重模块对预先配置的图片任务堆找进行去重 处理,将图片解码任务压入到图片任务堆找中;若图片进程为空闲状态,贝阳日载模块取出图 片解码任务并执行,加载本地图片。本发明在收到用户基于本地图片输入的图片加载指令 后,创建对应的图片解码任务;然后,对保存图片解码任务的图片任务堆找进行去重处理, 避免了用户重复输入相同的图片加载指令,导致移动终端重复执行同样的图片解码任务; 然后,将当前图片解码任务压入到图片任务堆找中,使得移动终端优先处理最新创建的图 片解码任务,由于最新创建的图片解码任务为加载当前显示界面的图片,从而实现了优先 执行当前显示界面的图片加载指令,已隐藏或划过的显示界面的图片加载指令则被延迟处 理;当图片进程为空闲状态时,再取出图片解码任务并执行,保证了同一时间仅执行一个图 片解码任务。由此,本发明通过在本地图片加载过程中优先处理当前显示界面对应的图片 加载指令,同一时间仅执行一个图片解码任务,使得本地图片加载流杨,用户滑动相册时给 用户带来了图片加载流杨的体验,解决了本地图片加载卡顿的技术问题。
【附图说明】
[0042] 图1为实现本发明各个实施例一个移动终端的硬件结构示意图;
[0043] 图2为如图1所示的移动终端的无线通信系统示意图;
[0044] 图3为本发明图片加载装置第一实施例、第=实施例的模块示意图;
[0045] 图4为本发明图片加载装置第二实施例的模块示意图;
[0046] 图5为本发明图片加载装置第四实施例、第五实施例的模块示意图;
[0047] 图6为本发明图片加载方法第一实施例的流程示意图;
[0048] 图7为本发明图片加载方法第二实施例的流程示意图;
[0049] 图8为本发明图片加载方法第=实施例的流程示意图;
[0050] 图9为本发明图片加载方法第四实施例的流程示意图;
[0051] 图10为本发明图片加载方法第五实施例的流程示意图。
[0052] 本发明目的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
【具体实施方式】
[0053] 应当理解,此处所描述的具体实施例仅仅用W解释本发明,并不用于限定本发明。
[0054] 现在将参考附图描述实现本发明各个实施例的移动终端。在后续的描述中,使用 用于表示元件的诸如"模块"、"部件"或"单元"的后缀仅为了有利于本发明的说明,其本身 并没有特定的意义。因此,"模块"与"部件"可W混合地使用。
[0055] 移动终端可W W各种形式来实施。例如,本发明中描述的终端可W包括诸如移动 电话、智能电话、笔记本电脑、数字广播接收器、PM(个人数字助理)、PAD(平板电脑)、PMP (便携式多媒体播放器)、导航装置等等的移动终端W及诸如数字TV、台式计算机等等的固 定终端。下面,假设终端是移动终端。然而,本领域技术人员将理解的是,除了特别用于移动 目的元件之外,根据本发明的实施方式的构造也能够应用于固定类型的终端。
[0056] 图1为实现本发明各个实施例的一个可选的移动终端硬件结构示意。
[0057] 移动终端100可W包括无线通信单元110、用户输入单元120、感测单元130、输出单 元140、存储器150、接口单元160、控制器170和电源单元180等等。图1示出了具有各种组件 的移动终端,但是应理解的是,并不要求实施所有示出的组件。可W替代地实施更多或更少 的组件。将在下面详细描述移动终端的元件。
[0058] 无线通信单元110通常包括一个或多个组件,其允许移动终端100与无线通信系统 或网络之间的无线电通信。例如,无线通信单元可W包括广播接收模块、移动通信模块、无 线互联网模块、短程通信模块和位置信息模块中的至少一个。
[0059] 用户输入单元120可W根据用户输入的命令生成键输入数据W控制移动终端的各 种操作。用户输入单元120允许用户输入各种类型的信息,并且可W包括键盘、锅仔片、触摸 板(例如,检测由于被接触而导致的电阻、压力、电容等等的变化的触敏组件)、滚轮、摇杆等 等。特别地,当触摸板W层的形式叠加在显示单元141上时,可W形成触摸屏。
[0060] 感测单元130检测移动终端100的当前状态,(例如,移动终端100的打开或关闭状 态)、移动终端100的位置、用户对于移动终端100的接触(即,触摸输入)的有无、移动终端 100的取向、移动终端100的加速或减速移动和方向等等,并且生成用于控制移动终端100的 操作的命令或信号。例如,当移动终端100实施为滑动型移动电话时,感测单元130可W感测 该滑动型电话是打开还是关闭。另外,感测单元130能够检测电源单元180是否提供电力或 者接口单元160是否与外部装置禪接。
[0061] 输出单元140被构造为W视觉、音频和/或触觉方式提供输出信号(例如,音频信 号、视频信号、警报信号、振动信号等等)。输出单元140可W包括显示单元141等等。
[0062] 显示单元141可W显示在移动终端100中处理的信息。例如,当移动终端100处于电 话通话模式时,显示单元141可W显示与通话或其它通信(例如,文本消息收发、多媒体文件 下载等等)相关的用户界面(UI)或图形用户界面(GUI)。当移动终端100处于视频通话模式 或者图像捕获模式时,显示单元141可W显示捕获的图像和/或接收的图像、示出视频或图 像W及相关功能的UI或GUI等等。
[0063] 同时,当显示单元141和触摸板W层的形式彼此叠加 W形成触摸屏时,显示单元 141可W用作输入装置和输出装置。显示单元141可W包括液晶显示器化CD)、薄膜晶体管 LCD(TFT-LCD)、有机发光二极管(OLED)显示器、柔性显示器、S维(3D)显示器等等中的至少 一种。运些显示器中的一些可W被构造为透明状W允许用户从外部观看,运可W称为透明 显示器,典型的透明显示器可W例如为TOLED(透明有机发光二极管)显示器等等。根据特定 想要的实施方式,移动终端100可W包括两个或更多显示单元(或其它显示装置),例如,移 动终端可W包括外部显示单元(未示出)和内部显示单元(未示出)。触摸屏可用于检测触摸 输入压力W及触摸输入位置和触摸输入面积。
[0064] 存储器150可W存储由控制器170执行的处理和控制操作的软件程序等等,或者可 W暂时地存储己经输出或将要输出的数据(例如,电话簿、消息、静态图像、视频等等)。而 且,存储器150可W存储关于当触摸施加到触摸屏时输出的各种方式的振动和音频信号的 数据。
[0065] 存储器150可W包括至少一种类型的存储介质,所述存储介质包括闪存、硬盘、多 媒体卡、卡型存储器(例如,SD或DX存储器等等)、随机访问存储器(RAM)、静态随机访问存储 器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器化EPROM)、可编程只读存储器 (PROM)、磁性存储器、磁盘、光盘等等。而且,移动终端100可W与通过网络连接执行存储器 150的存储功能的网络存储装置协作。
[0066] 接口单元160用作至少一个外部装置与移动终端100连接可W通过的接口。例如, 外部装置可W包括有线或无线头戴式耳机端口、外部电源(或电池充电器)端口、有线或无 线数据端口、存储卡端口、用于连接具有识别模块的装置的端口、音频输入/输出(I/O)端 口、视频I/O端口、耳机端口等等。识别模块可W是存储用于验证用户使用移动终端IOO的各 种信息并且可W包括用户识别模块(UIM)、客户识别模块(SIM)、通用客户识别模块(USIM) 等等。另外,具有识别模块的装置(下面称为"识别装置")可W采取智能卡的形式,因此,识 别装置可W经由端口或其它连接装置与移动终端100连接。接口单元160可W用于接收来自 外部装置的输入(例如,数据信息、电力等等)并且将接收到的输入传输到移动终端100内的 一个或多个元件或者可W用于在移动终端和外部装置之间传输数据。
[0067] 控制器170通常控制移动终端的总体操作。例如,控制器170执行与语音通话、数据 通信、视频通话等等相关的控制和处理。控制器170可W执行模式识别处理,W将在触摸屏 上执行的手写输入或者图片绘制输入识别为字符或图像。
[0068] 电源单元180在控制器170的控制下接收外部电力或内部电力并且提供操作各元 件和组件所需的适当的电力。
[0069] 运里描述的各种实施方式可W W使用例如计算机软件、硬件或其任何组合的计算 机可读介质来实施。对于硬件实施,运里描述的实施方式可W通过使用特定用途集成电路 (ASIC)、数字信号处理器(DSP)、数字信号处理装置(DSPD)、可编程逻辑装置(PLD)、现场可 编程口阵列(FPGA)、处理器、控制器、微控制器、微处理器、被设计为执行运里描述的功能的 电子单元中的至少一种来实施,在一些情况下,运样的实施方式可W在控制器170中实施。 对于软件实施,诸如过程或功能的实施方式可W与允许执行至少一种功能或操作的单独的 软件模块来实施。软件代码可W由W任何适当的编程语言编写的软件应用程序(或程序)来 实施,软件代码可W存储在存储器150中并且由控制器170执行。
[0070] 至此,己经按照其功能描述了移动终端。下面,为了简要起见,将描述诸如折叠型、 直板型、摆动型、滑动型移动终端等等的各种类型的移动终端中的滑动型移动终端作为示 例。因此,本发明能够应用于任何类型的移动终端,并且不限于滑动型移动终端。
[0071] 如图1中所示的移动终端100可W被构造为利用经由帖或分组发送数据的诸如有 线和无线通信系统W及基于卫星的通信系统来操作。
[0072] 现在将参考图2描述其中根据本发明的移动终端能够操作的通信系统。
[0073] 运样的通信系统可W使用不同的空中接口和/或物理层。例如,由通信系统使用的 空中接口包括例如频分多址(FDMA)、时分多址(TDMA)、码分多址(CDMA)和通用移动通信系 统(UMTS)(特别地,长期演进化TE))、全球移动通信系统(GSM)等等。作为非限制性示例,下 面的描述设及CDM通信系统,但是运样的教导同样适用于其它类型的系统。
[0074] 参考图2,CDMA无线通信系统可W包括多个移动终端100、多个基站(BS)270、基站 控制器(BS0275和移动交换中屯、(MSC)280dMSC280被构造为与公共电话交换网络(PSTN) 290形成接口。MSC280还被构造为与可W经由回程线路禪接到基站270的BSC275形成接口。 回程线路可W根据若干己知的接口中的任一种来构造,所述接口包括例如E1/T1、ATM,IP、 PPP、帖中继、皿化、AD化或址化。将理解的是,如图2中所示的系统可W包括多个BSC275。
[0075] 每个BS270可W服务一个或多个分区(或区域),由多向天线或指向特定方向的天 线覆盖的每个分区放射状地远离BS270。或者,每个分区可W由用于分集接收的两个或更多 天线覆盖。每个BS270可W被构造为支持多个频率分配,并且每个频率分配具有特定频谱 (例女日,1.25MHz,5MHz 等等)。
[0076] 分区与频率分配的交叉可W被称为CDMA信道。BS270也可W被称为基站收发器子 系统(BTS)或者其它等效术语。在运样的情况下,术语"基站"可W用于笼统地表示单个 BSC275和至少一个BS270。基站也可W被称为"蜂窝站"。或者,特定BS270的各分区可W被称 为多个蜂窝站。
[0077] 如图2中所示,广播发射器(BT)295将广播信号发送给在系统内操作的移动终端 100。。在图2中,示出了几个全球定位系统(GPS)卫星300。卫星300帮助定位多个移动终端 100中的至少一个。
[0078] 在图2中,描绘了多个卫星300,但是需要理解的是,可W利用任何数目的卫星获得 有用的定位信息。替代GPS跟踪技术或者在GPS跟踪技术之外,可W使用可W跟踪移动终端 的位置的其它技术。另外,至少一个GPS卫星300可W选择性地或者额外地处理卫星DMB传 输。
[0079] 作为无线通信系统的一个典型操作,BS270接收来自各种移动终端100的反向链路 信号。移动终端100通常参与通话、消息收发和其它类型的通信。特定基站270接收的每个反 向链路信号被在特定BS270内进行处理。获得的数据被转发给相关的BSC275"BSC提供通话 资源分配和包括BS270之间的软切换过程的协调的移动管理功能。BSC275还将接收到的数 据路由到MSC280,其提供用于与PSTN290形成接口的额外的路由服务。类似地,PSTN290与 MSC280形成接口,MSC与BSC275形成接口,并且BSC275相应地控制BS270W将正向链路信号 发送到移动终端100。
[0080] 基于上述移动终端硬件结构W及通信系统,提出本发明各个实施例。
[0081] 参照图3,本发明图片加载装置第一实施例提供一种图片加载装置,所述图片加载 装置包括:
[0082] 指令模块10,用于根据基于本地图片输入的图片加载指令,创建对应的图片解码 任务。
[0083] 本实施例在用户查看移动终端本地的图片时,通过去除重复的图片加载任务,从 而使移动终端仅处理当前显示界面的图片加载任务,进行图片的加载,解决了图片加载的 卡顿问题。图片加载装置部署在移动终端中。
[0084] 具体的,作为一种实施方式,首先,指令模块10接收用户基于本地图片输入的图片 加载指令。用户可W通过打开相册、滑动相册或者是通过应用软件查看相册等形式,输入图 片加载指令,用于控制加载当前显示界面中的本地图片。图片加载指令可W控制同时加载 一张或多张本地图片。
[0085] 需要说明的是,图片加载指令对应的本地图片可存储于移动终端的内存,或者是 外接SD(Se州re Digital Memory化rd,安全数字存储卡)卡、移动硬盘等存储设备中。
[0086] 指令模块10根据当前用户输入的图片加载指令创建对应的图片解码任务,用于解 码移动终端中存储的本地图片,加载到当前的显示界面中。
[0087] 同时,指令模块10获取当前图片解码任务的任务属性,也可称为ImageRef (图片参 数)。参照下述表1,图片解码任务的任务属性包括imageView(图片显示控件)、f ile化th(文 件路径)、wi化M宽),height(高)等。
[008引
L0089」 表1
[0090] 其中,image View为当前图片解析任务对应绑定的控件,也即当前UI (Userinterface,用户界面)界面加载图片的控件;filePath为当前加载的本地图片的存储 路径;width为本地图片显示在UI界面时的宽度;hei曲t为本地图片显示在UI界面时的高 度。
[0091] 由此,指令模块10得到图片解码任务。
[0092] 去重模块20,用于对预先配置的图片任务堆找进行去重处理,将所述图片解码任 务压入到所述图片任务堆找中。
[0093] 在得到图片解码任务后,去重模块20对预先配置的图片任务堆找进行去重处理, 然后将图片解码任务压入到图片任务堆找。
[0094] 具体的,作为一种实施方式,首先,去重模块20预先创建并配置图片任务堆找 (Image化Sk Stack),用于保护用户查看相册或滑动相册时,产生的图片加载指令所对应 的图片解码任务。图片任务堆找中保存了创建的图片解码任务。
[00%]去重模块20去除堆找中与当前图片解码任务相同的任务,避免重复执行相同的任 务。
[0096] 然后,去重模块20将当前图片解码任务压入图片任务堆找中,使当前图片解码任 务位于图片任务堆找的顶层,从而能够优先处理最新创建的图片解码任务。
[0097] 加载模块30,用于若图片进程为空闲状态,则取出所述图片解码任务并执行,加载 所述本地图片。
[0098] 在将图片解码任务压入到图片任务堆找中后,若当前图片进程为空闲状态,则加 载模块30从图片任务堆找中取出最顶层的图片解码任务并执行,加载移动终端的本地图 片。
[0099] 具体的,作为一种实施方式,图片进程(Image T虹ead)用于解码本地图片、加载到 UI界面中。
[0100] 加载模块30获取图片进程当前的处理状态,若当前图片进程为空闲状态,未执行 图片解码任务,贝阳日载模块30控制从图片任务堆找中弹出最上层的图片解码任务,也即从 图片任务堆找中取出图片解码任务。
[0101] 然后,加载模块30控制图片进程执行图片解码任务,获取需要加载的本地图片,并 根据任务属性将本地图片压缩或剪裁为当前UI界面显示图片的尺寸。
[0102] 图片进程完成图片解码任务后,加载模块30通知UI线程刷新当前界面,显示处理 后的本地图片。
[0103] 由此,实现了移动终端本地图片的加载。
[0104] 在本实施例中,指令模块10根据基于本地图片输入的图片加载指令,创建对应的 图片解码任务;去重模块20对预先配置的图片任务堆找进行去重处理,将图片解码任务压 入到图片任务堆找中;若图片进程为空闲状态,贝阳日载模块30取出图片解码任务并执行,加 载本地图片。本实施例在收到用户基于本地图片输入的图片加载指令后,创建对应的图片 解码任务;然后,对保存图片解码任务的图片任务堆找进行去重处理,避免了用户重复输入 相同的图片加载指令,导致移动终端重复执行同样的图片解码任务;然后,将当前图片解码 任务压入到图片任务堆找中,使得移动终端优先处理最新创建的图片解码任务,由于最新 创建的图片解码任务为加载当前显示界面的图片,从而实现了优先执行当前显示界面的图 片加载指令,已隐藏或划过的显示界面的图片加载指令则被延迟处理;当图片进程为空闲 状态时,再取出图片解码任务并执行,保证了同一时间仅执行一个图片解码任务。由此,本 实施例通过在本地图片加载过程中优先处理当前显示界面对应的图片加载指令,同一时间 仅执行一个图片解码任务,使得本地图片加载流杨,用户滑动相册时给用户带来了图片加 载流杨的体验,解决了本地图片加载卡顿的技术问题。
[0105] 进一步的,参照图4,本发明图片加载装置第二实施例提供一种图片加载装置,基 于上述图3所示的实施例,所述图片加载装置还包括:
[0106] 缓存模块40,用于获取所述本地图片的缓存图片,创建所述缓存图片与所述本地 图片的映射关系。
[0107] 本实施例与上述本发明图片加载装置第一实施例的区别在于:本实施例通过获取 已加载的本地图片的缓存图片,实现了当再次加载本地图片时,可直接加载缓存图片,减少 了图片加载指令的处理过程,提高了图片加载速度和流杨度。
[0108] 作为一种实施方式,在图片解码任务完成执行、加载本地图片后,缓存模块40获取 当前加载的本地图片的缓存图片,并创建当前本地图片与对应的缓存图片的映射关系。
[0109] 具体的,图片解码任务完成执行后,缓存模块40获取当前显示界面加载显示的图 片作为本地图片对应的缓存图片,将缓存图片存入移动终端内存的缓存区中,例如磁盘 cache(高速缓冲存储器),便于后续快速的调取使用。
[0110] 并且,缓存模块40创建缓存图片与本地图片的映射关系,从而可W根据移动终端 本地的本地图片查找到对应的缓存图片。
[0111] 对应的,所述图片加载装置还包括:
[0112] 查找模块50,用于根据基于本地图片输入的图片加载指令,W及所述映射关系,查 找所述本地图片对应的缓存图片。
[0113] 在收到用户基于本地图片输入的图片加载指令后,查找模块50首先根据图片加载 指令获取当前需要加载的本地图片,可W使用存储路径及ID(编号)等识别信息标识本地图 片。
[0114] 然后,查找模块50根据配置的映射关系和本地图片的标识信息,在缓存区中查找 本地图片对应的缓存图片。
[0115] 获取模块60,用于若查找到所述本地图片对应的缓存图片,则获取所述本地图片 对应的缓存图片,进行图片加载;所述指令模块10,还用于若未查找到所述本地图片对应的 缓存图片,则根据所述图片加载指令,创建对应的图片解码任务。
[0116] 若成功查找到本地图片对应的缓存图片,则获取模块60获取本地图片对应的缓存 图片,将得到的缓存图片进行解析,加载到当前的显示界面中。
[0117] 由此,减少了图片的解析、加载时间,无需再次执行图片解码任务,减轻了移动终 端的运行负担,提高了图片额加载速度。
[0118] 作为另一种实施方式,若在移动终端的缓存区中未成功查找到本地图片对应的缓 存图片,则指令模块10根据图片加载指令创建对应的图片解码任务,执行图片解码任务加 载本地图片。
[0119] 本实施例在加载本地图片后,缓存模块40获取本地图片的缓存图片,创建缓存图 片与本地图片的映射关系;收到图片加载指令时,查找模块50根据基于本地图片输入的图 片加载指令,W及配置的映射关系,查找本地图片对应的缓存图片;若查找到本地图片对应 的缓存图片,则获取模块60获取本地图片对应的缓存图片,进行图片加载;若未查找到本地 图片对应的缓存图片,则指令模块10根据图片记载指令创建对应的图片解码任务,执行图 片解码任务加载本地图片。本实施例在加载本地图片后,获取本地图片的缓存图片,创建缓 存图片与本地图片的映射关系;由此,在收到用户输入的图片加载指令时,根据图片记载指 令获取当前需要加载的本地图片,并根据配置的映射关系查找本地图片对应的缓存图片; 若成功查找到缓存图片,则可W直接加载缓存图片,提升了图片加载速度,避免重复处理同 一本地图片的图片解码任务,减轻了移动终端的处理负担;若未查到当前本地图片的缓存 图片,则创建图片解码任务,进行图片解码任务的处理。本实施例通过缓存已加载的图片, 提高了移动终端的本地图片加载速度,提升了本地图片加载的流杨程度。
[0120] 进一步的,参照图3,本发明图片加载装置第=实施例提供一种图片加载装置,基 于上述图3或图4所示的实施例(本实施例W图3所示的本发明图片加载装置第一实施例为 例),所述去重模块20还用于,
[0121 ]获取所述图片解码任务绑定的界面控件;根据所述界面控件,对所述图片任务堆 找中的任务进行去重处理;将所述图片解码任务压入所述图片任务堆找。
[0122] 本实施例与上述本发明图片加载装置第一实施例和第二实施例的区别在于:本实 施例通过图片解码任务绑定的界面控件进行图片任务堆找的去重处理,避免了执行同一界 面控件复用而产生的大量过期任务,减轻了处理负担,加快了图片解码任务的执行速度。
[0123] 在获取图片解码任务后,具体的,作为一种实施方式,首先,去重模块20根据图片 解码任务的任务属性,获取图片解码任务绑定的界面控件。
[0124] 当用户在查看相册时,滑动显示界面,复用加载本地图片的界面控件,导致同一界 面控件产生较多的图片解码任务。
[0125] 当用户滑过上一显示界面,停留在当前显示界面时,上一显示界面的图片解码任 务还保存在图片任务堆找中,此时,由于上一显示界面的图片解码任务与当前显示界面的 图片解码任务绑定了同一界面控件,则可W根据界面控件删除图片任务堆找中上一显示界 面的图片解码任务,进行去重处理。使图片加载装置无需再处理上一显示界面的图片解码 任务,不再加载上一显示界面的本地图片,仅处理当前显示界面的图片解码任务,加载当前 显示界面的本地图片。
[0126] 具体的,去重模块20根据图片任务堆找中已存储的各图片解码任务的任务属性, 筛选出与当前图片解码任务所绑定的界面控件相同的任务。
[0127] 然后,去重模块20删除图片任务堆找中,与当前图片解码任务所绑定的界面控件 相同的任务,也即删除图片任务堆找中当前界面控件绑定的所有任务。
[0128] 在对图片任务堆找中的任务进行去重处理后,去重模块20将当前图片解码任务压 入图片任务堆找中,则当前图片解码任务位于图片任务堆找的顶层,若图片进程为空闲,贝U 优先处理位于顶层的当前图片解码任务,提高了图片加载的速度。
[0129] 在本实施例中,去重模块20获取图片解码任务绑定的界面控件;然后根据界面控 件,对图片任务堆找中的任务进行去重处理;然后,将图片解码任务压入图片任务堆找。本 实施例通过获取图片解码任务绑定的界面控件,根据当前图片解码任务绑定的界面控件对 图片任务堆找进行去重,删除了图片任务堆找中,与当前图片解码任务绑定的界面控件相 同的任务,避免了由于用户滑动显示界面时同一界面控件复用,而导致产生的多个图片解 码任务被重复执行,影响图片的加载速度,极大地提升了移动终端的本地图片加载速度。
[0130] 进一步的,参照图5,本发明图片加载装置第四实施例提供一种图片加载装置,基 于上述图3所示的本发明图片加载装置第=实施例,图片加载装置还包括:
[0131] 状态模块70,用于根据所述图片进程的状态标志,获取所述图片进程的运行状态。
[0132] 本实施例与上述本发明图片加载装置第=实施例的区别在于:本实施例通过查看 图片进程的状态标志,实时准确获取图片进程的当前状态,保证同一时间仅执行一个图片 解码任务,避免多个图片解码任务同时执行降低图片的加载速度。
[0133] 在将图片解码任务压入图片任务堆找中后,状态模块70根据图片进程的状态标志 (Flag),获取当前图片进程的运行状态。
[0134] 例如,若图片进程的Flag标记为化Ise(否),则当前图片进程为忙碌状态;若图片 进程的Flag标记为True,则当前图片进程为空闲状态。
[0135] 由此,状态模块70获取图片进程的当前运行状态。
[0136] 若图片进程的当前运行状态为空闲状态,贝阳日载模块30执行图片解码任务,加载 本地图片。
[0137] 在本实施例中,状态模块70根据图片进程的状态标志,获取图片进程的运行状态; 若图片运行状态为空闲状态,贝阳日载模块30执行图片解码任务,加载本地图片。本实施例通 过图片进程的状态标记,实现了准确获取图片进程的运行状态,保证了同一时间仅处理一 个图片解码任务,提高了图片解码的处理速度,也即提高了图片加载速度。
[0138] 进一步的,参照图5,本发明图片加载装置第五实施例提供一种图片加载装置,基 于上述图5所示的本发明图片加载装置第四实施例,所述加载模块30还用于,
[0139] 若所述图片进程为空闲状态,则从所述图片任务堆找中取出所述图片解码任务, 更新所述状态标志为忙碌状态;执行所述图片解码任务,加载所述本地图片;更新所述状态 标志为空闲状态。
[0140] 本实施例与上述本发明图片加载装置第四实施例的区别在于:本实施例通过在执 行图片解码任务的过程中即时更新图片进程的状态标记,使得图片进程的状态标记为最新 且准确的,从而更加准确的获取图片进程的运行状态。
[0141] 具体的,若当前图片进程为空闲状态,贝阳日载模块30从图片任务堆找中取出当前 图片解码任务,将图片解码任务增加到请求队列(Request如eue)中。
[0142] 同时,加载模块30将图片进程的状态标志修改为化Ise,也即更新状态标志为忙碌 状态。
[0143] 然后,加载模块30控制图片进程执行请求队列中的图片解码任务,根据任务属性 查找本地图片进行解码,并根据当前UI界面显示图片的尺寸压缩或剪裁本地图片,得到本 地图片的显示小图,用于显示在UI界面中,还可W用作本地图片对应的缓存图片。
[0144] 然后,加载模块30刷新UI界面,将本地图片的显示小图显示在UI界面中。
[0145] 加载模块30在执行完成当前的图片解码任务后,将图片进程的状态标志修改为 True,也即更新状态标志为空闲状态。
[0146] 然后,加载模块30取出图片任务堆找中当前最顶层的图片解码任务,并控制图片 进程执行。
[0147] 在本实施例中,若图片进程为空闲状态,贝阳日载模块30从图片任务堆找中取出图 片解码任务,更新状态标志为忙碌状态;然后,执行图片解码任务,加载本地图片;然后,加 载模块30更新状态标志为空闲状态。本实施例通过在执行图片解码任务的过程中即时更新 图片进程的状态标志,明确图片进程的运行状态,保证同一时间仅执行一个图片解码任务, 提高了本地图片的加载速度。
[0148] 参照图6,本发明图片加载方法第一实施例提供一种图片加载方法,可通过上述图 片加载装置第一实施例具体实现,所述图片加载方法包括:
[0149] 步骤S10、根据基于本地图片输入的图片加载指令,创建对应的图片解码任务。
[0150] 本实施例在用户查看移动终端本地的图片时,通过去除重复的图片加载任务,从 而使移动终端仅处理当前显示界面的图片加载任务,进行图片的加载,解决了图片加载的 卡顿问题。
[0151] 具体的,作为一种实施方式,首先,移动终端接收用户基于本地图片输入的图片加 载指令。用户可W通过打开相册、滑动相册或者是通过应用软件查看相册等形式,输入图片 加载指令,用于控制移动终端加载当前显示界面中的本地图片。图片加载指令可W控制同 时加载一张或多张本地图片。
[0152] 需要说明的是,图片加载指令对应的本地图片可存储于移动终端的内存,或者是 外接SD(Se州re Digital Memory化rd,安全数字存储卡)卡、移动硬盘等存储设备中。
[0153] 移动终端根据当前用户输入的图片加载指令创建对应的图片解码任务,用于解码 移动终端中存储的本地图片,加载到当前的显示界面中。
[0154] 同时,移动终端获取当前图片解码任务的任务属性,也可称为ImageRef (图片参 数)。参照下述表1,图片解码任务的任务属性包括imageView(图片显示控件)、f ile化th(文 件路径)、wi化M宽),height(高)等。 「01551
[0156]表1
[0157]其中,image V i ew为当前图片解析任务对应绑定的控件,也即当前U I (Userinterface,用户界面)界面加载图片的控件;filePath为当前加载的本地图片的存储 路径;width为本地图片显示在UI界面时的宽度;hei曲t为本地图片显示在UI界面时的高 度。
[0158]由此,移动终端得到图片解码任务。
[0159] 步骤S20、对预先配置的图片任务堆找进行去重处理,将所述图片解码任务压入到 所述图片任务堆找中。
[0160] 在得到图片解码任务后,移动终端对预先配置的图片任务堆找进行去重处理,然 后将图片解码任务压入到图片任务堆找。
[0161 ]具体的,作为一种实施方式,首先,移动终端预先创建并配置图片任务堆找(Image Task Stack),用于保护用户查看相册或滑动相册时,产生的图片加载指令所对应的图片解 码任务。图片任务堆找中保存了创建的图片解码任务。
[0162] 移动终端去除堆找中与当前图片解码任务相同的任务,避免重复执行相同的任 务。
[0163] 然后,移动终端将当前图片解码任务压入图片任务堆找中,使当前图片解码任务 位于图片任务堆找的顶层,从而使移动终端能够优先处理最新创建的图片解码任务。
[0164] 步骤S30、若图片进程为空闲状态,则取出所述图片解码任务并执行,加载所述本 地图片。
[0165] 在将图片解码任务压入到图片任务堆找中后,若当前图片进程为空闲状态,则移 动终端从图片任务堆找中取出最顶层的图片解码任务并执行,加载移动终端的本地图片。
[0166] 具体的,作为一种实施方式,图片进程(Image T虹ead)用于解码本地图片、加载到 UI界面中。
[0167] 移动终端获取图片进程当前的处理状态,若当前图片进程为空闲状态,未执行图 片解码任务,则移动终端控制从图片任务堆找中弹出最上层的图片解码任务,也即从图片 任务堆找中取出图片解码任务。
[0168] 然后,移动终端控制图片进程执行图片解码任务,获取需要加载的本地图片,并根 据任务属性将本地图片压缩或剪裁为当前UI界面显示图片的尺寸。
[0169] 图片进程完成图片解码任务后,移动终端通知UI线程刷新当前界面,显示处理后 的本地图片。
[0170] 由此,实现了移动终端本地图片的加载。
[0171] 在本实施例中,根据基于本地图片输入的图片加载指令,创建对应的图片解码任 务;对预先配置的图片任务堆找进行去重处理,将图片解码任务压入到图片任务堆找中;若 图片进程为空闲状态,则取出图片解码任务并执行,加载本地图片。本实施例在收到用户基 于本地图片输入的图片加载指令后,创建对应的图片解码任务;然后,对保存图片解码任务 的图片任务堆找进行去重处理,避免了用户重复输入相同的图片加载指令,导致移动终端 重复执行同样的图片解码任务;然后,将当前图片解码任务压入到图片任务堆找中,使得移 动终端优先处理最新创建的图片解码任务,由于最新创建的图片解码任务为加载当前显示 界面的图片,从而实现了优先执行当前显示界面的图片加载指令,已隐藏或划过的显示界 面的图片加载指令则被延迟处理;当图片进程为空闲状态时,再取出图片解码任务并执行, 保证了同一时间仅执行一个图片解码任务。由此,本实施例通过在本地图片加载过程中优 先处理当前显示界面对应的图片加载指令,同一时间仅执行一个图片解码任务,使得本地 图片加载流杨,用户滑动相册时给用户带来了图片加载流杨的体验,解决了本地图片加载 卡顿的技术问题。
[0172] 进一步的,参照图7,本发明图片加载方法第二实施例提供一种图片加载方法,可 通过上述图片加载装置第二实施例具体实现。基于上述图6所示的实施例,所述步骤S30之 后,还包括:
[0173] 步骤S40、获取所述本地图片的缓存图片,创建所述缓存图片与所述本地图片的映 射关系。
[0174] 本实施例与上述本发明图片加载方法第一实施例的区别在于:本实施例通过获取 已加载的本地图片的缓存图片,实现了当再次加载本地图片时,可直接加载缓存图片,减少 了图片加载指令的处理过程,提高了图片加载的速度和流杨度。
[0175] 在图片解码任务完成执行,加载本地图片后,移动终端获取当前加载的本地图片 的缓存图片,并创建当前本地图片与对应的缓存图片的映射关系。
[0176] 具体的,作为一种实施方式,图片解码任务完成执行后,移动终端获取当前显示界 面加载显示的图片作为本地图片对应的缓存图片,将缓存图片存入移动终端内存的缓存区 中,例如磁盘cache(高速缓冲存储器),便于后续快速的调取使用。
[0177] 并且,移动终端创建缓存图片与本地图片的映射关系,从而可W根据移动终端本 地的本地图片查找到对应的缓存图片。
[0178] 对应的,所述步骤SlO之前,还包括:
[0179] 步骤S50、根据基于本地图片输入的图片加载指令,W及所述映射关系,查找所述 本地图片对应的缓存图片。
[0180] 在收到用户基于本地图片输入的图片加载指令后,移动终端首先根据图片加载指 令获取当前需要加载的本地图片,可W使用存储路径及ID(编号)等识别信息标识本地图 片。
[0181] 然后,移动终端根据配置的映射关系和本地图片的标识信息,在缓存区中查找本 地图片对应的缓存图片。
[0182] 步骤S60、若查找到所述本地图片对应的缓存图片,则获取所述本地图片对应的缓 存图片,进行图片加载。
[0183] 若成功查找到本地图片对应的缓存图片,则移动终端获取本地图片对应的缓存图 片,将得到的缓存图片进行解析,加载到当前的显示界面中。
[0184] 由此,减少了图片的解析、加载时间,无需再次执行图片解码任务,减轻了移动终 端的运行负担,提高了图片额加载速度。
[0185] 作为另一种实施方式,若未查找到所述本地图片对应的缓存图片,则转入执行步 骤 SlOo
[0186] 若在移动终端的缓存区中未成功查找到本地图片对应的缓存图片,则移动终端根 据图片加载指令创建对应的图片解码任务,执行图片解码任务加载本地图片。
[0187] 本实施例在加载本地图片后,获取本地图片的缓存图片,创建缓存图片与本地图 片的映射关系;收到图片加载指令时,根据基于本地图片输入的图片加载指令,W及配置的 映射关系,查找本地图片对应的缓存图片;若查找到本地图片对应的缓存图片,则获取本地 图片对应的缓存图片,进行图片加载;若未查找到本地图片对应的缓存图片,则根据图片记 载指令创建对应的图片解码任务,执行图片解码任务加载本地图片。本实施例在加载本地 图片后,获取本地图片的缓存图片,创建缓存图片与本地图片的映射关系;由此,在收到用 户输入的图片加载指令时,根据图片记载指令获取当前需要加载的本地图片,并根据配置 的映射关系查找本地图片对应的缓存图片;若成功查找到缓存图片,则可W直接加载缓存 图片,提升了图片加载速度,避免重复处理同一本地图片的图片解码任务,减轻了移动终端 的处理负担;若未查到当前本地图片的缓存图片,则创建图片解码任务,进行图片解码任务 的处理。本实施例通过缓存已加载的图片,提高了移动终端的本地图片加载速度,提升了本 地图片加载的流杨程度。
[0188] 进一步的,参照图8,本发明图片加载方法第=实施例提供一种图片加载方法,可 通过上述图片加载装置第=实施例具体实现。基于上述图6或图7所示的实施例(本实施例 W图8为例),所述步骤S20包括:
[0189] 步骤S21、获取所述图片解码任务绑定的界面控件。
[0190] 本实施例与上述本发明图片加载方法第一实施例和第二实施例的区别在于:本实 施例通过图片解码任务绑定的界面控件进行图片任务堆找的去重处理,避免了执行同一界 面控件复用而产生的大量过期任务,减轻了处理负担,加快了图片解码任务的执行速度。
[0191] 在获取图片解码任务后,首先,移动终端获取图片解码任务绑定的界面控件。
[0192] 具体的,作为一种实施方式,移动终端根据图片解码任务的任务属性,获取图片解 码任务绑定的界面控件。
[0193] 步骤S22、根据所述界面控件,对所述图片任务堆找中的任务进行去重处理。
[0194] 当用户在查看相册时,滑动显示界面,复用加载本地图片的界面控件,导致同一界 面控件产生较多的图片解码任务。
[01M]当用户滑过上一显示界面,停留在当前显示界面时,上一显示界面的图片解码任 务还保存在图片任务堆找中,此时,由于上一显示界面的图片解码任务与当前显示界面的 图片解码任务绑定了同一界面控件,则可W根据界面控件删除图片任务堆找中上一显示界 面的图片解码任务,进行去重处理。使移动终端无需再处理上一显示界面的图片解码任务, 不再加载上一显示界面的本地图片,仅处理当前显示界面的图片解码任务,加载当前显示 界面的本地图片。
[0196] 具体的,作为一种实施方式,移动终端根据图片任务堆找中已存储的各图片解码 任务的任务属性,筛选出与当前图片解码任务所绑定的界面控件相同的任务。
[0197] 然后,删除图片任务堆找中,与当前图片解码任务所绑定的界面控件相同的任务, 也即删除图片任务堆找中当前界面控件绑定的所有任务。
[0198] 步骤S23、将所述图片解码任务压入所述图片任务堆找。
[0199] 在对图片任务堆找中的任务进行去重处理后,移动终端将当前图片解码任务压入 图片任务堆找中,则当前图片解码任务位于图片任务堆找的顶层,若图片进程为空闲,则优 先处理位于顶层的当前图片解码任务,提高了图片加载的速度。
[0200] 在本实施例中,获取图片解码任务绑定的界面控件;根据界面控件,对图片任务堆 找中的任务进行去重处理;将图片解码任务压入图片任务堆找。本实施例通过获取图片解 码任务绑定的界面控件,根据当前图片解码任务绑定的界面控件对图片任务堆找进行去 重,删除了图片任务堆找中,与当前图片解码任务绑定的界面控件相同的任务,避免了由于 用户滑动显示界面时同一界面控件复用,而导致产生的多个图片解码任务被重复执行,影 响图片的加载速度,极大地提升了移动终端的本地图片加载速度。
[0201] 进一步的,参照图9,本发明图片加载方法第四实施例提供一种图片加载方法,可 通过上述图片加载装置第四实施例具体实现。基于上述图8所示的实施例,所述步骤S30之 前,还包括:
[0202] 步骤S70、根据所述图片进程的状态标志,获取所述图片进程的运行状态;若所述 图片进程为空闲状态,则转入执行步骤S30。
[0203] 本实施例与上述本发明图片加载方法第=实施例的区别在于:本实施例通过查看 图片进程的状态标志,实时准确获取图片进程的当前状态,保证同一时间仅执行一个图片 解码任务,避免多个图片解码任务同时执行降低图片的加载速度。
[0204] 在将图片解码任务压入图片任务堆找中后,移动终端根据图片进程的状态标志 (Flag),获取当前图片进程的运行状态。
[0205] 例如,若图片进程的Flag标记为化Ise(否),则当前图片进程为忙碌状态;若图片 进程的Flag标记为True,则当前图片进程为空闲状态。
[0206] 由此,移动终端获取图片进程的当前运行状态。
[0207] 若图片进程的当前运行状态为空闲状态,则移动终端执行图片解码任务,加载本 地图片。
[0208] 在本实施例中,根据图片进程的状态标志,获取图片进程的运行状态;若图片运行 状态为空闲状态,则执行图片解码任务,加载本地图片。本实施例通过图片进程的状态标 记,实现了准确获取图片进程的运行状态,保证了同一时间仅处理一个图片解码任务,提高 了图片解码的处理速度,也即提高了图片加载速度。
[0209] 进一步的,参照图10,本发明图片加载方法第五实施例提供一种图片加载方法,可 通过上述图片加载装置第五实施例具体实现。基于上述图9所示的实施例,所述步骤S30包 括:
[0210] 步骤S31、若所述图片进程为空闲状态,则从所述图片任务堆找中取出所述图片解 码任务,更新所述状态标志为忙碌状态。
[0211] 本实施例与上述本发明图片加载方法第四实施例的区别在于:本实施例通过在执 行图片解码任务的过程中即时更新图片进程的状态标记,使得图片进程的状态标记为最新 且准确的,从而更加准确的获取图片进程的运行状态。
[0212] 具体的,若当前图片进程为空闲状态,则移动终端从图片任务堆找中取出当前图 片解码任务,将图片解码任务增加到请求队列(Request如eue)中。
[0213] 同时,移动终端将图片进程的状态标志修改为化Ise,也即更新状态标志为忙碌状 态。
[0214] 步骤S32、执行所述图片解码任务,加载所述本地图片。
[0215] 移动终端控制图片进程执行请求队列中的图片解码任务,根据任务属性查找本地 图片进行解码,并根据当前UI界面显示图片的尺寸压缩或剪裁本地图片,得到本地图片的 显示小图,用于显示在UI界面中,还可W用作本地图片对应的缓存图片。
[0216] 然后,移动终端刷新UI界面,将本地图片的显示小图显示在UI界面中。
[0217] 步骤S33、更新所述状态标志为空闲状态。
[0218] 移动终端在执行完成当前的图片解码任务后,将图片进程的状态标志修改为 True,也即更新状态标志为空闲状态。
[0219] 然后,移动终端取出图片任务堆找中当前最顶层的图片解码任务,并控制图片进 程执行。
[0220] 在本实施例中,若图片进程为空闲状态,则从图片任务堆找中取出图片解码任务, 更新状态标志为忙碌状态;执行图片解码任务,加载本地图片;更新状态标志为空闲状态。 本实施例通过在执行图片解码任务的过程中即时更新图片进程的状态标志,明确图片进程 的运行状态,保证同一时间仅执行一个图片解码任务,提高了本地图片的加载速度。
[0221] 需要说明的是,在本文中,术语"包括"、"包含"或者其任何其他变体意在涵盖非排 他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而 且还包括没有明确列出的其他要素,或者是还包括为运种过程、方法、物品或者装置所固有 的要素。在没有更多限制的情况下,由语句"包括一个……"限定的要素,并不排除在包括该 要素的过程、方法、物品或者装置中还存在另外的相同要素。
[0222] 上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
[0223] 通过W上的实施方式的描述,本领域的技术人员可W清楚地了解到上述实施例方 法可借助软件加必需的通用硬件平台的方式来实现,当然也可W通过硬件,但很多情况下 前者是更佳的实施方式。基于运样的理解,本发明的技术方案本质上或者说对现有技术做 出贡献的部分可W W软件产品的形式体现出来,该计算机软件产品存储在一个存储介质 (如R0M/RAM、磁碟、光盘)中,包括若干指令用W使得一台终端设备(可W是手机,计算机,月良 务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
[0224] W上仅为本发明的可选实施例,并非因此限制本发明的专利范围,凡是利用本发 明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技 术领域,均同理包括在本发明的专利保护范围内。
【主权项】
1. 一种图片加载装置,其特征在于,所述图片加载装置包括: 指令模块,用于根据基于本地图片输入的图片加载指令,创建对应的图片解码任务; 去重模块,用于对预先配置的图片任务堆栈进行去重处理,将所述图片解码任务压入 到所述图片任务堆栈中; 加载模块,用于若图片进程为空闲状态,则取出所述图片解码任务并执行,加载所述本 地图片。2. 如权利要求1所述的图片加载装置,其特征在于,所述图片加载装置还包括: 缓存模块,用于获取所述本地图片的缓存图片,创建所述缓存图片与所述本地图片的 映射关系; 查找模块,用于根据基于本地图片输入的图片加载指令,以及所述映射关系,查找所述 本地图片对应的缓存图片; 获取模块,用于若查找到所述本地图片对应的缓存图片,则获取所述本地图片对应的 缓存图片,进行图片加载; 所述指令模块,还用于若未查找到所述本地图片对应的缓存图片,则根据所述图片加 载指令,创建对应的图片解码任务。3. 如权利要求1或2所述的图片加载装置,其特征在于,所述去重模块还用于, 获取所述图片解码任务绑定的界面控件;根据所述界面控件,对所述图片任务堆栈中 的任务进行去重处理;将所述图片解码任务压入所述图片任务堆栈。4. 如权利要求3所述的图片加载装置,其特征在于,所述图片加载装置还包括: 状态模块,用于根据所述图片进程的状态标志,获取所述图片进程的运行状态。5. 如权利要求4所述的图片加载装置,其特征在于,所述加载模块还用于, 若所述图片进程为空闲状态,则从所述图片任务堆栈中取出所述图片解码任务,更新 所述状态标志为忙碌状态;执行所述图片解码任务,加载所述本地图片;更新所述状态标志 为空闲状态。6. -种图片加载方法,其特征在于,所述图片加载方法包括以下步骤: 根据基于本地图片输入的图片加载指令,创建对应的图片解码任务; 对预先配置的图片任务堆栈进行去重处理,将所述图片解码任务压入到所述图片任务 堆栈中; 若图片进程为空闲状态,则取出所述图片解码任务并执行,加载所述本地图片。7. 如权利要求6所述的图片加载方法,其特征在于,所述若图片进程为空闲状态,则取 出所述图片解码任务并执行,加载所述本地图片的步骤之后,还包括: 获取所述本地图片的缓存图片,创建所述缓存图片与所述本地图片的映射关系; 所述根据基于本地图片输入的图片加载指令,创建对应的图片解码任务的步骤之前, 还包括: 根据基于本地图片输入的图片加载指令,以及所述映射关系,查找所述本地图片对应 的缓存图片; 若查找到所述本地图片对应的缓存图片,则获取所述本地图片对应的缓存图片,进行 图片加载; 若未查找到所述本地图片对应的缓存图片,则转入执行步骤:根据基于本地图片输入 的图片加载指令,创建对应的图片解码任务。8. 如权利要求6或7所述的图片加载方法,其特征在于,所述对图片任务堆栈进行去重 处理,将所述图片解码任务压入到所述图片任务堆栈中的步骤包括: 获取所述图片解码任务绑定的界面控件; 根据所述界面控件,对所述图片任务堆栈中的任务进行去重处理; 将所述图片解码任务压入所述图片任务堆栈。9. 如权利要求8所述的图片加载方法,其特征在于,所述若图片进程为空闲状态,则取 出所述图片解码任务并执行,加载所述本地图片的步骤之前,还包括: 根据所述图片进程的状态标志,获取所述图片进程的运行状态; 若所述图片进程为空闲状态,则转入执行步骤:取出所述图片解码任务并执行,加载所 述本地图片。10. 如权利要求9所述的图片加载方法,其特征在于,所述若图片进程为空闲状态,则取 出所述图片解码任务并执行,加载所述本地图片的步骤包括: 若所述图片进程为空闲状态,则从所述图片任务堆栈中取出所述图片解码任务,更新 所述状态标志为忙碌状态; 执行所述图片解码任务,加载所述本地图片; 更新所述状态标志为空闲状态。
【文档编号】G06F9/38GK106020780SQ201610338502
【公开日】2016年10月12日
【申请日】2016年5月19日
【发明人】胡丽娜
【申请人】努比亚技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1