一种图片资源处理方法、装置及终端制造方法及图纸

技术编号:10894511 阅读:87 留言:0更新日期:2015-01-09 17:28
本发明专利技术实施例公开了一种图片资源处理方法,包括:在打开应用界面进行窗口创建时获取函数传递参数所对应的图片资源,所述函数传递参数为图片标识;将所述图片资源加载到内存,并生成得到所述图片资源的位图对象;在关闭所述应用界面进行窗口退出时通过获取所述图片资源的位图对象回收所述内存中的所述图片资源。本发明专利技术实施例还公开了一种图片资源处理装置及终端。采用本发明专利技术实施例,可以有效控制图片资源的加载数量并及时释放内存,进而提高应用程序的运行速度。

【技术实现步骤摘要】
一种图片资源处理方法、装置及终端
本专利技术涉及电子
,尤其涉及一种图片资源处理方法、装置及终端。
技术介绍
随着终端技术的不断发展,各种游戏、应用等软件对内存的需求越来越高。在Android系统中,为了增加应用界面的美观,使用一些像素特别丰富的图片资源作为背景,或者按钮来显示,从而提高应用的美观程度。这些图片资源包括界面布局背景,图片控件资源,按钮背景等等。使用像素丰富的图片虽然带来很大的视觉感受,但是也带了内存消耗的麻烦,如果不能及时的把图片资源占用的内存给释放回收回来,就会造成内存泄露,当内存泄露到一定程度,应用就会内存不足,而出现内存溢出异常,并终止Android应用运行,对Android应用的健壮性和稳定性造成灾难性的影响,直接影响用户的使用感受。 在现有技术方案中,当打开Android应用界面时,系统将所有的用于界面显示的配置文件(xml格式)加载到内存中,当xml格式的配置文件中配置了大量的图片资源而且这些图片资源的尺寸很大时(如页面的背景图),必须消耗很大的内存去保存这些图片资源,导致出现卡顿现象,而且这些图片资源占用的内存直到应用程序完全退出才能被回收,严重影响应用程序的性能。
技术实现思路
本专利技术实施例提供一种图片资源处理方法、装置及终端。可以有效控制图片资源的加载数量并及时释放内存,进而提高应用程序的运行速度。 本专利技术实施例提供了一种图片资源处理方法,包括: 在打开应用界面进行窗口创建时获取图片标识所对应的图片资源; 将所述图片资源加载到内存,并生成得到所述图片资源的位图对象; 在关闭所述应用界面进行窗口退出时通过获取所述图片资源的位图对象对所述内存中的所述图片资源进行回收。 其中,所述在打开应用界面进行窗口创建时获取图片标识所对应的图片资源之前,还包括: 获取所述图片标识所对应的图片资源的尺寸大小; 确定所述图片标识所对应的图片资源的尺寸大小是否大于预设阈值; 若所述图片标识所对应的图片资源的尺寸大小大于预设阈值,则在打开应用界面进行窗口创建时执行所述获取图片标识所对应的图片资源的步骤。 其中,所述在打开应用界面进行窗口创建时获取图片标识所对应的图片资源包括: 获取预先建立的图片资源与图片标识的映射表; 根据在打开应用界面进行窗口创建时获取到的图片标识,从所述预先建立的图片资源与图片标识的映射表中获取所述图片标识所对应的图片资源。 其中,所述将所述图片资源加载到内存,并生成得到所述图片资源的位图对象之后,还包括: 获取生成得到所述图片资源的位图对象; 根据所述图片资源的位图对象,对加载到所述内存的所述图片资源进行显示。 相应地,本专利技术实施例提供了一种图片资源处理装置,包括: 资源获取模块,用于在打开应用界面进行窗口创建时获取图片标识所对应的图片资源; 资源加载模块,用于将所述图片资源加载到内存,并生成得到所述图片资源的位图对象; 资源回收模块,用于在关闭所述应用界面进行窗口退出时通过获取所述图片资源的位图对象对所述内存中的所述图片资源进行回收。 其中,所述装置还包括: 尺寸获取模块,用于获取所述图片标识所对应的图片资源的尺寸大小; 尺寸确定模块,用于确定所述图片标识所对应的图片资源的尺寸大小是否大于预设阈值; 确定执行模块,用于若所述图片标识所对应的图片资源的尺寸大小大于预设阈值,则在打开应用界面进行窗口创建时执行所述获取图片标识所对应的图片资源的步骤。 其中,所述资源获取模块包括: 映射表获取单元,用于获取预先建立的图片资源与图片标识的映射表; 资源获取单元,用于根据在打开应用界面进行窗口创建时获取到的图片标识,从所述预先建立的图片资源与图片标识的映射表中获取所述图片标识所对应的图片资源。 其中,所述装置还包括: 对象获取模块,用于获取生成得到所述图片资源的位图对象; 资源显示模块,用于根据所述图片资源的位图对象,对加载到所述内存的所述图片资源进行显示。 相应地,本专利技术还提供了一种终端,包括: 如上述的任意一项所述的图片资源处理装置。 实施本专利技术实施例,针对现有技术中由于加载过多图片资源出现卡顿的技术问题,通过在打开应用界面进行窗口创建时获取函数传递参数所对应的图片资源,所述函数传递参数为图片标识;将所述图片资源加载到内存,并生成得到所述图片资源的位图对象;在关闭所述应用界面进行窗口退出时通过获取所述图片资源的位图对象回收所述内存中的所述图片资源,从而有效控制图片资源的加载数量并及时释放内存,进而提高应用程序的运行速度。 【附图说明】 为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。 图1是本专利技术提出的一种图片资源处理方法的第一实施例流程图; 图2是本专利技术提出的一种图片资源处理方法的另一实施例的流程图; 图3是本专利技术实施例提出的一种图片资源处理装置的结构示意图; 图4是本专利技术实施例提出的一种图片资源处理装置中的资源获取模块的结构示意图。 【具体实施方式】 下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。 请参考图1,图1是本专利技术提出的一种图片资源处理方法的第一实施例流程图。如图所示,本专利技术实施例中的图片资源处理方法包括: SlOl在打开应用界面进行窗口创建时获取图片标识所对应的图片资源。 具体实现中,在打开应用界面进行窗口创建时调用oncreate函数,此时oncreate函数将图片标识传入oncreate函数内部,以使oncreate函数内部的getResources函数获取图片标识所对应的图片资源以及图片加载函数对获取到的图片资源进行加载。另外,可以通过oncreate函数在窗口里面增加例如按扭,状态栏,工具栏等窗口元素。需要说明的是,由于oncreate函数传入的是图片标识,因此图片加载函数只对该图片标识对应的图片资源进行加载,而不对其他图片进行加载。 可选的,可以获取预先建立的图片资源与图片标识的映射表;根据在打开应用界面进行窗口创建时获取到的图片标识,从所述预先建立的图片资源与图片标识的映射表中获取所述图片标识所对应的图片资源。 可选的,在选择图片资源作为应用界面的背景图时,可以获取所述图片标识所对应的图片资源的尺寸大小;确定所述图片标识所对应的图片资源的尺寸大小是否大于预设阈值;若所述图片标识所对应的图片资源的尺寸大小大于预设阈值,则在打开应用界面进行窗口创建时执行所述获取图片标识所对应的图片资源的步骤,若所述图片标识所对应的图片资源的尺寸大小不大于预设阈值,则可以返回一个空值,以传入其他的图片资源的图片标识。 S102,将所述图片资源加载到内存,并生成得到所述图片资源的位图对象。 具体实现中,可以调用Android系统自带的Bitmap本文档来自技高网...

【技术保护点】
一种图片资源处理方法,其特征在于,所述方法包括:在打开应用界面进行窗口创建时获取图片标识所对应的图片资源;将所述图片资源加载到内存,并生成得到所述图片资源的位图对象;在关闭所述应用界面进行窗口退出时通过获取所述图片资源的位图对象对所述内存中的所述图片资源进行回收。

【技术特征摘要】
1.一种图片资源处理方法,其特征在于,所述方法包括: 在打开应用界面进行窗口创建时获取图片标识所对应的图片资源; 将所述图片资源加载到内存,并生成得到所述图片资源的位图对象; 在关闭所述应用界面进行窗口退出时通过获取所述图片资源的位图对象对所述内存中的所述图片资源进行回收。2.如权利要求1所述的方法,其特征在于,所述在打开应用界面进行窗口创建时获取图片标识所对应的图片资源之前,还包括: 获取所述图片标识所对应的图片资源的尺寸大小; 确定所述图片标识所对应的图片资源的尺寸大小是否大于预设阈值; 若所述图片标识所对应的图片资源的尺寸大小大于预设阈值,则在打开应用界面进行窗口创建时执行所述获取图片标识所对应的图片资源的步骤。3.如权利要求1所述的方法,其特征在于,所述在打开应用界面进行窗口创建时获取图片标识所对应的图片资源包括: 获取预先建立的图片资源与图片标识的映射表; 根据在打开应用界面进行窗口创建时获取到的图片标识,从所述预先建立的图片资源与图片标识的映射表中获取所述图片标识所对应的图片资源。4.如权利要求1所述的方法,其特征在于,所述将所述图片资源加载到内存,并生成得到所述图片资源的位图对象之后,还包括: 获取生成得到所述图片资源的位图对象; 根据所述图片资源的位图对象,对加载到所述内存的所述图片资源进行显示。5.一种图片资源处理装置,其特征在于,所述装置包括: ...

【专利技术属性】
技术研发人员:刘强
申请(专利权)人:广州金山网络科技有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1