CN109117083A - 移动终端、内置存储容量检测方法及计算机可读存储介质 - Google Patents

移动终端、内置存储容量检测方法及计算机可读存储介质 Download PDF

Info

Publication number
CN109117083A
CN109117083A CN201710495507.2A CN201710495507A CN109117083A CN 109117083 A CN109117083 A CN 109117083A CN 201710495507 A CN201710495507 A CN 201710495507A CN 109117083 A CN109117083 A CN 109117083A
Authority
CN
China
Prior art keywords
capacity
card
root
built
external
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.)
Granted
Application number
CN201710495507.2A
Other languages
English (en)
Other versions
CN109117083B (zh
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.)
Shenzhen Recycling Technology Co Ltd
Original Assignee
Shenzhen Recycling 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 Shenzhen Recycling Technology Co Ltd filed Critical Shenzhen Recycling Technology Co Ltd
Priority to CN201710495507.2A priority Critical patent/CN109117083B/zh
Publication of CN109117083A publication Critical patent/CN109117083A/zh
Application granted granted Critical
Publication of CN109117083B publication Critical patent/CN109117083B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3034Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a storage system, e.g. DASD based or network based
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3051Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0653Monitoring storage devices or systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供了一种移动终端、内置存储容量检测方法及计算机可读存储介质。内置存储容量检测方法包括:获取数据根目录的容量和系统根目录的容量;获取内置SD卡根目录的容量和外置SD卡根目录的容量;从内置SD卡根目录或外置SD卡根目录对应的SD卡中判断出真正的内置SD卡;判断数据根目录的容量与系统根目录的容量是否相等,判断数据根目录的容量与真正的内置SD卡的容量是否相等;内置存储容量为数据根目录的容量、与数据根目录的容量不相等时的真正的内置SD卡的容量、以及与数据根目录的容量不相等时的系统根目录的容量之和。本发明可以获取移动终端的精确的内置存储容量。

Description

移动终端、内置存储容量检测方法及计算机可读存储介质
技术领域
本发明涉及基于安卓系统的移动终端领域,尤其指对移动终端内置存储容量进行检测的领域。
背景技术
移动终端(或者移动通信终端)是指可以在移动中使用的计算机设备,大部分情况下是指手机或者具有多种应用功能的智能手机以及平板电脑或其他用作工业用途的便于携带的移动设备。众所周知,目前,大部分移动终端采用苹果公司(Apple Inc.)的iOS系统或谷歌公司(Google Inc.)的安卓(Andriod)系统。目前,由于安卓(Andriod)系统为开源系统,因此,企业基于安卓(Andriod) 系统开发的移动设备也越来越多。
目前,基于安卓系统的移动终端大多采用内置存储器,其包括内存和内置 SD卡(英文全称:Secure Digital Memory Card;中文全称:安全数字存储卡);基于安卓系统的移动终端在读取其内置存储容量时,由于安卓设备内置存储容量接口不统,常常出现检测结果错误的现象,使得用户使用该移动终端时体验极差。究其原因,一部分安卓系统将内置存储器中的存储挂载外部SD卡的目录中,而将外置的SD卡存储挂载到内置存储器中的目录。当安卓系统获取其内置存储容量时,导致调用结果出错。
发明内容
有鉴于此,本发明提供了移动终端、内置存储容量检测方法及计算机可读存储介质。
本发明实施例一方面提供了一种移动终端的内置存储容量检测方法,包括如下步骤:
获取数据根目录的容量和系统根目录的容量;
获取内置SD卡根目录的容量和外置SD卡根目录的容量;获取存储管理器和系统版本,根据所述存储管理器、系统版本和所述外置SD卡根目录的容量,从所述内置SD卡根目录或外置SD卡根目录对应的SD卡中判断出真正的内置 SD卡;
分别判断所述数据根目录的容量与所述系统根目录的容量、与所述真正的内置SD卡的容量是否相等;
将所述数据根目录的容量、与所述数据根目录的容量不相等时的所述真正的内置SD卡的容量、以及与所述数据根目录的容量不相等时的所述系统根目录的容量相加,获得所述内置存储容量。
本发明实施例提供的该移动终端的内置存储容量检测方法,由于其在进行内置存储容量的统计时,考虑了可能出错的情况,并对其采取容错纠错的措施,具体通过对内置SD卡根目录和外置SD卡根目录所对应的SD卡进行识别出真正的内置SD卡,然后进一步对所述数据根目录的容量与所述系统根目录的容量、以及与所述真正的内置SD卡的容量做是否相等的判断,最后再进行内置存储容量的计算,以获得准确的内置存储容量。如此,即使各安卓设备内置存储容量接口不统一,也可准确获得各内置存储容量,为客户显示精确的内置存储容量,提高用户使用该移动终端时体验。
进一步地,所述“将所述数据根目录的容量、与所述数据根目录的容量不相等时的所述真正的内置SD卡的容量、以及与所述数据根目录的容量不相等时的所述系统根目录的容量相加,获得所述内置存储容量”具体包括以下步骤:
预设所述数据根目录的容量为所述内置存储容量;
当所述内置SD卡根目录对应的SD卡是真正的内置SD卡,且所述数据根目录的容量和内置SD卡根目录的容量不相等时,将所述内置SD卡根目录的容量加入所述内置存储容量中;或当所述外置SD卡根目录对应的SD卡才是真正的内置SD卡,且所述数据根目录的容量和所述外置SD卡根目录的容量不相等,且其外置SD卡实质为内置SD卡时,将外置SD卡根目录的容量加入所述内置存储容量中;
当所述数据根目录的容量和所述系统根目录的容量不相等时,将所述系统根目录的容量加入所述内置存储容量中。
进一步地,所述“分别判断所述数据根目录的容量与所述系统根目录的容量、与所述真正的内置SD卡的容量是否相等”具体通过如下步骤判断:
判断所述数据根目录的容量与所述系统根目录的容量的数值是否相等;如数值相等,则判定所述数据根目录的容量与所述系统根目录的容量相等,若数值不相等,则进一步进行如下步骤:
设所述数据根目录的容量数值为S1,所述系统根目录的容量数值为S2,预设一容量绝对阈值A和容量相对阈值B;
分别计算所述数据根目录的容量与所述系统根目录的容量的数值的绝对差异和相对差异;所述绝对差异等于|s1-s2|;所述相对差异等于
当所述绝对差异小于等于绝对阈值A及相对差异小于等于相对阈值B时,则仍然判定所述数据根目录的容量与所述系统根目录的容量相等;
判断所述数据根目录的容量与所述真正的内置SD卡的容量的数值是否相等;如数值相等,则判定所述数据根目录的容量与所述真正的内置SD卡的容量相等,若数值不相等,则进一步进行如下步骤:
设所述数据根目录的容量数值为S3,所述系统根目录的容量数值为S4,预设一容量绝对阈值A1和容量相对阈值B1;
分别计算所述数据根目录的容量与所述真正的内置SD卡的容量的数值的绝对差异和相对差异;所述绝对差异等于|s3-s4|;所述相对差异等于
当所述绝对差异小于等于绝对阈值A1及相对差异小于等于相对阈值B1时,则仍然判定所述数据根目录的容量与所述真正的内置SD卡的容量相等。
通过该种方式对其进行容量是否相等的判断时,采用了容错设计,即使其两者不是完全相等,只要其绝对差异和相对差异在预设的阈值范围内,也被判定为两者相等。使得判断方式更加合理。
进一步地,所述“获取数据根目录的容量和系统根目录的容量”具体通过如下步骤获取:分别调用所述数据根目录和系统根目录的存储路径,根据所述数据根目录和系统根目录的存储路径,分别获得所述数据根目录和系统根目录对应存储路径的容量。
进一步地,所述“获取内置SD卡根目录和外置SD卡根目录的容量”具体包括如下步骤:分别调用所述内置SD卡根目录和所述外置SD卡根目录的存储路径,根据所述内置SD卡根目录和所述外置SD卡根目录的存储路径,分别获得所述内置SD卡根目录和所述外置SD卡根目录对应存储路径的容量。
进一步地,所述“从所述内置SD卡根目录或外置SD卡根目录对应的SD 卡中判断出真正的内置SD卡”具体包括如下步骤:
判断所述内置SD卡根目录对应的SD卡是否是真正的内置SD卡;
若所述内置SD卡根目录对应的SD卡不是真正的内置SD卡,判断所述外置SD卡根目录对应的SD卡是否是真正的内置SD卡。
进一步地,所述“判断所述内置SD卡根目录对应的SD卡是否是真正的内置SD卡”具体包括如下步骤:
循环遍历所述存储管理器下的所有存储路径,通过函数调用所述内置SD卡根目录对应的SD卡是否为内置SD卡。
进一步地,所述“判断所述外置SD卡根目录对应的SD卡是否为真正的内置SD卡”具体包括如下步骤:
判断其移动终端的安卓系统版本是否大于等于设定的版本,如所述移动终端的安卓系统版本大于等于设定的版本,则所述外置SD卡根目录对应的SD卡是真正的外置SD卡;如移动终端的安卓系统版本小于设定的版本,则进一步判断所述外置SD卡根目录的容量是否为2nGB,n为自然数,如所述外置SD卡根目录的容量为2nGB,则判断所述外置SD卡根目录对应的SD卡为真正的外置 SD卡,如所述外置SD卡根目录的容量不为2nGB,则判断其外置SD卡根目录对应的SD卡为真正的内置SD卡。
采用上述方式判断所述外置SD卡根目录对应的SD卡是否为真正的内置 SD卡,一方面从系统版本进行判断,再结合外置SD卡和内置SD卡容量上的差异,外置SD卡的容量一般为特定的2nGB,而内置SD卡则由于内部系统分区的影响,其并不为2nGB。由此,结合该特性进一步进行判断,如此,可提高该所述外置SD卡根目录对应的SD卡是否为真正的内置SD卡的判断准确性。
本发明实施例第二方面提供了一种移动终端,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述的内置存储容量检测方法。
本发明实施例提供的该移动终端,由于其处理器执行存储在存储器中的计算机程序可实现上述内置存储容量检测方法,该内置存储容量检测方法在进行内置存储容量的统计时,考虑了可能出错的情况,并对其采取容错纠错的措施,具体通过对内置SD卡根目录和外置SD卡根目录所对应的SD卡进行识别出真正的内置SD卡,然后进一步对所述数据根目录的容量与所述系统根目录的容量、以及与所述真正的内置SD卡的容量做是否相等的判断,最后再进行内置存储容量的计算,以获得准确的内置存储容量。如此,即使各安卓设备内置存储容量接口不统一,也可准确获得各内置存储容量,为客户显示精确的内置存储容量,提高用户使用该移动终端时体验。
本发明实施例第三方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述的内置存储容量检测方法。
本发明实施例提供的计算机可读存储介质,由于其上存储的计算机程序可被处理器执行以实现上述内置存储容量检测方法,该内置存储容量检测方法在进行内置存储容量的统计时,考虑了可能出错的情况,并对其采取容错纠错的措施,具体通过对内置SD卡根目录和外置SD卡根目录所对应的SD卡进行识别出真正的内置SD卡,然后进一步对所述数据根目录的容量与所述系统根目录的容量、以及与所述真正的内置SD卡的容量做是否相等的判断,最后再进行内置存储容量的计算,以获得准确的内置存储容量。
附图说明
图1为本发明具体实施方式中提供的移动终端的内置存储容量检测流程示意图;
图2是本发明具体实施方式中提供的步骤S2流程示意图;
图3是本发明具体实施方式中提供的步骤S4流程示意图。
具体实施方式
为了使本发明所解决的技术问题、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所述,本发明第一实施例公开一种移动终端的内置存储容量检测方法,包括如下步骤:
步骤S1:获取数据根目录的容量和系统根目录的容量;
步骤S2:获取内置SD卡根目录的容量和外置SD卡根目录的容量;获取存储管理器和系统版本,根据所述存储管理器、系统版本和所述外置SD卡根目录的容量,从所述内置SD卡根目录或外置SD卡根目录对应的SD卡中判断出真正的内置SD卡;
步骤S3:分别判断所述数据根目录的容量与所述系统根目录的容量、与所述真正的内置SD卡的容量是否相等;
步骤S4:将所述数据根目录的容量、与所述数据根目录的容量不相等时的所述真正的内置SD卡的容量、以及与所述数据根目录的容量不相等时的所述系统根目录的容量相加,获得所述内置存储容量。
下边对各步骤进行具体解释说明。
所述步骤S1具体通过如下步骤实现:分别调用所述数据根目录和系统根目录的存储路径,然后分别获得所述数据根目录和系统根目录对应存储路径的容量。
具体的,数据根目录一般缺省设置为data目录(数据目录),通过函数调用 Data目录的绝对存储路径,然后通过函数获取指定路径的状态,并最终获得该绝对存储路径对应的Data目录的容量大小,根据需要,为方便理解,还可以将其容量换算成MB(英文全称:MegaByte;中文全称:兆字节)或GB(英文全称:Giga Byte,中文全称:吉字节)表示。
系统根目录一般缺省设置为Root目录(系统权限目录),通过函数调用Root 目录的绝对存储路径,然后通过函数获取指定路径的状态,并最终获得该绝对存储路径对应的Root目录的容量大小,根据需要,为方便理解,也可以将其容量换算成MB或GB表示。
如图2所示,步骤S2具体包括如下步骤:
步骤S21:获取内置SD卡根目录的容量和外置SD卡根目录的容量;获取存储管理器和系统版本;
具体的,分别调用所述内置SD卡根目录和所述外置SD卡根目录的存储路径,然后分别获得所述内置SD卡根目录和所述外置SD卡根目录对应存储路径的容量。同时,通过函数可调用存储管理器和系统版本的相关信息,以用于后续判断。
本步骤中获得内置SD卡根目录容量和外置SD卡根目录容量的方法与上述获得系统根目录和数据根目录容量的方法相同。不再细述。
步骤S22:判断所述内置SD卡根目录对应的SD卡是否是真正的内置SD 卡;
该步骤具体如下:循环遍历所述存储管理器下的所有存储路径,判断所述内置SD卡根目录对应的SD卡是否为内置SD卡。其判断内置SD卡根目录是否为内置SD卡主要通过isRemovable函数实现。其具体过程如下:通过JAVA 语言反射的方法获得系统函数isRemovable,获取存储管理器,获得所述存储管理器下的所有存储路径,并调用所述isRemovable对存储管理器下的所有存储路径进行判断,判断出所述存储管理器下的具体哪个存储路径是内置SD卡根目录的路径。如果该内置SD卡根目录对应的SD卡为真正的内置SD卡,则可将其用于后续的计算过程。
步骤S23:若内置SD卡根目录对应的SD卡不是真正的内置SD卡,判断所述外置SD卡根目录对应的SD卡是否是真正的内置SD卡;
具体的,如果上述内置SD卡根目录对应的SD卡实际并非真正的内置SD 卡,则需要进一步通过如下步骤判断其外置SD卡根目录对应的SD卡是否才是真正的内置SD卡:
本申请技术人员研究过程中发现,如果移动终端的安卓系统版本为6.0以上,其实际已经解决了现有外置SD卡和内置SD卡混乱出错的情形;其内置SD 卡根目录对应的SD卡必然是其真正的内置SD卡,外置SD卡根目录对应的SD 卡必然是其真正的外置SD卡。根据该原则,如果判断其安卓系统版本为6.0以上。则在进行内置存储容量时,直接采用内置SD卡根目录的容量进行后续计算即可。
具体的,判断其移动终端的安卓系统版本是否大于等于设定的版本,比如本例中该设定的版本为6.0,如所述移动终端的安卓系统版本大于等于6.0,则所述外置SD卡根目录对应的SD卡是真正的外置SD卡;如移动终端的安卓系统版本小于6.0,则进一步进行下述步骤;
判断所述外置SD卡根目录的容量是否为2nGB,n为自然数,如所述外置 SD卡根目录的容量为2nGB,则判断所述外置SD卡根目录对应的SD卡为真正的外置SD卡;如所述外置SD卡根目录的容量不为2nGB,则判断其外置SD卡根目录对应的SD卡为真正的内置SD卡。众所周知,外部SD卡的容量总是总数,比如,外置SD卡的容量一般为2GB、4GB、8GB、16GB、32GB等;而内置SD卡中由于其容量会被系统暂用部分容量,在进行检测其容量时,其容量不可能出现总数或者出现几率极低,因此,通过判断外置SD卡根目录的容量是否为2nGB,即可判断其外部SD卡根目录对应的SD卡是否为真正的外置SD卡。
比如,假设外置SD卡根目录的容量标记为sz,则当其满足如下表达式时,则可判定其外置SD卡根目录的容量为2nGB:
sz>63,sz<64.1;
或者sz>30.5,sz<32.1;
或者sz>15,sz<16.1;
或者sz>7.5,sz<8.1;
或者sz>3.7,sz<4.1;
或者sz>1.8,sz<2.1。
采用上述方式判断所述外置SD卡根目录对应的SD卡是否为真正的内置 SD卡,一方面从系统版本进行判断,再结合外置SD卡和内置SD卡容量上的差异,外置SD卡的容量一般为特定的2nGB,而内置SD卡则由于内部系统分区的影响,其并不为2nGB。由此,结合该特性进一步进行判断,如此,可提高该所述外置SD卡根目录对应的SD卡是否为真正的内置SD卡的判断准确性。
下面对步骤S3进行具体解释说明。分别判断所述数据根目录的容量与所述系统根目录的容量、与所述真正的内置SD卡的容量是否相等;即指分别判断所述数据根目录的容量与所述系统根目录的容量是否相等,判断所述数据根目录的容量与所述真正的内置SD卡的容量是否相等。
其中,其步骤S3中提及的“容量是否相等”具体通过如下步骤判断:
判断比较的两个容量的数值是否相等,设其中的两个容量的数值分别为s1 和s2;如数值相等,则判定比较的两个容量相等。
所谓的数值相等,指其数值上“绝对相等”(软件上一般用“==”表示)。
假设所述数据根目录的容量数值分别为s1,所述系统根目录的容量数值为 s2;
也即该步骤中,其会判断数据根目录的容量和系统根目录的容量是否在数值上相等,比如,将数据根目录的容量代入s1中,将系统根目录的容量代入s2 中,判断s1==s2,如等式成立,则判定数据根目录的容量和系统根目录的容量数值上相等。
但由于其在容量获取过程中,难免出现微小误差,如果仅用绝对数字进行判断,容易出错,为此,还采用下述的冗余判断步骤进行“相对相等”的判断。
预设一容量绝对阈值A和容量相对阈值B;
分别计算用来比较的两个容量的数值的绝对差异和相对差异;则所述绝对差异等于|s1-s2|;所述相对差异指等于
比如,判断数据根目录的容量和系统根目录的容量是否“相对相等”时,将将数据根目录的容量代入s1中,将系统根目录的容量代入s2中;分别通过 |s1-s2|计算其绝对差异,通过计算其相对差异。所述绝对差异小于等于绝对阈值A及相对差异小于等于相对阈值B时,判定数据根目录的容量和系统根目录的容量“相对相等”。
同样的,其会判断数据根目录的容量和真正的内部SD卡的容量是否在数值上相等,设所述数据根目录的容量数值分别为s3,所述系统根目录的容量数值为s4,预设一容量绝对阈值A1和容量相对阈值B1;比如,将数据根目录的容量代入s3中,将真正的内部SD卡的容量代入S4中,判断s3==s4,如等式成立,则判定数据根目录的容量和真正的内部SD卡的容量数值上相等。
判断数据根目录的容量和真正的内部SD卡的容量是否“相对相等”时,将将数据根目录的容量代入s3中,将真正的内部SD卡的容量代入s4中;分别通过|s3-s4|计算其绝对差异,通过计算其相对差异。所述绝对差异小于等于绝对阈值A1及相对差异小于等于相对阈值B1时,判定数据根目录的容量和真正的内部SD卡的容量“相对相等”。
上述绝对阈值A和A1和相对阈值B和B1在计算过程中并不特别限定,可以根据经验进行设计。本领域技术人员无需付出创造性的劳动。比如,相对阈值B和B1可以为2%-5%等。比如,具体为2%。比较的容量在不同的数值区间可以设置不同的绝对阈值A和A1,以使其“相对相等”的判断更贴切实际。比如,当s1、s2、s3和s4的数值均小于1024时,绝对阈值A和A1可设为50; s1和s2、s3、s4的数值均大于等于1024,同时小于2048时,其绝对阈值A和A1可以设计的更大些,比如200。依此类推。
通过该种方式对其进行容量是否相等的判断时,采用了容错设计,即使其两者不是完全相等,只要其绝对差异和相对差异在预设的阈值范围内,也被判定为两者相等。使得判断方式更加合理。
如图3所示,所述步骤S4具体包括以下步骤:
步骤S41:预设所述数据根目录的容量为所述内置存储容量;为使本领域技术人员理解,设内置存储容量为Total,设数据根目录容量为data_size;即,本步骤中,Total=data_size;
步骤S42:当所述内置SD卡根目录对应的SD卡是真正的内置SD卡,且所述数据根目录的容量和内置SD卡根目录的容量不相等时,将所述内置SD卡根目录的容量加入所述内置存储容量中;设内置SD卡根目录的容量为sd_size。
则,此时,Total+=sd_size;也即Total=data_size+sd_size;
也即,此时,将与数据根目录容量不相等时的所述内置SD卡根目录的容量加入所述内置存储容量中。
或当所述外置SD卡根目录对应的SD卡才是真正的内置SD卡,且所述数据根目录的容量和所述外置SD卡根目录的容量不相等,且其外置SD卡实质为内置SD卡时,将外置SD卡根目录的容量加入所述内置存储容量中;
设外置SD卡根目录的容量为exsd_size。则,此时,Total+=exsd_size;也即,Total=data_size+exsd_size;
也即,此时,将与数据根目录容量不相等时的所述外置SD卡根目录的容量加入所述内置存储容量中。
上述Total+=exsd_size和Total+=sd_size计算过程为择一的关系。即 Total=data_size+sd_size或者Total=data_size+exsd_size。
步骤S43:当所述数据根目录的容量和所述系统根目录的容量不相等时,将所述系统根目录的容量加入所述内置存储容量中。
设系统根目录的容量为root_size;则,此时,Total+=root_size;
也即,将与数据根目录容量不相等时的系统根目录的容量加入所述内置存储容量中;或者理解成如下表达式:
Total=data_size+sd_size+root_size;
或者Total=data_size+exsd_size+root_size。
上述步骤S42和步骤S43没有先后顺序之分,即可先执行步骤S42后执行步骤S43,也可先执行步骤S43后执行步骤S42,或者同时执行。
本例提供的该移动终端的内置存储容量检测方法,由于其在进行内置存储容量的统计时,考虑了可能出错的情况,并对其采取容错纠错的措施,具体通过对内置SD卡根目录和外置SD卡根目录所对应的SD卡进行识别出真正的内置SD卡,然后进一步对所述数据根目录的容量与所述系统根目录的容量、以及与所述真正的内置SD卡的容量做是否相等的判断,最后再进行内置存储容量的计算,以获得准确的内置存储容量。如此,即使各安卓设备内置存储容量接口不统一,也可准确获得各内置存储容量,为客户显示精确的内置存储容量,提高用户使用该移动终端时体验。
本发明第二实施例提供了一种移动终端,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述的内置存储容量检测方法。
本例提供的该移动终端,由于其处理器执行存储在存储器中的计算机程序可实现上述内置存储容量检测方法,该内置存储容量检测方法在进行内置存储容量的统计时,考虑了可能出错的情况,并对其采取容错纠错的措施,具体通过对内置SD卡根目录和外置SD卡根目录所对应的SD卡进行识别出真正的内置SD卡,然后进一步对所述数据根目录的容量与所述系统根目录的容量、以及与所述真正的内置SD卡的容量做是否相等的判断,最后再进行内置存储容量的计算,以获得准确的内置存储容量。如此,即使各安卓设备内置存储容量接口不统一,也可准确获得各内置存储容量,为客户显示精确的内置存储容量,提高用户使用该移动终端时体验。
本发明实施例第三方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述的内置存储容量检测方法。
本发明实施例提供的计算机可读存储介质,由于其上存储的计算机程序可被处理器执行以实现上述内置存储容量检测方法,该内置存储容量检测方法在进行内置存储容量的统计时,考虑了可能出错的情况,并对其采取容错纠错的措施,具体通过对内置SD卡根目录和外置SD卡根目录所对应的SD卡进行识别出真正的内置SD卡,然后进一步对所述数据根目录的容量与所述系统根目录的容量、以及与所述真正的内置SD卡的容量做是否相等的判断,最后再进行内置存储容量的计算,以获得准确的内置存储容量。如此,即使各安卓设备内置存储容量接口不统一,也可准确获得各内置存储容量,为客户显示精确的内置存储容量,提高用户使用该移动终端时体验。
其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U 盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random AccessMemory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括是电载波信号和电信信号。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种移动终端的内置存储容量检测方法,其特征在于,包括如下步骤:
获取数据根目录的容量和系统根目录的容量;
获取内置SD卡根目录的容量和外置SD卡根目录的容量;获取存储管理器和系统版本;根据所述存储管理器、系统版本和所述外置SD卡根目录的容量,从所述内置SD卡根目录或外置SD卡根目录对应的SD卡中判断出真正的内置SD卡;
分别判断所述数据根目录的容量与所述系统根目录的容量、与所述真正的内置SD卡的容量是否相等;
将所述数据根目录的容量、与所述数据根目录的容量不相等时的所述真正的内置SD卡的容量、以及与所述数据根目录的容量不相等时的所述系统根目录的容量相加,获得所述内置存储容量。
2.根据权利要求1所述的移动终端的内置存储容量检测方法,其特征在于,所述“将所述数据根目录的容量、与所述数据根目录的容量不相等时的所述真正的内置SD卡的容量、以及与所述数据根目录的容量不相等时的所述系统根目录的容量相加,获得所述内置存储容量”具体包括以下步骤:
预设所述数据根目录的容量为所述内置存储容量;
当所述内置SD卡根目录对应的SD卡是真正的内置SD卡,且所述数据根目录的容量和内置SD卡根目录的容量不相等时,将所述内置SD卡根目录的容量加入所述内置存储容量中;或当所述外置SD卡根目录对应的SD卡才是真正的内置SD卡,且所述数据根目录的容量和所述外置SD卡根目录的容量不相等,且其外置SD卡实质为内置SD卡时,将外置SD卡根目录的容量加入所述内置存储容量中;
当所述数据根目录的容量和所述系统根目录的容量不相等时,将所述系统根目录的容量加入所述内置存储容量中。
3.根据权利要求2所述的移动终端的内置存储容量检测方法,其特征在于,所述“分别判断所述数据根目录的容量与所述系统根目录的容量、与所述真正的内置SD卡的容量是否相等”具体通过如下步骤判断:
判断所述数据根目录的容量与所述系统根目录的容量的数值是否相等;如数值相等,则判定所述数据根目录的容量与所述系统根目录的容量相等,若数值不相等,则进一步进行如下步骤:
设所述数据根目录的容量数值分别为s1,所述系统根目录的容量数值为s2,预设一容量绝对阈值A和容量相对阈值B;
分别计算所述数据根目录的容量与所述系统根目录的容量的数值的绝对差异和相对差异;所述绝对差异等于|s1-s2|;所述相对差异等于
当所述绝对差异小于等于绝对阈值A及相对差异小于等于相对阈值B时,则仍然判定所述数据根目录的容量与所述系统根目录的容量相等;
判断所述数据根目录的容量与所述真正的内置SD卡的容量的数值是否相等;如数值相等,则判定所述数据根目录的容量与所述真正的内置SD卡的容量相等,若数值不相等,则进一步进行如下步骤:
设所述数据根目录的容量数值分别为s3,所述系统根目录的容量数值为s4,预设一容量绝对阈值A1和容量相对阈值B1;
分别计算所述数据根目录的容量与所述真正的内置SD卡的容量的数值的绝对差异和相对差异;所述绝对差异等于|s3-s4|;所述相对差异等于
当所述绝对差异小于等于绝对阈值A1及相对差异小于等于相对阈值B1时,则仍然判定所述数据根目录的容量与所述真正的内置SD卡的容量相等。
4.根据权利要求1所述的移动终端的内置存储容量检测方法,其特征在于,所述“获取数据根目录的容量和系统根目录的容量”具体通过如下步骤获取:分别调用所述数据根目录和系统根目录的存储路径,根据所述数据根目录和系统根目录的存储路径,分别获得所述数据根目录和系统根目录对应存储路径的容量。
5.根据权利要求1所述的移动终端的内置存储容量检测方法,其特征在于,所述“获取内置SD卡根目录和外置SD卡根目录的容量”具体包括如下步骤:分别调用所述内置SD卡根目录和所述外置SD卡根目录的存储路径,根据所述内置SD卡根目录和所述外置SD卡根目录的存储路径,分别获得所述内置SD卡根目录和所述外置SD卡根目录对应存储路径的容量。
6.根据权利要求1-5中任意一项所述的移动终端的内置存储容量检测方法,其特征在于,所述“从所述内置SD卡根目录或外置SD卡根目录对应的SD卡中判断出真正的内置SD卡”具体包括如下步骤:
判断所述内置SD卡根目录对应的SD卡是否是真正的内置SD卡;
若所述内置SD卡根目录对应的SD卡不是真正的内置SD卡,判断所述外置SD卡根目录对应的SD卡是否是真正的内置SD卡。
7.根据权利要求6所述的移动终端的内置存储容量检测方法,其特征在于,所述“判断所述内置SD卡根目录对应的SD卡是否是真正的内置SD卡”具体包括如下步骤:
循环遍历所述存储管理器下的所有存储路径,判断所述内置SD卡根目录对应的SD卡是否为内置SD卡。
8.根据权利要求6所述的移动终端的内置存储容量检测方法,其特征在于,所述“判断所述外置SD卡根目录对应的SD卡是否为真正的内置SD卡”具体包括如下步骤:
判断其移动终端的安卓系统版本是否大于等于设定的版本,如所述移动终端的安卓系统版本大于等于设定的版本,则所述外置SD卡根目录对应的SD卡是真正的外置SD卡;如移动终端的安卓系统版本小于设定的版本,则进一步判断所述外置SD卡根目录的容量是否为2nGB,n为自然数,如所述外置SD卡根目录的容量为2nGB,则判断所述外置SD卡根目录对应的SD卡为真正的外置SD卡,如所述外置SD卡根目录的容量不为2nGB,则判断其外置SD卡根目录对应的SD卡为真正的内置SD卡。
9.一种移动终端,其特征在于,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1-8中任意一项所述的内置存储容量检测方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-8中任意一项所述的内置存储容量检测方法。
CN201710495507.2A 2017-06-26 2017-06-26 移动终端、内置存储容量检测方法及计算机可读存储介质 Active CN109117083B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710495507.2A CN109117083B (zh) 2017-06-26 2017-06-26 移动终端、内置存储容量检测方法及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710495507.2A CN109117083B (zh) 2017-06-26 2017-06-26 移动终端、内置存储容量检测方法及计算机可读存储介质

Publications (2)

Publication Number Publication Date
CN109117083A true CN109117083A (zh) 2019-01-01
CN109117083B CN109117083B (zh) 2021-05-28

Family

ID=64822216

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710495507.2A Active CN109117083B (zh) 2017-06-26 2017-06-26 移动终端、内置存储容量检测方法及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN109117083B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113760856A (zh) * 2020-06-05 2021-12-07 京东数字科技控股有限公司 数据库管理方法及装置、计算机可读存储介质、电子设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005234831A (ja) * 2004-02-19 2005-09-02 Matsushita Electric Ind Co Ltd 情報記憶媒体の情報保護方法および情報記憶媒体記録再生装置
CN103197981A (zh) * 2013-01-21 2013-07-10 浪潮(北京)电子信息产业有限公司 存储空间预警方法和系统
CN103577222A (zh) * 2013-10-17 2014-02-12 北京奇虎科技有限公司 识别移动终端中存储卡的方法及装置
CN103793256A (zh) * 2014-03-03 2014-05-14 联想(北京)有限公司 管理存储卡的方法以及电子设备
CN103874987A (zh) * 2012-10-15 2014-06-18 华为终端有限公司 嵌入式多媒体卡分区存储空间调整方法和终端

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005234831A (ja) * 2004-02-19 2005-09-02 Matsushita Electric Ind Co Ltd 情報記憶媒体の情報保護方法および情報記憶媒体記録再生装置
CN103874987A (zh) * 2012-10-15 2014-06-18 华为终端有限公司 嵌入式多媒体卡分区存储空间调整方法和终端
CN103197981A (zh) * 2013-01-21 2013-07-10 浪潮(北京)电子信息产业有限公司 存储空间预警方法和系统
CN103577222A (zh) * 2013-10-17 2014-02-12 北京奇虎科技有限公司 识别移动终端中存储卡的方法及装置
CN103793256A (zh) * 2014-03-03 2014-05-14 联想(北京)有限公司 管理存储卡的方法以及电子设备

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113760856A (zh) * 2020-06-05 2021-12-07 京东数字科技控股有限公司 数据库管理方法及装置、计算机可读存储介质、电子设备

Also Published As

Publication number Publication date
CN109117083B (zh) 2021-05-28

Similar Documents

Publication Publication Date Title
US20210160053A1 (en) Merkle tree construction methods and apparatuses and simplified payment verification methods and apparatuses
CN110648138B (zh) 基于区块链的交易查询、交易数据处理方法、装置及设备
BR112019013441A2 (pt) método para armazenamento de dados e dispositivo para armazenamento de dados
US11108547B2 (en) Methods and apparatuses for reading blockchain data
US20140115571A1 (en) Electronic device, non-transient readable medium and method thereof
CN108459964A (zh) 测试用例选择方法、装置、设备以及计算机可读存储介质
KR20170041712A (ko) 데이터베이스 고장 시의 데이터 저장
CN110399257A (zh) 存储器的检测方法、电子设备及计算机可读存储介质
CN109240915A (zh) 系统测试方法、装置、计算机设备及存储介质
CN112487083A (zh) 一种数据校验方法和设备
CN110532107A (zh) 接口调用方法、装置、计算机设备及存储介质
CN108009223B (zh) 一种交易数据的一致性检测方法及装置
CN110969000B (zh) 数据合并的处理方法及装置
CN109117083A (zh) 移动终端、内置存储容量检测方法及计算机可读存储介质
CN110516124A (zh) 一种文件解析方法、装置和计算机可读存储介质
CN110020550A (zh) 核对平台的评估方法、装置及设备
CN109271453A (zh) 一种数据库容量的确定方法和装置
CN110704686B (zh) 半结构化数据的质量检测方法、装置、存储介质及设备
CN106446158B (zh) 应用数据的共享方法、共享装置和终端
US9977621B2 (en) Multimedia data backup method, user terminal and synchronizer
CN111026273A (zh) 智能穿戴设备自动设置方法、装置、电子设备及存储介质
CN110245166A (zh) 数据核对方法及装置
CN110059712A (zh) 异常数据的检测方法及装置
CN111651466B (zh) 数据采样方法及装置
JP6563001B2 (ja) 補充取引におけるリスクを検出して警告するためのシステムおよび方法

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
GR01 Patent grant
GR01 Patent grant