买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!
申请/专利权人:北京奇艺世纪科技有限公司
摘要:本申请实施例提供了函数调用方法、装置、电子设备及存储介质,通过消息转发机制来转发未实现函数的调用请求,利用forwardingTargetForSelector将函数的调用消息转发给异常处理类,利用异常处理类动态添加函数,从而实现函数的调用,能够吸收原调用类未定义的函数调用,减少调用函数时崩溃的情况。利用Objective‑C现有的消息转发机制流程,对现有代码做改动小,APP研发人员无感知,能够在APP研发人员没有处理的情况下,自动捕获函数调用过程中的异常,减少程序崩溃。不仅能够处理自定义类产生的相关异常崩溃,还能够处理系统类产生的相关崩溃,处理范围广。
主权项:1.一种函数调用方法,其特征在于,所述方法包括:当基于Objective-C语言的对象调用指定函数时,查询所述对象及基类的函数缓存及函数列表中是否存在所述指定函数;若所述对象及基类的函数缓存及函数列表中未存在所述指定函数,则确定所述对象及基类中未实现所述指定函数;若所述对象及基类中未实现所述指定函数,进入消息转发机制流程;在进入消息转发机制流程后,利用resolveInstanceMethod转发所述指定函数的调用消息;若所述resolveInstanceMethod返回表示所述指定函数调用失败的消息,判断是否通过所述对象的forwardingTargetForSelector转发了所述指定函数的调用消息;若未通过所述对象的forwardingTargetForSelector转发所述指定函数的调用消息,添加NSObject的类别,并在所述NSObject的类别中覆写forwardingTargetForSelector,利用所述NSObject类中的forwardingTargetForSelector判断异常处理类是否已经建立;若所述异常处理类未建立,建立所述异常处理类;利用所述NSObject类中的forwardingTargetForSelector将所述指定函数的调用消息转发给异常处理类,以使所述异常处理类在接收到所述指定函数的调用消息后,通过内存管理runtime相关的应用程序接口API判断所述异常处理类中是否实现了所述指定函数;在所述异常处理类中未实现所述指定函数的情况下,利用所述异常处理类通过runtime的class_addMethodAPI添加所述指定函数;利用所述异常处理类调用所述指定函数。
全文数据:
权利要求:
百度查询: 北京奇艺世纪科技有限公司 函数调用方法、装置、电子设备及存储介质
免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。