一种SIM卡热插拔方法、装置、终端设备及存储介质与流程

文档序号:18663865发布日期:2019-09-13 19:48阅读:431来源:国知局
一种SIM卡热插拔方法、装置、终端设备及存储介质与流程

本申请涉及通信技术领域,尤其涉及一种sim卡热插拔方法、装置、终端设备及存储介质。



背景技术:

热插拔即为带电插拔,热插拔功能就是终端允许用户在不关闭系统,不切断电源的情况下取出和更换损坏的硬盘、电源或板sim卡等部件。

对于硬件不支持热插拔的终端来说,随意的sim卡热插拔操作极有可能烧毁用户的sim卡,给用户带来损失。进一步,拔掉sim卡或者重新插入一张新的sim卡,终端并不能及时检测到sim卡的状态,导致在拔掉sim卡后不能及时的释放网络资源,或者在插入一张新的sim后,不能搜索到新的网络,而是必须在人工重新启动终端后才能搜寻新的网络,在终端重启过程中有可能造成运行中的某些应用数据丢失,显然影响用户体验。

因此,如何在终端设备实现sim卡的热插拔,解决上述问题,提升用户体验是本领域技术人员亟待解决的技术问题。



技术实现要素:

本申请的主要目的在于提供一种sim卡热插拔方法、装置、终端设备及存储介质,旨在解决在对sim卡进行热插拔时避免重启终端设备,以提升用户体验。

为实现上述目的,本申请提供一种sim卡热插拔方法,应用于终端设备,所述终端设备设置有通信模组,sim卡与所述通信模组电连接,所述方法包括:检测所述通信模组是否与通信网络断开通信连接;若所述通信模组与通信网络断开通信连接,则检测sim卡的状态是否正常;若sim卡状态不正常,则初始化所述sim卡;检测所述sim卡初始化是否成功;若否,则重新初始化所述sim卡;若是,则搜索所述sim卡的网络。

优选地,所述检测sim卡的状态是否正常,包括:向所述通信模组发送第一检测指令,所述第一检测指令用于使所述通信模组检测sim卡的状态;检测是否接收到第一反馈指令,所述第一反馈指令为所述通信模组根据所述第一检测指令生成;若接收到所述第一反馈指令,则判断所述第一反馈指令是否为第一预设指令;若所述指令为第一预设指令,则判断所述sim卡的状态为正常。

优选地,所述检测所述sim卡初始化是否成功,包括:向所述通信模组循环发送第二检测指令,所述第二检测指令用于使所述通信模组检测sim卡是否初始化成功;检测单位时间内是否接收到第二反馈指令,所述第二反馈指令为所述通信模组根据所述第二检测指令生成;若接收到所述第二反馈指令,则判断所述第二反馈指令是否为第二预设指令;若所述指令为非第二预设指令,则判断所述sim卡初始化未成功。

优选地,所述初始化所述sim卡,包括:向所述通信模组发送第一指令并计时,所述第一指令用于使所述通信模组进行缓存清除;判断计时时间是否超过预设时间;若所述计时时间超过预设时间,则向所述通信模组发送第二指令以使所述sim卡初始化。

优选地,所述通信模组为4g通信模组。

为实现上述目的,本申请提供一种sim卡热插拔装置,包括:通信检测模块,用于检测是否与通信网络断开通信连接;状态检测模块,用于若与通信网络断开通信连接,则检测sim卡的状态是否正常;初始化模块,用于若sim卡状态不正常,则初始化所述sim卡;判断模块,用于判断所述sim卡初始化是否成功;初始化模块,还用于若所述sim卡初始化未成功,则重新初始化所述sim卡;网络搜索模块,用于若所述sim卡初始化成功,则搜索所述sim卡的网络。

优选地,所述状态检测模块还用于:向所述通信模组发送第一检测指令,所述第一检测指令用于使所述通信模组检测sim卡的状态;检测是否接收到第一反馈指令,所述第一反馈指令为所述通信模组根据所述第一检测指令生成;若接收到所述第一反馈指令,则判断所述第一反馈指令是否为第一预设指令;若所述指令为第一预设指令,则判断所述sim卡的状态为正常。

优选地,所述状态检测模块还用于:向所述通信模组循环发送第二检测指令,所述第二检测指令用于使所述通信模组检测sim卡是否初始化成功;检测单位时间内是否接收到第二反馈指令,所述第二反馈指令为所述通信模组根据所述第二检测指令生成;若接收到所述第二反馈指令,则判断所述第二反馈指令是否为第二预设指令;若所述指令为非第二预设指令,则判断所述sim卡初始化未成功。

优选地,初始化模块还用于向所述通信模组发送第一指令并计时,所述第一指令用于使所述通信模组进行缓存清除;判断计时时间是否超过预设时间;若所述计时时间超过预设时间,则向所述通信模组发送第二指令以使所述sim卡初始化。

为实现上述目的,本申请提供一种终端设备,所述终端设备包括存储器、处理器,所述处理器被配置用于调取存储在所述存储器中的可执行计算程序执行前述的方法。

为实现上述目的,本申请提供一种存储介质,所述存储介质存储有可执行计算程序,所述可执行计算程序被执行时,实现前述的方法。

与现有设计相比,本申请提供一种sim卡热插拔方法、装置、终端设备及存储介质。本申请的sim卡热插拔的方法应用于终端设备,所述终端设备设置有通信模组,sim卡与所述通信模组电连接,本申请通过检测终端设备的通信模组是否与通信网络断开通信连接,若通信模组与通信网络断开通信连接,则检测sim卡的状态是否正常;若sim卡状态不正常,则初始化所述sim卡;判断所述sim卡初始化是否成功;若否,则重新初始化所述sim卡;若是,则搜索所述sim卡的网络。根据sim卡的状态判断搜索该sim卡对应的网络资源或重新初始化搜索网络资源,而不用在插入sim卡后重启终端来进行sim卡重新初始化,提高了用户体验。

附图说明

图1为本申请第一实施例所提供的一种sim卡热插拔方法的步骤流程图。

图2为图1中步骤s2的子步骤流程图。

图3为图1中步骤s3的子步骤流程图。

图4为图1中步骤s4的子步骤流程图。

图5为本申请第二实施例所提供的sim卡热插拔方法装置的结构框图。

图6为本申请第三实施例提供的终端设备的结构框图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,如下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。

本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

需要说明的是,在本申请中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本申请要求的保护范围之内。

本申请提供一种sim卡热插拔方法、装置、终端设备及存储介质。本申请的sim卡热插拔的方法应用于终端设备,所述终端设备设置有通信模组,sim卡与所述通信模组电连接,本申请通过检测终端设备的通信模组是否与通信网络断开通信连接,若通信模组与通信网络断开通信连接,则检测sim卡的状态是否正常;若sim卡状态不正常,则初始化所述sim卡;判断所述sim卡初始化是否成功;若否,则重新初始化所述sim卡;若是,则搜索所述sim卡的网络。根据sim卡的状态判断搜索该sim卡对应的网络资源或重新初始化搜索网络资源,而不用在插入sim卡后重启终端来进行sim卡重新初始化,提高了用户体验。

请参阅图1,本申请提供了一种sim卡热插拔方法,应用于终端设备,终端设备设置有通信模组,sim卡与所述通信模组电连接,该终端设备可以是电子阅读器、车载显示器、平板电脑、智能手机、智能手表、智能手环等,所述方法包括:

步骤s1:检测所述通信模组是否与通信网络断开通信连接。

终端设备20检测通信模组是否与通信网络进行通信连接,该通信网络可以是移动2g、3g、4g或5g网络,也可以是电信或联通的2g、3g、4g或5g网络,该通信模组为可以与通信网络进行通信连接的2g、3g、4g或5g通信模组。

步骤s2:若所述通信模组与通信网络断开通信连接,则检测sim卡的状态是否正常。

请参阅图2,步骤s2包括步骤s21-s23

其中,步骤s21:向所述通信模组发送第一检测指令,所述第一检测指令用于使所述通信模组检测sim卡的状态。

本申请中,sim卡也称为用户身份识别卡、智能卡,每一sim卡携带有与之对应的身份标识,用于使终端设备与通信网络进行通信连接。当终端设备无法与通信网络连接时,终端设备向通信模组发送第一检测指令,以使所述通信模组检测sim卡的状态是否正常。

例如,终端设备向通信模组发送“at+cpin?”的检测指令,通信模组根据该检测指令对sim卡的状态进行检测。

步骤s22:检测是否接收到第一反馈指令,所述第一反馈指令为所述通信模组根据所述第一检测指令生成。

通信模组根据sim卡检测指令检测sim卡的状态,并根据sim卡的状态对应生成相应的反馈指令。

如,通信模组根据“at+cpin?”指令检测sim卡的状态是否正常,也即sim卡是否接与通信模组可以进行通信,若sim卡的状态为正常,则通信模组返回命令“+cpin:ready”给终端设备,若返回命令“+cpin:error”则表示sim卡识别失败或没有插入sim卡。

步骤s23:若接收到所述第一反馈指令,则判断所述第一反馈指令是否为第一预设指令。

终端设备接收到通信模组根据sim卡状态返回的反馈指令时,判断该指令是否为预设指令,该预设指令为sim卡的状态为正常对应的反馈指令。

如,预设“+cpin:ready”指令为sim卡的状态为正常对应的反馈指令,若通信模组根据终端设备发送的检测指令,返回指令“+cpin:ready”给终端设备,则终端设备判断该返回指令为预设指令。

步骤s24:若所述指令为第一预设指令,则判断所述sim卡的状态为正常。

若通信模组返回的指令为第一预设指令,则判断sim卡的状态为正常,即可控制sim卡搜索所述sim卡的网络。

若返回的指令为非第一预设指令,则判断sim卡的状态为不正常。则执行步骤s3。

步骤s3:若sim卡状态不正常,则初始化所述sim卡。

请参阅图3,在部分实施例中,步骤s3中,所述初始化所述sim卡,包括

s31:向所述通信模组发送第一指令并计时,所述第一指令用于使所述通信模组进行缓存清除。

若终端设备检测到sim卡的状态不正常,则向通信模组发送第一指令,并开始计时,其中,第一指令用于使通信模块将与sim卡相关的状态缓存或数据缓存进行清除。

例如,通信模组内设置有射频单元,射频单元内设置有modem核,该modem核与sim卡通信连接,以识别和控制所述sim卡。

终端设备向通信模组发送“at+cfun=0”的指令并开始计时,通信模组接收到该指令后,将断开modem核与sim卡的通信连接,并清除modem核内与sim卡相关的状态缓存或数据缓存进行清除。

s32:判断计时时间是否超过预设时间。

该预设时间可以为1s、2s、3s、5s,该预设时间可以根据需要设定。

s33:若计时时间超过预设时间,则向所述通信模组发送第二指令以完成所述sim卡的初始化。

若计时时间超过预设时间,即可以默认该通信模组内的数据、状态均处于稳定状态,可以重新初始化,则向通信模组发送第二指令以使所述sim卡初始化,从而无需通过将终端设备重启使得通信模组断电完成初始化。

例如,终端设备向通信模组发送“at+cfun=1”的指令,通信模组接收到该指令后,通信模组内的modem核重新与sim卡通信连接,重新读取该sim卡的身份信息,实现sim卡初始化,以使安装有该sim卡的终端设备可以重新与通信网络建立通信连接。

步骤s4:判断所述sim卡初始化是否成功。

请参阅图4,在部分实施例中,步骤s4包括:

步骤s41:向所述通信模组循环发送第二检测指令,所述第二检测指令用于使所述通信模组检测sim卡是否初始化成功。

设定循环发送第二检测指令的发送周期,比如终端设备间隔3s、5s向通信模组发送第二检测指令。

例如,终端设备向通信模组发送“at+cpin?”的检测指令,通信模组根据该检测指令对sim卡的状态进行检测,根据sim卡的状态判断sim卡是否初始化成功。

步骤s42:检测单位时间内是否接收到第二反馈指令,所述第二反馈指令为所述通信模组根据所述第二检测指令生成。

检测在预设的单位时间内是否接收到第二反馈指令,该第二反馈指令为通信模组根据第二检测指令对sim卡的状态进行检测,并根据检测结果生成对应的反馈指令。该预设的单位时间可以为30s、60s,其可以根据需要进行设定。若sim卡的状态正常,则判断sim卡是否初始化成功;若sim卡的状态不正常,状态判断sim卡是否初始化未成功。

如,通信模组根据“at+cpin?”指令检测sim卡的状态是否正常,也即sim卡是否接与通信模组可以进行通信,若sim卡的状态为正常,则通信模组返回命令“+cpin:ready”给终端设备,若返回命令“+cpin:error”则表示sim卡失败或没有插入sim卡。

步骤s43:若接收到所述第二反馈指令,则判断所述第二反馈指令是否为第二预设指令。

如,预设“+cpin:ready”指令为sim卡的状态为正常对应的反馈指令,若通信模组根据终端设备发送的检测指令,返回指令“+cpin:ready”给终端设备,则终端设备判断该返回指令为第二预设指令。

步骤s44:若所述指令为第二预设指令,则判断所述sim卡初始化成功;

步骤s45:若所述指令为非第二预设指令,则判断所述sim卡初始化未成功。

步骤s5:若否,则重新初始化所述sim卡。

若所述指令为非第二预设指令,则判断所述sim卡初始化未成功,则重新执行步骤s3。

步骤s6:若是,则搜索所述sim卡的网络。

若所述sim卡初始化成功,则搜索所述sim卡的网络,sim卡热插拔成功。

请参阅图5,本申请还提供一种sim卡热插拔装置10,该sim卡热插拔装置10包括:

通信检测模块101,用于检测所述通信模组是否与通信网络断开通信连接;

状态检测模块102,用于若所述通信模组与通信网络断开通信连接,则检测sim卡的状态是否正常;

初始化模块103,用于若sim卡状态不正常,则初始化所述sim卡;

状态检测模块102,还用于检测所述sim卡初始化是否成功;

初始化模块103,还用于若所述sim卡初始化未成功,则重新初始化所述sim卡;

网络搜索模块104,用于若所述sim卡初始化成功,则搜索所述sim卡的网络。

在部分实施例中,状态检测模块102还用于向所述通信模组发送第一检测指令,所述第一检测指令用于使所述通信模组检测sim卡的状态;检测是否接收到第一反馈指令,所述第一反馈指令为所述通信模组根据所述第一检测指令生成;若接收到所述第一反馈指令,则判断所述第一反馈指令是否为第一预设指令;若所述指令为第一预设指令,则判断所述sim卡的状态为正常。

在部分实施例中,状态检测模块102还用于向所述通信模组循环发送第二检测指令,所述第二检测指令用于使所述通信模组检测sim卡是否初始化成功;检测单位时间内是否接收到第二反馈指令,所述第二反馈指令为所述通信模组根据所述第二检测指令生成;若接收到所述第二反馈指令,则判断所述第二反馈指令是否为第二预设指令;若所述指令为非第二预设指令,则判断所述sim卡初始化未成功。

在部分实施例中,初始化模块103还用于向所述通信模组发送第一指令并计时,所述第一指令用于使所述通信模组进行缓存清除;判断计时时间是否超过预设时间;若所述计时时间超过预设时间,则向所述通信模组发送第二指令以使所述sim卡初始化。

本实施例中,该通信模组为可以与通信网络进行通信连接的2g、3g、4g或5g通信模组。该通信网络可以是移动2g、3g、4g或5g网络,也可以是电信或联通的2g、3g、4g或5g网络。

请参阅图6,在部分实施例中,该终端设备20包括存储器201、处理器202、总线203以及通信模组204,存储器201、通信模组204通过总线203与处理器202电连接。

其中,存储器201至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、磁性存储器、磁盘、光盘等。存储器201在一些实施例中可以是终端设备20的内部存储单元,例如该终端设备20的硬盘。存储器201在另一些实施例中也可以是终端设备20的外部存储设备,例如终端设备20上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。存储器201不仅可以用于存储安装于终端设备20的应用软件及各类数据,例如计算机可读程序的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。

处理器202在一些实施例中可以是中央处理器(centralprocessingunit,cpu)、控制器、微控制器、微处理器或其他数据处理芯片,处理器202可调用存储器201中存储的程序代码或处理数据,实现如下步骤:

检测所述通信模组是否与通信网络断开通信连接;

若所述通信模组与通信网络断开通信连接,则检测sim卡的状态是否正常;

若sim卡状态不正常,则初始化所述sim卡;

检测所述sim卡初始化是否成功;

若否,则重新初始化所述sim卡;

若是,则搜索所述sim卡的网络。

优选地,处理器202还用于实现如下步骤:

向所述通信模组发送第一检测指令,所述第一检测指令用于使所述通信模组检测sim卡的状态;

检测是否接收到第一反馈指令,所述第一反馈指令为所述通信模组根据所述第一检测指令生成;

若接收到所述第一反馈指令,则判断所述第一反馈指令是否为第一预设指令;

若所述指令为第一预设指令,则判断所述sim卡的状态为正常。

优选地,处理器202还用于实现如下步骤:

向所述通信模组循环发送第二检测指令,所述第二检测指令用于使所述通信模组检测sim卡是否初始化成功;

检测单位时间内是否接收到第二反馈指令,所述第二反馈指令为所述通信模组根据所述第二检测指令生成;

若接收到所述第二反馈指令,则判断所述第二反馈指令是否为第二预设指令;

若所述指令为非第二预设指令,则判断所述sim卡初始化未成功。

优选地,处理器202还用于实现如下步骤:

向所述通信模组发送第一指令并计时,所述第一指令用于使所述通信模组进行缓存清除;

判断计时时间是否超过预设时间;

若所述计时时间超过预设时间,则向所述通信模组发送第二指令以使所述sim卡初始化。

优选地,所述通信模组为4g通信模组。

本申请还提供一种存储介质,该存储介质存储有计算机可执行的sim卡热插拔方法程序,该热插拔方法程序被计算机处理器调用时,使处理器实现如下步骤:

检测所述通信模组是否与通信网络断开通信连接;

若所述通信模组与通信网络断开通信连接,则检测sim卡的状态是否正常;

若sim卡状态不正常,则初始化所述sim卡;

检测所述sim卡初始化是否成功;

若否,则重新初始化所述sim卡;

若是,则搜索所述sim卡的网络。

优选地,处理器还用于实现如下步骤:

向所述通信模组发送第一检测指令,所述第一检测指令用于使所述通信模组检测sim卡的状态;

检测是否接收到第一反馈指令,所述第一反馈指令为所述通信模组根据所述第一检测指令生成;

若接收到所述第一反馈指令,则判断所述第一反馈指令是否为第一预设指令;

若所述指令为第一预设指令,则判断所述sim卡的状态为正常。

优选地,处理器还用于实现如下步骤:

向所述通信模组循环发送第二检测指令,所述第二检测指令用于使所述通信模组检测sim卡是否初始化成功;

检测单位时间内是否接收到第二反馈指令,所述第二反馈指令为所述通信模组根据所述第二检测指令生成;

若接收到所述第二反馈指令,则判断所述第二反馈指令是否为第二预设指令;

若所述指令为非第二预设指令,则判断所述sim卡初始化未成功。

优选地,处理器还用于实现如下步骤:

向所述通信模组发送第一指令并计时,所述第一指令用于使所述通信模组进行缓存清除;

判断计时时间是否超过预设时间;

若所述计时时间超过预设时间,则向所述通信模组发送第二指令以使所述sim卡初始化。

优选地,所述通信模组为4g通信模组。

以上仅为本申请的优选实施例,并非因此限制本申请的保护范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1