CN105808356A - 一种基于安卓系统的Bitmap重复利用方法及其系统 - Google Patents

一种基于安卓系统的Bitmap重复利用方法及其系统 Download PDF

Info

Publication number
CN105808356A
CN105808356A CN201610139828.4A CN201610139828A CN105808356A CN 105808356 A CN105808356 A CN 105808356A CN 201610139828 A CN201610139828 A CN 201610139828A CN 105808356 A CN105808356 A CN 105808356A
Authority
CN
China
Prior art keywords
bitmap
recycling
android system
reused
options
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
CN201610139828.4A
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.)
Guangzhou jiubang century science and Technology Co Ltd
Original Assignee
Guangzhou Jiubang Digital 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 Guangzhou Jiubang Digital Technology Co Ltd filed Critical Guangzhou Jiubang Digital Technology Co Ltd
Priority to CN201610139828.4A priority Critical patent/CN105808356A/zh
Publication of CN105808356A publication Critical patent/CN105808356A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明提供了一种基于安卓系统的Bitmap重复利用方法,包括:S1获取安卓系统的版本;S2判断安卓系统的版本是否适用Bitmap的重复利用机制,所述Bitmap的重复利用机制为:a、获取重复利用Bitmap的Options,设置Options.inMutable属性为true;b、设置Options.inBitmap属性为重复利用的Bitmap;c、用BitmapFactory.decodeFile生成目标Bitmap,目标Bitmap将重复利用原Bitmap的内存,本发明避免了Bitmap内存的回收及重新分配,从而改善了内存的运行效率,提高了Bitmap加载的效率。本发明还提供了一种基于安卓系统的Bitmap重复利用系统。

Description

一种基于安卓系统的Bitmap重复利用方法及其系统
技术领域
本发明涉及安卓系统Bitmap内存回收的技术领域,具体涉及一种基于安卓系统的Bitmap重复利用方法及其系统。
背景技术
安卓系统每创建一个Bitmap需要独占一块内存,当Bitmap失效,Bitmap需要回收后重新分配,这样的回收再分配使得安卓系统Bitmap加载的效率降低。
发明内容
本发明的目的,就是克服现有技术的不足,提供了一种提高Bitmap加载的效率的基于安卓系统的Bitmap重复利用方法及其系统,满足用户个性化需求。
为了达到上述目的,采用如下技术方案:一种基于安卓系统的Bitmap重复利用方法,所述方法包括以下步骤:
S1、获取安卓系统的版本;
S2、判断安卓系统的版本是否适用Bitmap的重复利用机制,
所述Bitmap的重复利用机制为:
a、获取重复利用Bitmap的Options,设置Options.inMutable属性为true;
b、设置Options.inBitmap属性为重复利用的Bitmap;
c、用BitmapFactory.decodeFile生成目标Bitmap,目标Bitmap将重复利用原Bitmap的内存。
进一步,所述步骤S2中判断安卓系统的版本是否适用Bitmap的重复利用机制的判断机制为:
判断安卓系统的SDK值是在11~18之间还是大于等于19;
若SDK值是在11~18之间,则判断重复利用的Bitmap与目标Bitmap大小是否一致,如果是,则可以重复利用Bitmap,如果否,则不可以重复利用Bitmap;
若SDK值大于等于19,则判断重复利用的Bitmap是否大于等于目标Bitmap,如果是,则可以重复利用Bitmap,如果否,则不可以重复利用Bitmap。
为实现本发明的另一目的,本发明还采用了如下技术方案:一种基于安卓系统的Bitmap重复利用系统,所述系统包括:
获取模块,获取安卓系统的版本;
判断模块,用于判断安卓系统的版本是否适用Bitmap的重复利用机制;
Bitmap的重复利用机制模块,用于执行以下操作:
a、获取重复利用Bitmap的Options,设置Options.inMutable属性为true;
b、设置Options.inBitmap属性为重复利用的Bitmap;
c、用BitmapFactory.decodeFile生成目标Bitmap,目标Bitmap将重复利用原Bitmap的内存。
进一步,所述判断模块判断安卓系统的SDK值是在11~18之间还是大于等于19;若SDK值是在11~18之间,则判断重复利用的Bitmap与目标Bitmap大小是否一致,如果是,则可以重复利用Bitmap,如果否,则不可以重复利用Bitmap;若SDK值大于等于19,则判断重复利用的Bitmap是否大于等于目标Bitmap,如果是,则可以重复利用Bitmap,如果否,则不可以重复利用Bitmap。
与现有技术相比,本发明的有益效果在于:本发明获取安卓系统的版本;判断安卓系统的版本是否适用Bitmap的重复利用机制,所述Bitmap的重复利用机制为:a、获取重复利用Bitmap的Options,设置Options.inMutable属性为true;b、设置Options.inBitmap属性为重复利用的Bitmap;c、用BitmapFactory.decodeFile生成目标Bitmap,目标Bitmap将重复利用原Bitmap的内,本发明避免了Bitmap内存的回收及重新分配,从而改善了内存的运行效率,提高了Bitmap加载的效率。
附图说明
图1是本发明基于安卓系统的Bitmap重复利用系统的模块示意图;
图2是本发明基于安卓系统的Bitmap重复利用方法的流程图。
具体实施方式
下面将结合附图以及具体实施方法来详细说明本发明,在本发明的示意性实施及说明用来解释本发明,但并不作为对本发明的限定。
如图1所示,一种基于安卓系统的Bitmap重复利用系统,所述系统包括:
获取模块,获取安卓系统的版本;
判断模块,用于判断安卓系统的版本是否适用Bitmap的重复利用机制;所述判断模块判断安卓系统的SDK值是在11~18之间还是大于等于19;若SDK值是在11~18之间,则判断重复利用的Bitmap与目标Bitmap大小是否一致,如果是,则可以重复利用Bitmap,如果否,则不可以重复利用Bitmap;若SDK值大于等于19,则判断重复利用的Bitmap是否大于等于目标Bitmap,如果是,则可以重复利用Bitmap,如果否,则不可以重复利用Bitmap;
Bitmap的重复利用机制模块,用于执行以下操作:
a、获取重复利用Bitmap的Options,设置Options.inMutable属性为true;
b、设置Options.inBitmap属性为重复利用的Bitmap;
c、用BitmapFactory.decodeFile生成目标Bitmap,目标Bitmap将重复利用原Bitmap的内存。
如图2所示,一种基于安卓系统的Bitmap重复利用方法,所述方法包括以下步骤:
S101:获取安卓系统的版本;
S102:判断安卓系统的版本是否适用Bitmap的重复利用机制;
S201:判断安卓系统的SDK值是在11~18之间还是大于等于19,若SDK值是在11~18之间,进入步骤S202;若SDK值大于等于19,则进入步骤S203;
S202:判断重复利用的Bitmap与目标Bitmap大小是否一致,如果是,进入步骤S204;如果否,进入步骤S205;
S203:判断重复利用的Bitmap是否大于等于目标Bitmap,如果是,进入步骤S204;如果否,进入步骤S205;
S204:可以重复利用Bitmap,并进入步骤S103;
S205:不可以重复利用Bitmap;
S103:获取重复利用Bitmap的Options,设置Options.inMutable属性为true;
S104:设置Options.inBitmap属性为重复利用的Bitmap;
S105:用BitmapFactory.decodeFile生成目标Bitmap,目标Bitmap将重复利用原Bitmap的内存。
本发明不需要重新给新的Bitmap申请一块新的内存,避免了Bitmap内存回收和重新分配,从而改善了内存运行效率,提高了新Bitmap加载的效率。
本实施例所述的功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算设备可读取存储介质中。基于这样的理解,本发明实施例对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一台计算设备(可以是个人计算机,服务器,移动计算设备或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、磁碟或者光盘等各种可以存储程序代码的介质。本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (4)

1.一种基于安卓系统的Bitmap重复利用方法,其特征在于,所述方法包括以下步骤:
S1、获取安卓系统的版本;
S2、判断安卓系统的版本是否适用Bitmap的重复利用机制,
所述Bitmap的重复利用机制为:
a、获取重复利用Bitmap的Options,设置Options.inMutable属性为true;
b、设置Options.inBitmap属性为重复利用的Bitmap;
c、用BitmapFactory.decodeFile生成目标Bitmap,目标Bitmap将重复利用原Bitmap的内存。
2.根据权利要求1所述的基于安卓系统的Bitmap重复利用方法,其特征在于,所述步骤S2中判断安卓系统的版本是否适用Bitmap的重复利用机制的判断机制为:
判断安卓系统的SDK值是在11~18之间还是大于等于19;
若SDK值是在11~18之间,则判断重复利用的Bitmap与目标Bitmap大小是否一致,如果是,则可以重复利用Bitmap,如果否,则不可以重复利用Bitmap;
若SDK值大于等于19,则判断重复利用的Bitmap是否大于等于目标Bitmap,如果是,则可以重复利用Bitmap,如果否,则不可以重复利用Bitmap。
3.一种基于安卓系统的Bitmap重复利用系统,其特征在于,所述系统包括:
获取模块,获取安卓系统的版本;
判断模块,用于判断安卓系统的版本是否适用Bitmap的重复利用机制;
Bitmap的重复利用机制模块,用于执行以下操作:
a、获取重复利用Bitmap的Options,设置Options.inMutable属性为true;
b、设置Options.inBitmap属性为重复利用的Bitmap;
c、用BitmapFactory.decodeFile生成目标Bitmap,目标Bitmap将重复利用原Bitmap的内存。
4.根据权利要求1所述的基于安卓系统的Bitmap重复利用系统,其特征在于,所述判断模块判断安卓系统的SDK值是在11~18之间还是大于等于19;若SDK值是在11~18之间,则判断重复利用的Bitmap与目标Bitmap大小是否一致,如果是,则可以重复利用Bitmap,如果否,则不可以重复利用Bitmap;若SDK值大于等于19,则判断重复利用的Bitmap是否大于等于目标Bitmap,如果是,则可以重复利用Bitmap,如果否,则不可以重复利用Bitmap。
CN201610139828.4A 2016-03-11 2016-03-11 一种基于安卓系统的Bitmap重复利用方法及其系统 Pending CN105808356A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610139828.4A CN105808356A (zh) 2016-03-11 2016-03-11 一种基于安卓系统的Bitmap重复利用方法及其系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610139828.4A CN105808356A (zh) 2016-03-11 2016-03-11 一种基于安卓系统的Bitmap重复利用方法及其系统

Publications (1)

Publication Number Publication Date
CN105808356A true CN105808356A (zh) 2016-07-27

Family

ID=56467262

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610139828.4A Pending CN105808356A (zh) 2016-03-11 2016-03-11 一种基于安卓系统的Bitmap重复利用方法及其系统

Country Status (1)

Country Link
CN (1) CN105808356A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106980579A (zh) * 2016-09-30 2017-07-25 阿里巴巴集团控股有限公司 一种图片加载方法及装置
CN109669780A (zh) * 2018-12-25 2019-04-23 上海极链网络科技有限公司 一种视频解析方法及系统
US11132766B2 (en) 2017-10-09 2021-09-28 Huawei Technologies Co., Ltd. Image processing method and device using multiple layers of an operating system

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103916550A (zh) * 2012-12-30 2014-07-09 北京新媒传信科技有限公司 一种安卓平台中的图片处理方法和装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103916550A (zh) * 2012-12-30 2014-07-09 北京新媒传信科技有限公司 一种安卓平台中的图片处理方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
佚名: "【教程】管理Bitmap的内存占用", 《HTTP://TIEBA.BAIDU.COM/P/3819596895?PID=71149267132&CID=0#71149267132》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106980579A (zh) * 2016-09-30 2017-07-25 阿里巴巴集团控股有限公司 一种图片加载方法及装置
US11132766B2 (en) 2017-10-09 2021-09-28 Huawei Technologies Co., Ltd. Image processing method and device using multiple layers of an operating system
CN109669780A (zh) * 2018-12-25 2019-04-23 上海极链网络科技有限公司 一种视频解析方法及系统
CN109669780B (zh) * 2018-12-25 2020-02-14 上海极链网络科技有限公司 一种视频解析方法及系统

Similar Documents

Publication Publication Date Title
CN103577212B (zh) 系统启动预加载方法及装置
CN104598254A (zh) 一种安卓系统快速开机的方法及装置
CN105512425A (zh) 一种基于图形界面的io pad布局构建方法
CN105760184A (zh) 一种加载组件的方法和装置
CN103810020A (zh) 虚拟机弹性伸缩方法及装置
CN105808356A (zh) 一种基于安卓系统的Bitmap重复利用方法及其系统
CN104850440A (zh) 一种基于安卓系统的资源加载方法及其系统
CN103425632A (zh) 一种序列化的方法、装置及处理器
CN103186561A (zh) 数据测试方法、测试库的生成方法及相关装置
CN104317850A (zh) 数据处理方法和装置
CN104063284B (zh) 运行应用程序的方法和装置
CN104205780A (zh) 一种存储数据的方法和装置
US9652416B2 (en) Storage device for performing in-storage computing operations, method of operation the same, and system including the same
CN102662796B (zh) 一种数据恢复的方法及系统
CN104636397B (zh) 用于分布式计算的资源分配方法、计算加速方法以及装置
CN104090995A (zh) 一种ABAQUS轮胎模型中rebar单元网格的自动生成方法
CN103164492A (zh) 一种电子设备间文件拷贝方法及电子设备
CN105760382A (zh) 一种将execl数据导入数据库的方法及装置
US8555005B2 (en) Memory managing apparatus and method using a pointer indicator bit to perform garbage collection
CN104506630A (zh) 基于用户角色的权限数据生成方法、服务器及系统
CN104063234A (zh) 一种兼容方法及装置
CN104503776A (zh) 一种在APP开发平台上快速打包android应用程序的方法
CN104765626A (zh) 一种固件程序烧写方法及装置
CN113485713B (zh) 快速编译程序的方法及装置、电子设备和存储介质
CN105204914A (zh) 应用软件下载方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right

Effective date of registration: 20171030

Address after: 510055, tower 17, A tower, Zhonghua International Center, No. three, 33 Zhongshan Road, Yuexiu District, Guangdong, Guangzhou, China

Applicant after: Guangzhou jiubang century science and Technology Co Ltd

Address before: 510055 A, block 16-17, China International Center, No. three, Zhongshan Road, Guangzhou, Guangdong, China

Applicant before: Guangzhou Jiubang Digital Technology Co., Ltd.

TA01 Transfer of patent application right
RJ01 Rejection of invention patent application after publication

Application publication date: 20160727

RJ01 Rejection of invention patent application after publication