一种数据容错方法、设备及计算机可读存储介质与流程

文档序号:14724247发布日期:2018-06-19 03:38阅读:197来源:国知局

本发明涉及数据处理技术领域,尤其涉及一种数据容错方法、设备及计算机可读存储介质。



背景技术:

在苹果公司开发的移动操作系统iOS系统中开发的APP(Application,应用程序),由于接收消息的对象并不能识别接收到的消息,无法继续下一步操作,导致类型为unrecognized selector sent to instance(发送给对象无法识别的消息)的APP崩溃。

现有技术中,对该类型的APP崩溃的解决方案是在APP的代码中可能产生数据异常的位置,分别进行容错处理。例如:在处理字典data(数据)前,先判断data是否是字典的格式;如果是字典的格式,则对字典data的某个键值对取值。但是该容错处理的方案容易造成耦合关系,同时在APP的代码中会使用大量的重复代码,不利于APP程序代码的长期迭代维护。



技术实现要素:

本发明提供一种数据容错方法、设备及计算机可读存储介质,用以解决现有技术中在APP的代码中由于存在大量的重复容错代码,导致APP程序代码不利于维护的问题。

本发明采用的技术方案是,所述数据容错方法,包括:

当任一设定数据格式的对象接收到数据时,判断所述数据的格式是否与所述任一设定数据格式匹配;

在判定所述数据的格式与所述任一设定数据格式不匹配的情况下,通过调用设定函数集合中的所述任一设定数据格式对应的预设容错函数返回容错值。

可选地,所述设定函数集合为NSObject类;

在所述任一设定数据格式的对象接收到数据之前,所述方法还包括:

通过运行时Runtime的应用程序编程接口API,在所述NSObject类中设置每个所述设定数据格式对应的容错函数。

可选地,所述设定数据格式至少包括以下数据格式之一:

字典格式、数组格式和字符串格式。

可选地,所述容错值包括零值;

所述通过调用设定函数集合中的所述任一设定数据格式对应的预设容错函数返回容错值,包括:

在所述设定数据格式为所述字符串格式的情况下,通过调用设定函数集合中的所述字符串格式对应的预设容错函数返回零值。

可选地,所述容错值包括空值;

所述通过调用设定函数集合中的所述任一设定数据格式对应的预设容错函数返回容错值,包括:

在所述设定数据格式为所述字典格式的情况下,通过调用设定函数集合中的所述字典格式对应的预设容错函数返回空值。

可选地,所述容错值包括空值;

所述通过调用设定函数集合中的所述任一设定数据格式对应的预设容错函数返回容错值,包括:

在所述设定数据格式为所述数组格式的情况下,通过调用设定函数集合中的所述数组格式对应的预设容错函数返回空值。

本发明还提供一种数据容错设备,所述数据容错设备包括处理器和存储器;

所述处理器用于执行存储器中存储的数据容错的程序,以实现以下步骤:

当任一设定数据格式的对象接收到数据时,判断所述数据的格式是否与所述任一设定数据格式匹配;

在判定所述数据的格式与所述任一设定数据格式不匹配的情况下,通过调用设定函数集合中的所述任一设定数据格式对应的预设容错函数返回容错值。

可选地,所述设定函数集合为NSObject类;

在所述任一设定数据格式的对象接收到数据之前,所述处理器还用于执行所述数据容错的程序,以实现以下步骤:

通过运行时Runtime的应用程序编程接口API,在所述NSObject类中设置每个所述设定数据格式对应的容错函数。

可选地,所述设定数据格式至少包括以下数据格式之一:

字典格式、数组格式和字符串格式。

可选地,所述容错值包括零值;

所述通过调用设定函数集合中的所述任一设定数据格式对应的预设容错函数返回容错值,包括:

在所述设定数据格式为所述字符串格式的情况下,通过调用设定函数集合中的所述字符串格式对应的预设容错函数返回零值。

可选地,所述容错值包括空值;

所述通过调用设定函数集合中的所述任一设定数据格式对应的预设容错函数返回容错值,包括:

在所述设定数据格式为所述字典格式的情况下,通过调用设定函数集合中的所述字典格式对应的预设容错函数返回空值。

可选地,所述容错值包括空值;

所述通过调用设定函数集合中的所述任一设定数据格式对应的预设容错函数返回容错值,包括:

在所述设定数据格式为所述数组格式的情况下,通过调用设定函数集合中的所述数组格式对应的预设容错函数返回空值。

本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现上述的数据容错的方法的步骤。

采用上述技术方案,本发明至少具有下列优点:

本发明所述一种数据容错方法、设备及计算机可读存储介质,通过在设定函数集合中设置每个设定数据格式对应的容错函数,避免了容错函数与APP业务代码之间的耦合关系,同时避免了在APP业务代码中重复设置容错函数,提升了APP业务代码的维护方便性和扩展性;有效地提高了APP的代码容错率,有效避免了APP崩溃,有效提高了APP的安全性和稳定性。

附图说明

图1为本发明第一实施例的数据容错方法流程图;

图2为本发明第二实施例的数据容错方法流程图;

图3为本发明第三实施例的数据容错方法流程图;

图4为本发明第四至第六实施例的数据容错设备组成结构示意图。

具体实施方式

为更进一步阐述本发明为达成预定目的所采取的技术手段及功效,以下结合附图及较佳实施例,对本发明进行详细说明如后。

本发明第一实施例,一种数据容错方法,如图1所示,包括以下具体步骤:

步骤S101,当任一设定数据格式的对象接收到数据时,判断该数据的格式是否与任一设定数据格式匹配。

在本实施例中,对设定数据格式不做具体限定,可以是字典(NSDictionary)格式,也可以是数组(NSArray)格式,也可以是字符串(NSString)格式。

步骤S102,在判定该数据的格式与任一设定数据格式不匹配的情况下,通过调用设定函数集合中的任一设定数据格式对应的预设容错函数返回容错值。

可选地,设定函数集合为NSObject类。

可选地,步骤S102,包括:

在判定该数据的格式与任一设定数据格式不匹配的情况下,通过调用NSObject类中的任一设定数据格式对应的预设容错函数返回容错值。

通过在NSObject类中预设每个设定数据格式对应的容错函数,避免了每个设定数据格式接收到错误格式的数据,导致的类型为unrecognized selector sent to instance的崩溃,有效地提高了APP的代码容错率,有效避免了APP崩溃,有效提高了APP的安全性和稳定性。

通过在设定函数集合中预设每个设定数据格式对应的容错函数,判断设定数据格式的对象接收到数据的格式是否合法,并在设定数据格式的对象接收到数据的格式不合法的情况下,通过预设的容错函数对设定数据格式的对象返回设定值,以使APP能够正常运行,有效地避免设定数据格式的对象接收到错误格式的数据,导致的类型为unrecognized selector sent to instance的APP崩溃,有效地提高了APP的代码容错率,有效提高了APP的安全性和稳定性。

本发明第一实施例所述的一种数据容错方法,通过在设定函数集合中预设每个设定数据格式对应的容错函数,避免了每个设定数据格式接收到错误格式的数据,导致的类型为unrecognized selector sent to instance的崩溃;避免了容错函数与APP业务代码之间的耦合关系,同时避免了在APP业务代码中重复设置容错函数,提升了APP业务代码的维护方便性和扩展性;有效地提高了APP的代码容错率,有效避免了APP崩溃,有效提高了APP的安全性和稳定性。

本发明第二实施例,一种数据容错方法,如图2所示,包括以下具体步骤:

步骤S201,通过Runtime(运行时)的API(Application Programming Interface,应用程序编程接口),在设定函数集合中设置每个设定数据格式对应的容错函数。

可选地,设定函数集合为NSObject类。

可选地,步骤S201,包括:

通过Runtime的API,在NSObject类中设置每个设定数据格式对应的容错函数。

其中,在Objective-C语言中,所有的类都有一个基类NSObject类。

在本实施例中,设定数据格式至少包括以下数据格式之一:字典(NSDictionary)格式,数组(NSArray)格式和字符串(NSString)格式。

可选地,步骤S201,包括:

通过Runtime的API,在NSObject类中设置字符串格式对应的容错函数:LENGTH函数;

在NSObject类中设置字典格式对应的容错函数:objectForKey函数和objectForKeyedSubscript:函数;

在NSObject类中设置数组格式对应的容错函数:objectAtIndex函数和objectAtIndexedSubscript函数。

通过在NSObject类中设置每个设定数据格式对应的容错函数,避免了容错函数与APP业务代码之间的耦合关系,同时避免了在APP业务代码中重复设置容错函数,提升了APP业务代码的维护方便性和扩展性。

步骤S202,当任一设定数据格式的对象接收到数据时,判断该数据的格式是否与该任一设定数据格式匹配。

步骤S203,在判定该数据的格式与任一设定数据格式不匹配的情况下,通过调用设定函数集合中的任一设定数据格式对应的预设容错函数返回容错值。

可选地,步骤S203,包括:

在判定该数据的格式与任一设定数据格式不匹配的情况下,通过调用NSObject类中的任一设定数据格式对应的预设容错函数返回容错值。

例如:在判定该数据的格式与字符串格式不匹配的情况下,通过NSObject类中字符串格式对应的容错函数(LENGTH函数)返回设定值。

又如:在判定该数据的格式与数组格式不匹配的情况下,通过NSObject类中数组格式对应的容错函数(objectAtIndex函数和objectAtIndexedSubscript函数)返回设定值。

又如:在判定该数据的格式与字典格式不匹配的情况下,通过NSObject类中字典格式对应的容错函数(objectForKey函数和objectForKeyedSubscript函数)返回设定值。

通过在设定函数集合中预设每个设定数据格式对应的容错函数,判断设定数据格式的对象接收到数据的格式是否合法,并在设定数据格式的对象接收到数据的格式不合法的情况下,通过预设的容错函数对设定数据格式的对象返回设定值,以使APP能够正常运行,有效地避免设定数据格式的对象接收到错误格式的数据,导致的类型为unrecognized selector sent to instance的APP崩溃,有效地提高了APP的代码容错率,有效提高了APP的安全性和稳定性。

本发明第二实施例所述的一种数据容错方法,通过在设定函数集合中预设每个设定数据格式对应的容错函数,避免了每个设定数据格式接收到错误格式的数据,导致的类型为unrecognized selector sent to instance的崩溃;避免了容错函数与APP业务代码之间的耦合关系,同时避免了在APP业务代码中重复设置容错函数,提升了APP业务代码的维护方便性和扩展性;有效地提高了APP的代码容错率,有效避免了APP崩溃,有效提高了APP的安全性和稳定性。

本发明第三实施例,一种数据容错方法,如图3所示,包括以下具体步骤:

步骤S301,通过Runtime的API,在设定函数集合中设置每个设定数据格式对应的容错函数。

可选地,设定函数集合为NSObject类。

可选地,步骤S301,包括:

通过Runtime的API,在NSObject类中设置每个设定数据格式对应的容错函数。

其中,在Objective-C语言中,所有的类都有一个基类NSObject类。

在本实施例中,设定数据格式至少包括以下数据格式之一:字典格式,数组格式和字符串格式。

可选地,步骤S301,包括:

通过Runtime的API,在NSObject类中设置字符串格式对应的容错函数:LENGTH函数;

在NSObject类中设置字典格式对应的容错函数:objectForKey函数和objectForKeyedSubscript:函数;

在NSObject类中设置数组格式对应的容错函数:objectAtIndex函数和objectAtIndexedSubscript函数。

通过在NSObject类中设置每个设定数据格式对应的容错函数,避免了容错函数与APP业务代码之间的耦合关系,同时避免了在APP业务代码中重复设置容错函数,提升了APP业务代码的维护方便性和扩展性。

步骤S302,当任一设定数据格式的对象接收到数据时,判断该数据的格式是否与该任一设定数据格式匹配。

步骤S303,在判定该数据的格式与任一设定数据格式不匹配的情况下,通过调用设定函数集合中的任一设定数据格式对应的预设容错函数返回容错值。

可选地,步骤S303,包括:

在判定该数据的格式与任一设定数据格式不匹配的情况下,通过调用NSObject类中的任一设定数据格式对应的预设容错函数返回容错值。

可选地,通过调用设定函数集合中的任一设定数据格式对应的预设容错函数返回容错值的方式,包括:

该容错值包括零值;

在设定数据格式为字符串格式的情况下,通过调用设定函数集合中的字符串格式对应的预设容错函数返回零值。

可选地,通过调用设定函数集合中的任一设定数据格式对应的预设容错函数返回容错值的方式,包括:

该容错值包括空值;

在设定数据格式为字典格式的情况下,通过调用设定函数集合中的字典格式对应的预设容错函数返回空值。

可选地,通过调用设定函数集合中的任一设定数据格式对应的预设容错函数返回容错值的方式,包括:

该容错值包括空值;

在设定数据格式为数组格式的情况下,通过调用设定函数集合中的数组格式对应的预设容错函数返回空值。

例如:在判定该数据的格式与字符串格式不匹配的情况下,通过NSObject类中字符串格式对应的容错函数(LENGTH函数)返回零值。

又如:在判定该数据的格式与数组格式不匹配的情况下,通过NSObject类中数组格式对应的容错函数(objectAtIndex函数和objectAtIndexedSubscript函数)返回空值。

又如:在判定该数据的格式与字典格式不匹配的情况下,通过NSObject类中字典格式对应的容错函数(objectForKey函数和objectForKeyedSubscript函数)返回空值。

通过在设定函数集合中预设每个设定数据格式对应的容错函数,判断设定数据格式的对象接收到数据的格式是否合法,并在设定数据格式的对象接收到数据的格式不合法的情况下,通过预设的容错函数对设定数据格式的对象返回设定值,以使APP能够正常运行,有效地避免设定数据格式的对象接收到错误格式的数据,导致的类型为unrecognized selector sent to instance的APP崩溃,有效地提高了APP的代码容错率,有效提高了APP的安全性和稳定性。

本发明第三实施例所述的一种数据容错方法,通过在设定函数集合中预设每个设定数据格式对应的容错函数,避免了每个设定数据格式接收到错误格式的数据,导致的类型为unrecognized selector sent to instance的崩溃;避免了容错函数与APP业务代码之间的耦合关系,同时避免了在APP业务代码中重复设置容错函数,提升了APP业务代码的维护方便性和扩展性;有效地提高了APP的代码容错率,有效避免了APP崩溃,有效提高了APP的安全性和稳定性。

本发明第四实施例,一种数据容错设备,如图4所示,包括以下组成部分:

处理器501和存储器502。在本发明的一些实施例中,处理器501和存储器502可通过总线或者其它方式连接。

处理器501可以是通用处理器,例如中央处理器(Central Processing Unit,CPU),还可以是数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(英文:Application Specific Integrated Circuit,ASIC),或者是被配置成实施本发明实施例的一个或多个集成电路。其中,存储器502用于存储处理器501的可执行指令;

存储器502,用于存储程序代码,并将该程序代码传输给处理器501。存储器502可以包括易失性存储器(Volatile Memory),例如随机存取存储器(Random Access Memory,RAM);存储器502也可以包括非易失性存储器(Non-Volatile Memory),例如只读存储器(Read-Only Memory,ROM)、快闪存储器(Flash Memory)、硬盘(Hard Disk Drive,HDD)或固态硬盘(Solid-State Drive,SSD);存储器502还可以包括上述种类的存储器的组合。

其中,处理器501用于调用存储器502存储的程序代码管理代码,执行如下操作:

1)当任一设定数据格式的对象接收到数据时,判断该数据的格式是否与任一设定数据格式匹配。

在本实施例中,对设定数据格式不做具体限定,可以是字典格式,也可以是数组格式,也可以是字符串格式。

2)在判定该数据的格式与任一设定数据格式不匹配的情况下,通过调用设定函数集合中的任一设定数据格式对应的预设容错函数返回容错值。

可选地,设定函数集合为NSObject类。

可选地,在判定该数据的格式与任一设定数据格式不匹配的情况下,通过调用设定函数集合中的任一设定数据格式对应的预设容错函数返回容错值的方式,包括:

在判定该数据的格式与任一设定数据格式不匹配的情况下,通过调用NSObject类中的任一设定数据格式对应的预设容错函数返回容错值。

通过在NSObject类中预设每个设定数据格式对应的容错函数,避免了每个设定数据格式接收到错误格式的数据,导致的类型为unrecognized selector sent to instance的崩溃,有效地提高了APP的代码容错率,有效避免了APP崩溃,有效提高了APP的安全性和稳定性。

通过在设定函数集合中预设每个设定数据格式对应的容错函数,判断设定数据格式的对象接收到数据的格式是否合法,并在设定数据格式的对象接收到数据的格式不合法的情况下,通过预设的容错函数对设定数据格式的对象返回设定值,以使APP能够正常运行,有效地避免设定数据格式的对象接收到错误格式的数据,导致的类型为unrecognized selector sent to instance的APP崩溃,有效地提高了APP的代码容错率,有效提高了APP的安全性和稳定性。

本发明第四实施例所述的一种数据容错设备,通过在设定函数集合中预设每个设定数据格式对应的容错函数,避免了每个设定数据格式接收到错误格式的数据,导致的类型为unrecognized selector sent to instance的崩溃;避免了容错函数与APP业务代码之间的耦合关系,同时避免了在APP业务代码中重复设置容错函数,提升了APP业务代码的维护方便性和扩展性;有效地提高了APP的代码容错率,有效避免了APP崩溃,有效提高了APP的安全性和稳定性。

本发明第五实施例,一种数据容错设备,如图4所示,包括以下组成部分:

处理器501和存储器502。在本发明的一些实施例中,处理器501和存储器502可通过总线或者其它方式连接。

处理器501可以是通用处理器,例如中央处理器(Central Processing Unit,CPU),还可以是数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(英文:Application Specific Integrated Circuit,ASIC),或者是被配置成实施本发明实施例的一个或多个集成电路。其中,存储器502用于存储处理器501的可执行指令;

存储器502,用于存储程序代码,并将该程序代码传输给处理器501。存储器502可以包括易失性存储器(Volatile Memory),例如随机存取存储器(Random Access Memory,RAM);存储器502也可以包括非易失性存储器(Non-Volatile Memory),例如只读存储器(Read-Only Memory,ROM)、快闪存储器(Flash Memory)、硬盘(Hard Disk Drive,HDD)或固态硬盘(Solid-State Drive,SSD);存储器502还可以包括上述种类的存储器的组合。

其中,处理器501用于调用存储器502存储的程序代码管理代码,执行如下操作:

1)通过Runtime的API,在设定函数集合中设置每个设定数据格式对应的容错函数。

可选地,设定函数集合为NSObject类。

可选地,通过Runtime的API,在设定函数集合中设置每个设定数据格式对应的容错函数的方式,包括:

通过Runtime的API,在NSObject类中设置每个设定数据格式对应的容错函数。

其中,在Objective-C语言中,所有的类都有一个基类NSObject类。

在本实施例中,设定数据格式至少包括以下数据格式之一:字典格式,数组格式和字符串格式。

可选地,通过Runtime API,在NSObject类中设置每个设定数据格式对应的容错函数的方式,包括:

通过Runtime的API,在NSObject类中设置字符串格式对应的容错函数:LENGTH函数;

在NSObject类中设置字典格式对应的容错函数:objectForKey函数和objectForKeyedSubscript:函数;

在NSObject类中设置数组格式对应的容错函数:objectAtIndex函数和objectAtIndexedSubscript函数。

通过在NSObject类中设置每个设定数据格式对应的容错函数,避免了容错函数与APP业务代码之间的耦合关系,同时避免了在APP业务代码中重复设置容错函数,提升了APP业务代码的维护方便性和扩展性。

2)当任一设定数据格式的对象接收到数据时,判断该数据的格式是否与该任一设定数据格式匹配。

3)在判定该数据的格式与任一设定数据格式不匹配的情况下,通过调用设定函数集合中的任一设定数据格式对应的预设容错函数返回容错值。

可选地,在判定该数据的格式与任一设定数据格式不匹配的情况下,通过调用设定函数集合中的任一设定数据格式对应的预设容错函数返回容错值的方式,包括:

在判定该数据的格式与任一设定数据格式不匹配的情况下,通过调用NSObject类中的任一设定数据格式对应的预设容错函数返回容错值。

例如:在判定该数据的格式与字符串格式不匹配的情况下,通过NSObject类中字符串格式对应的容错函数(LENGTH函数)返回设定值。

又如:在判定该数据的格式与数组格式不匹配的情况下,通过NSObject类中数组格式对应的容错函数(objectAtIndex函数和objectAtIndexedSubscript函数)返回设定值。

又如:在判定该数据的格式与字典格式不匹配的情况下,通过NSObject类中字典格式对应的容错函数(objectForKey函数和objectForKeyedSubscript函数)返回设定值。

通过在设定函数集合中预设每个设定数据格式对应的容错函数,判断设定数据格式的对象接收到数据的格式是否合法,并在设定数据格式的对象接收到数据的格式不合法的情况下,通过预设的容错函数对设定数据格式的对象返回设定值,以使APP能够正常运行,有效地避免设定数据格式的对象接收到错误格式的数据,导致的类型为unrecognized selector sent to instance的APP崩溃,有效地提高了APP的代码容错率,有效提高了APP的安全性和稳定性。

本发明第五实施例所述的一种数据容错设备,通过在设定函数集合中预设每个设定数据格式对应的容错函数,避免了每个设定数据格式接收到错误格式的数据,导致的类型为unrecognized selector sent to instance的崩溃;避免了容错函数与APP业务代码之间的耦合关系,同时避免了在APP业务代码中重复设置容错函数,提升了APP业务代码的维护方便性和扩展性;有效地提高了APP的代码容错率,有效避免了APP崩溃,有效提高了APP的安全性和稳定性。

本发明第六实施例,一种数据容错设备,如图4所示,包括以下组成部分:

处理器501和存储器502。在本发明的一些实施例中,处理器501和存储器502可通过总线或者其它方式连接。

处理器501可以是通用处理器,例如中央处理器(Central Processing Unit,CPU),还可以是数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(英文:Application Specific Integrated Circuit,ASIC),或者是被配置成实施本发明实施例的一个或多个集成电路。其中,存储器502用于存储处理器501的可执行指令;

存储器502,用于存储程序代码,并将该程序代码传输给处理器501。存储器502可以包括易失性存储器(Volatile Memory),例如随机存取存储器(Random Access Memory,RAM);存储器502也可以包括非易失性存储器(Non-Volatile Memory),例如只读存储器(Read-Only Memory,ROM)、快闪存储器(Flash Memory)、硬盘(Hard Disk Drive,HDD)或固态硬盘(Solid-State Drive,SSD);存储器502还可以包括上述种类的存储器的组合。

其中,处理器501用于调用存储器502存储的程序代码管理代码,执行如下操作:

1)通过Runtime的API,在设定函数集合中设置每个设定数据格式对应的容错函数。

可选地,设定函数集合为NSObject类。

可选地,通过Runtime的API,在设定函数集合中设置每个设定数据格式对应的容错函数的方式,包括:

通过Runtime的API,在NSObject类中设置每个设定数据格式对应的容错函数。

其中,在Objective-C语言中,所有的类都有一个基类NSObject类。

在本实施例中,设定数据格式至少包括以下数据格式之一:字典格式,数组格式和字符串格式。

可选地,通过Runtime的API,在NSObject类中设置每个设定数据格式对应的容错函数的方式,包括:

通过Runtime API,在NSObject类中设置字符串格式对应的容错函数:LENGTH函数;

在NSObject类中设置字典格式对应的容错函数:objectForKey函数和objectForKeyedSubscript:函数;

在NSObject类中设置数组格式对应的容错函数:objectAtIndex函数和objectAtIndexedSubscript函数。

通过在NSObject类中设置每个设定数据格式对应的容错函数,避免了容错函数与APP业务代码之间的耦合关系,同时避免了在APP业务代码中重复设置容错函数,提升了APP业务代码的维护方便性和扩展性。

2)当任一设定数据格式的对象接收到数据时,判断该数据的格式是否与该任一设定数据格式匹配。

3)在判定该数据的格式与任一设定数据格式不匹配的情况下,通过调用设定函数集合中的任一设定数据格式对应的预设容错函数返回容错值。

可选地,在判定该数据的格式与任一设定数据格式不匹配的情况下,通过调用设定函数集合中的任一设定数据格式对应的预设容错函数返回容错值的方式,包括:

在判定该数据的格式与任一设定数据格式不匹配的情况下,通过调用NSObject类中的任一设定数据格式对应的预设容错函数返回容错值。

可选地,通过调用设定函数集合中的任一设定数据格式对应的预设容错函数返回容错值的方式,包括:

该容错值包括零值;

在设定数据格式为字符串格式的情况下,通过调用设定函数集合中的字符串格式对应的预设容错函数返回零值。

可选地,通过调用设定函数集合中的任一设定数据格式对应的预设容错函数返回容错值的方式,包括:

该容错值包括空值;

在设定数据格式为字典格式的情况下,通过调用设定函数集合中的字典格式对应的预设容错函数返回空值。

可选地,通过调用设定函数集合中的任一设定数据格式对应的预设容错函数返回容错值的方式,包括:

该容错值包括空值;

在设定数据格式为数组格式的情况下,通过调用设定函数集合中的数组格式对应的预设容错函数返回空值。

例如:在判定该数据的格式与字符串格式不匹配的情况下,通过NSObject类中字符串格式对应的容错函数(LENGTH函数)返回零值。

又如:在判定该数据的格式与数组格式不匹配的情况下,通过NSObject类中数组格式对应的容错函数(objectAtIndex函数和objectAtIndexedSubscript函数)返回空值。

又如:在判定该数据的格式与字典格式不匹配的情况下,通过NSObject类中字典格式对应的容错函数(objectForKey函数和objectForKeyedSubscript函数)返回空值。

通过在设定函数集合中预设每个设定数据格式对应的容错函数,判断设定数据格式的对象接收到数据的格式是否合法,并在设定数据格式的对象接收到数据的格式不合法的情况下,通过预设的容错函数对设定数据格式的对象返回设定值,以使APP能够正常运行,有效地避免设定数据格式的对象接收到错误格式的数据,导致的类型为unrecognized selector sent to instance的APP崩溃,有效地提高了APP的代码容错率,有效提高了APP的安全性和稳定性。

本发明第六实施例所述的一种数据容错设备,通过在设定函数集合中预设每个设定数据格式对应的容错函数,避免了每个设定数据格式接收到错误格式的数据,导致的类型为unrecognized selector sent to instance的崩溃;避免了容错函数与APP业务代码之间的耦合关系,同时避免了在APP业务代码中重复设置容错函数,提升了APP业务代码的维护方便性和扩展性;有效地提高了APP的代码容错率,有效避免了APP崩溃,有效提高了APP的安全性和稳定性。

本发明第七实施例,一种计算机可读存储介质。

计算机存储介质可以是RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、移动硬盘、CD-ROM或者本领域已知的任何其他形式的存储介质。

计算机可读存储介质存储有一个或者多个程序,该一个或者多个程序可被一个或者多个处理器执行,以实现本发明第一实施例至本发明第三实施例中任一实施例中部分或全部步骤。

通过在设定函数集合中预设每个设定数据格式对应的容错函数,判断设定数据格式的对象接收到数据的格式是否合法,并在设定数据格式的对象接收到数据的格式不合法的情况下,通过预设的容错函数对设定数据格式的对象返回设定值,以使APP能够正常运行,有效地避免设定数据格式的对象接收到错误格式的数据,导致的类型为unrecognized selector sent to instance的APP崩溃,有效地提高了APP的代码容错率,有效提高了APP的安全性和稳定性。

本发明第七实施例所述的计算机可读存储介质,存储有一个或者多个程序,该一个或者多个程序可被一个或者多个处理器执行,通过在设定函数集合中预设每个设定数据格式对应的容错函数,避免了每个设定数据格式接收到错误格式的数据,导致的类型为unrecognized selector sent to instance的崩溃;避免了容错函数与APP业务代码之间的耦合关系,同时避免了在APP业务代码中重复设置容错函数,提升了APP业务代码的维护方便性和扩展性;有效地提高了APP的代码容错率,有效避免了APP崩溃,有效提高了APP的安全性和稳定性。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。

上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。

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