本发明涉及移动终端应用领域,尤其涉及一种移动终端自动选取SD卡存储路径的方法及其系统。
背景技术:
目前,大部分的移动终端设备均可插入多张SD卡。以手机为例,当插入多张SD卡时,手机系统会指定其中一张SD卡为默认存储路径。当应用程序需要向SD卡写入数据时,系统会把数据写入默认的SD卡中。但是,如果所有应用程序都向系统默认的SD卡中存储数据,则该SD卡的空间很快就会被写满,而其他的SD卡很可能从未被写入过数据。现有技术中,在选择系统默认的SD卡时,用户需要通过手动点击切换默认的SD卡,而应用程序只能将数据写入系统默认的SD卡中,系统不会通过SD卡剩余空间的大小自动选取存储路径。
因此,现有技术还有待于改进和发展。
技术实现要素:
本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种移动终端自动选取SD卡存储路径的方法及其系统,旨在解决现有技术中应用程序只能将数据写入系统默认的SD卡中,系统不会智能选取存储路径的问题。
本发明解决技术问题所采用的技术方案如下:
一种移动终端自动选取SD卡存储路径的方法,其中,所述方法包括步骤:
A、检测到应用程序的写入数据时,判断该应用程序的写入数据在SD卡中是否存在对应的写入路径;
B、当应用程序的写入数据在SD卡中不存在对应的写入路径时,获取当前挂载的SD卡数量,查找挂载的SD卡中剩余存储空间最大的SD卡,并将应用程序的写入数据写入该SD卡。
所述移动终端自动选取SD卡存储路径的方法,其中,还包括:
C、当应用程序的写入数据在SD卡中存在对应的写入路径时,则将该应用程序的写入数据根据对应的写入路径写入SD卡。
所述移动终端自动选取SD卡存储路径的方法,其中,所述步骤A具体包括:
A1、检测到应用程序的写入数据时,获取应用程序的应用名称;
A2、判断SD卡中是否存在包含该应用名称所对应关键词的写入路径。
所述移动终端自动选取SD卡存储路径的方法,其中,所述应用程序的写入数据为程序安装数据、程序更新数据或程序使用缓存数据。
所述移动终端自动选取SD卡存储路径的方法,其中,所述步骤B具体包括:
B1、当应用程序的写入数据在SD卡中不存在对应的写入路径时,则获取当前挂载的SD卡数量,并判断挂载的SD卡中剩余存储空间最大的SD卡的数量是否等于1;
B2、若挂载的SD卡中剩余存储空间最大的SD卡的数量等于1,则将应用程序的写入数据写入该剩余存储空间最大的SD卡;
B3、若挂载的SD卡中剩余存储空间最大的SD卡的数量大于1,则判断剩余存储空间最大的SD卡中是否存在预先设置的默认存储SD卡,当剩余存储空间最大的SD卡中存在所述默认存储SD卡时则执行步骤B4,当剩余存储空间最大的SD卡中不存在所述默认存储SD卡时则执行步骤B5;
B4、将应用程序的写入数据写入该默认存储SD卡;
B5、根据随机算法选择多个剩余存储空间最大的SD卡中的其中一张SD卡,并将应用程序的写入数据写入该SD卡。
一种移动终端自动选取SD卡存储路径的系统,其中,包括:
判断模块,用于当检测到应用程序的写入数据时,判断该应用程序的写入数据在SD卡中是否存在对应的写入路径;
第一控制模块,用于当应用程序的写入数据在SD卡中不存在对应的写入路径时,获取当前挂载的SD卡数量,查找挂载的SD卡中剩余存储空间最大的SD卡,并将应用程序的写入数据写入该SD卡。
所述移动终端自动选取SD卡存储路径的系统,其中,还包括:
第二控制模块,用于当应用程序的写入数据在SD卡中存在对应的写入路径时,则将该应用程序的写入数据根据对应的写入路径写入SD卡。
所述移动终端自动选取SD卡存储路径的系统,其中,所述判断模块具体包括:
获取单元,用于检测到应用程序的写入数据时,获取应用程序的应用名称;
查找单元,用于查找SD卡中是否存在包含该应用名称所对应关键词的写入路径。
所述移动终端自动选取SD卡存储路径的系统,其中,所述应用程序的写入数据为程序安装数据、程序更新数据或程序使用缓存数据。
所述移动终端自动选取SD卡存储路径的系统,其中,所述第一控制模块具体包括:
第一判断单元,用于当应用程序的写入数据在SD卡中不存在对应的写入路径时,则获取当前挂载的SD卡数量,并判断挂载的SD卡中剩余存储空间最大的SD卡的数量是否等于1;
第一写入单元,用于当挂载的SD卡中剩余存储空间最大的SD卡的数量等于1,则将应用程序的写入数据写入该剩余存储空间最大的SD卡;
第二判断单元,用于当挂载的SD卡中剩余存储空间最大的SD卡的数量大于1时,则判断剩余存储空间最大的SD卡中是否存在预先设置的默认存储SD卡,当剩余存储空间最大的SD卡中存在所述默认存储SD卡时则启动第二写入单元,当剩余存储空间最大的SD卡中不存在所述默认存储SD卡时则启动第三写入单元;
第二写入单元,用于将应用程序的写入数据写入该默认存储SD卡;
第三写入单元,用于根据随机算法选择多个剩余存储空间最大的SD卡中的其中一张SD卡,并将应用程序的写入数据写入该SD卡。
本发明提供的一种移动终端自动选取SD卡存储路径的方法及其系统,当检测到应用程序的写入数据时,判断该应用程序的写入数据在SD卡中是否存在对应的写入路径;当应用程序的写入数据在SD卡中不存在对应的写入路径时,获取当前挂载的SD卡数量,查找挂载的SD卡中剩余存储空间最大的SD卡,并将应用程序的写入数据写入该SD卡。本发明中通过判断SD卡剩余空间的大小来自动选取存储路径,充分利用了移动终端设备插入多张SD卡的优势,且无需用户通过手动点击切换默认的SD卡,方便快捷。
附图说明
图1是本发明所述移动终端自动选取SD卡存储路径的方法的较佳实施例的流程图。
图2是本发明所述移动终端自动选取SD卡存储路径的方法较佳实施例中选取最大剩余空间SD卡的具体流程图。
图3是本发明所述移动终端自动选取SD卡存储路径的系统的较佳实施例的结构框图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
请参见图1,图1是本发明所述移动终端自动选取SD卡存储路径的方法较佳实施例的流程图。如图1所示,所述移动终端自动选取SD卡存储路径的方法,包括以下步骤:
步骤S100、检测到应用程序的写入数据时,判断该应用程序的写入数据在SD卡中是否存在对应的写入路径;
步骤S200、当应用程序的写入数据在SD卡中不存在对应的写入路径时,获取当前挂载的SD卡数量,查找挂载的SD卡中剩余存储空间最大的SD卡,并将应用程序的写入数据写入该SD卡。
具体实施时,在步骤S100中,当检测到应用程序的写入数据时,获取应用程序的应用名称,判断SD卡中是否存在包含该应用名称所对应关键词的写入路径。例如,一般当移动检测到较高版本的应用程序(如2016版本的QQ)的写入数据时,会获取该应用程序的应用名称判断移动终端SD卡中是否存在包含QQ名称所对应关键词的写入路径,若存在(如2012版本的QQ),则将其应用程序的写入数据写入该SD卡中。其中,所述应用程序的写入数据为程序安装数据、程序更新数据或程序使用缓存数据。例如QQ、微信、淘宝等应用程序,当首次安装运行时的写入数据为安装数据,当有新版本更新时的写入数据为程序更新数据,而QQ、微信的聊天记录或淘宝的购物浏览记录的写入数据则为使用缓存数据。此外,当应用程序的写入数据在SD卡中存在对应的写入路径时,则将该应用程序的写入数据根据对应的写入路径写入SD卡。
进一步地,如图2所示,所述步骤S200具体包括:
步骤S201,当应用程序的写入数据在SD卡中不存在对应的写入路径时,则获取当前挂载的SD卡数量,并判断挂载的SD卡中剩余存储空间最大的SD卡的数量是否等于1;
步骤S202,若挂载的SD卡中剩余存储空间最大的SD卡的数量等于1,则将应用程序的写入数据写入该剩余存储空间最大的SD卡;
步骤S203,若挂载的SD卡中剩余存储空间最大的SD卡的数量大于1,则判断剩余存储空间最大的SD卡中是否存在预先设置的默认存储SD卡,当剩余存储空间最大的SD卡中存在所述默认存储SD卡时则执行步骤S204,当剩余存储空间最大的SD卡中不存在所述默认存储SD卡时则执行步骤S205;
步骤S204,将应用程序的写入数据写入该默认存储SD卡;
步骤S205,根据随机算法选择多个剩余存储空间最大的SD卡中的其中一张SD卡,并将应用程序的写入数据写入该SD卡。
特别地,在步骤S203中,当当前系统挂载的SD卡数量为2张时,则判断两者之间剩余存储空间的大小,将所述应用程序的数据写入剩余存储空间较大的一张SD卡中,若两者剩余存储空间相等,则执行步骤S204将所述应用程序的写入数据写入系统默认的SD卡路径中;当当前系统挂载的SD卡数量为3张或者3张以上时,则判断最大剩余存储空间的大小是否相等,若所述SD卡最大剩余存储空间的大小不相等,则将所述应用程序的数据写入剩余存储空间最大的一张SD卡中,若所述SD卡最大剩余存储空间的大小相等,则执行步骤S204将所述应用程序的数据写入系统默认的SD卡路径中;进一步地,当所述SD卡剩余空间的大小相等且没有设置系统默认的SD卡时,则则执行步骤S205将所述应用程序的数据随机写入其中一张剩余空间最大的SD卡中。
为了便于更好地理解,下面对本实施例举例加以说明。设当前系统挂载的2张SD卡的剩余空间分别为:SD(Ⅰ)和SD(Ⅱ),若SD(Ⅰ)>SD(Ⅱ),则将所述应用程序的数据写入SD(Ⅰ)中,反之,则将所述应用程序的数据写入SD(Ⅱ)中,若SD(Ⅰ)=SD(Ⅱ),则进一步判断是否设置有系统默认的SD卡,若有则将所述应用程序的数据写入系统默认的SD卡路径中,若没有则将所述应用程序的数据随机写入SD(Ⅰ)或SD(Ⅱ)中;同理,设当前系统挂载了3张SD卡且剩余空间分别 为:SD(Ⅰ)>、SD(Ⅱ)和SD(Ⅲ),若SD(Ⅰ)>SD(Ⅱ)>SD(Ⅲ)或SD(Ⅰ)>SD(Ⅱ)=SD(Ⅲ),则将所述应用程序的数据写入SD(Ⅰ)中,若SD(Ⅰ)= SD(Ⅱ)>SD(Ⅲ),则参照执行步骤S302中当SD(Ⅰ)=SD(Ⅱ)时的操作,若SD(Ⅰ)= SD(Ⅱ)=SD(Ⅲ),则进一步判断是否设置有系统默认的SD卡,若有则将所述应用程序的数据写入系统默认的SD卡路径中,若没有则将所述应用程序的数据随机写入SD(Ⅰ)、SD(Ⅱ)或SD(Ⅲ)中。
可见,本发明中通过判断SD卡剩余空间大小来自动选取存储路径,充分利用了移动终端设备插入多张SD卡的优势,且无需用户通过手动点击切换默认的SD卡。
基于上述实施例,如图3所示,本发明还提供了一种移动终端自动选取SD卡存储路径的系统,包括:
判断模块100,用于当检测到应用程序的写入数据时,判断该应用程序的写入数据在SD卡中是否存在对应的写入路径;
第一控制模块200,用于当应用程序的写入数据在SD卡中不存在对应的写入路径时,获取当前挂载的SD卡数量,查找挂载的SD卡中剩余存储空间最大的SD卡,并将应用程序的写入数据写入该SD卡。
特别地,所述移动终端自动选取SD卡存储路径的系统,还包括:
第二控制模块,用于当应用程序的写入数据在SD卡中存在对应的写入路径时,则将该应用程序的写入数据根据对应的写入路径写入SD卡。
进一步的,在所述移动终端自动选取SD卡存储路径的系统中,所述判断模块100具体包括:
获取单元,用于检测到应用程序的写入数据时,获取应用程序的应用名称;
查找单元,用于查找SD卡中是否存在包含该应用名称所对应关键词的写入路径。
其中,所述应用程序的写入数据为程序安装数据、程序更新数据或程序使用缓存数据。
进一步的,在所述移动终端自动选取SD卡存储路径的系统中,所述第一控制模块200具体包括:
第一判断单元,用于当应用程序的写入数据在SD卡中不存在对应的写入路径时,则获取当前挂载的SD卡数量,并判断挂载的SD卡中剩余存储空间最大的SD卡的数量是否等于1;
第一写入单元,用于当挂载的SD卡中剩余存储空间最大的SD卡的数量等于1,则将应用程序的写入数据写入该剩余存储空间最大的SD卡;
第二判断单元,用于当挂载的SD卡中剩余存储空间最大的SD卡的数量大于1时,则判断剩余存储空间最大的SD卡中是否存在预先设置的默认存储SD卡,当剩余存储空间最大的SD卡中存在所述默认存储SD卡时则启动第二写入单元,当剩余存储空间最大的SD卡中不存在所述默认存储SD卡时则启动第三写入单元;
第二写入单元,用于将应用程序的写入数据写入该默认存储SD卡;
第三写入单元,用于根据随机算法选择多个剩余存储空间最大的SD卡中的其中一张SD卡,并将应用程序的写入数据写入该SD卡。
综上所述,本发明公开了一种移动终端自动选取SD卡存储路径的方法及其系统,具体方法为:检测到应用程序的写入数据时,判断该应用程序的写入数据在SD卡中是否存在对应的写入路径;当应用程序的写入数据在SD卡中不存在对应的写入路径时,获取当前挂载的SD卡数量,查找挂载的SD卡中剩余存储空间最大的SD卡,并将应用程序的写入数据写入该SD卡。本发明中通过判断SD卡剩余空间的大小来自动选取存储路径,充分利用了移动终端设备插入多张SD卡的优势,且无需用户通过手动点击切换默认的SD卡,方便快捷。
当然,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关硬件(如处理器,控制器等)来完成,所述的程序可存储于一计算机可读取的存储介质中,该程序在执行时可包括如上述各方法实施例的流程。其中所述的存储介质可为存储器、磁碟、光盘等。
应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。