[发明专利]一种应用程序的运行处理方法、装置、设备及存储介质在审
申请号: | 202211361042.9 | 申请日: | 2022-11-02 |
公开(公告)号: | CN115878086A | 公开(公告)日: | 2023-03-31 |
发明(设计)人: | 邹小威;胡娟;戴建科 | 申请(专利权)人: | 中国农业银行股份有限公司 |
主分类号: | G06F8/20 | 分类号: | G06F8/20;G06F8/70;G06F9/445 |
代理公司: | 北京品源专利代理有限公司 11332 | 代理人: | 蔡舒野 |
地址: | 100005 北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 应用程序 运行 处理 方法 装置 设备 存储 介质 | ||
本发明公开了一种应用程序的运行处理方法、装置、设备及存储介质。方法包括:响应于检测到的处理请求,确定所述处理请求关联的请求调用方法标识;执行所述处理请求,生成执行结果并展示,其中,所述处理请求的执行过程基于所述请求调用方法标识对应的的安全方法标识确定。通过在执行处理请求时将处理请求中调用方法的执行过程替换为安全方法的执行过程,使得无需在程序编译阶段进行崩溃保护处理,就能够实现程序运行的崩溃保护,使得程序的防崩溃处理更加便捷。
技术领域
本发明涉及计算机技术领域,尤其涉及一种应用程序的运行处理方法、装置、设备及存储介质。
背景技术
目前,大多数主流iOS应用采用objective-c语言开发,由于其动态特性,在编译时期并不会检查对象的类型,例如可以把一个字典对象赋值给一个字符串对象,但是其并不具备字符串的功能,因此,iOS应用在上线后,由于后台接口数据发生变动时,如果没有事先做好类型检查,往往会导致抛出异常甚至崩溃发生。
当前iOS应用的防崩溃主流技术一种是在编码阶段,对可能发生的崩溃情况进行防御性编程,常见的崩溃原因包括传参数异常、数组越界、方法未被实现等等,在编写代码阶段,进行校验以避免崩溃。另一种通过安全接口的方式实现,具体通过为可能产生崩溃的方法,封装一个安全的、充分判断类型的方法,通过开发过程进行调用方法的约定。例如,为NSMutableArray类型的addObject方法封装一层safe_AddObject,在该方法中,对调用对象的类型、长度等进行充分校验,在开发过程中,约定统一调用safe_AddObject方法而不是addObject方法,从而避免了在调用过程中,因为对象过长、对象为空等情况导致程序抛出异常。
在实现本发明的过程中,发现现有技术中至少存在以下技术问题:安全接口方案对于已知、少量的崩溃类型进行补偿式封装,需要对现有项目进行排查,替换调所有“不安全”接口的调用,需要对项目进行较大的侵入性改动,对于未知的或者即将开发的、新的调用不能保证其安全性,并且对于项目开发人员来说,需要制定统一的规范,在大型工程中较难实现其统一性。
发明内容
本发明提供了一种应用程序的运行处理方法、装置、设备及存储介质,以解决应用防崩溃处理在编译阶段进行难以实现的技术问题。
根据本发明的一方面,提供了一种应用程序的运行处理方法,包括:
响应于检测到的处理请求,确定所述处理请求关联的请求调用方法标识;
执行所述处理请求,生成执行结果并展示,其中,所述处理请求的执行过程基于所述请求调用方法标识对应的的安全方法标识确定。
可选的,在上述方案的基础上,在响应于检测到的处理请求之前,还包括:
应用程序启动时,确定至少一个待交换方法;
基于预先设置的方法交换关系确定待交换方法标识对应的安全方法标识,通过方法交换将所述待交换方法标识的执行过程替换为所述安全方法标识的执行过程。
可选的,在上述方案的基础上,所述确定至少一个待交换方法,包括:
基于预先设置的交换方法库确定所述待交换方法。
可选的,在上述方案的基础上,所述交换方法库的设置,包括:
获取历史程序运行数据,基于所述历史程序运行数据确定所述待交换方法标识;
确定所述待交换方法标识对应的安全方法标识,以及所述安全方法标识的执行过程,并进行存储以构建所述交换方法库。
可选的,在上述方案的基础上,所述基于所述历史程序运行数据确定所述待交换方法标识,包括:
确定所述历史程序运行数据中的运行崩溃信息,基于所述运行崩溃信息关联的调用方法确定所述待交换方法标识。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国农业银行股份有限公司,未经中国农业银行股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211361042.9/2.html,转载请声明来源钻瓜专利网。