[发明专利]隐藏API的反射调用方法、装置、计算机设备及存储介质在审
申请号: | 201910049473.3 | 申请日: | 2019-01-18 |
公开(公告)号: | CN109901937A | 公开(公告)日: | 2019-06-18 |
发明(设计)人: | 彭东远 | 申请(专利权)人: | 平安普惠企业管理有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54;G06F9/445 |
代理公司: | 深圳市隆天联鼎知识产权代理有限公司 44232 | 代理人: | 刘抗美;胡明 |
地址: | 518000 广东省深圳市*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 调用 反射 调用信息 计算机设备 加载器 计算机可读存储介质 存储介质 开发效率 运行环境 非系统 有效地 加载 研发 检测 优化 开发 | ||
本发明公开了一种隐藏API的反射调用方法、装置、计算机设备及计算机可读存储介质,所述隐藏API的反射调用方法包括:获取调用信息,从所述调用信息中提取目标类,所述目标类用于反射调用指定隐藏API;检测所述目标类在运行环境中被加载时的加载器级别;如果所述目标类的加载器级别为非系统级别,则在所述调用信息中为所述目标类进行加载器级别的修改;基于完成修改的调用信息中目标类,进行指定隐藏API的反射调用。采用本发明所提供的隐藏API的反射调用方法、装置、计算机设备及计算机可读存储介质解决了现有技术中隐藏API的反射调用过于复杂的问题,提高了开发人员的开发效率,有效地优化了研发过程。
技术领域
本发明涉及计算机技术领域,尤其涉及一种隐藏API的反射调用方法、装置、计算机设备及计算机可读存储介质。
背景技术
随着计算机技术的发展,在进行安卓Android系统开发时,越来越多的API(Application Program Interface,应用程序接口)可供开发人员直接调用,为开发人员提供了便利,进而大大提高了开发人员的开发效率。
然而,可能是API尚存在不稳定因素,或者是API提供者并不想对外开放API,故而,在Android源代码中仍存在部分隐藏API是无法供开发人员直接调用的。
为此,提出了一种反射调用隐藏API的方法,但是,对于开发人员而言,该种反射调用方法相对于直接调用方法,需要额外编写隐藏API的空代码,过于复杂。
发明内容
为了解决相关技术中存在的隐藏API的反射调用过于复杂的问题,本发明各实施例提供一种隐藏API的反射调用方法、装置、计算机设备及计算机可读存储介质。
其中,本发明所采用的技术方案为:
第一方面,一种隐藏API的反射调用方法,包括:获取调用信息,从所述调用信息中提取目标类,所述目标类用于反射调用指定隐藏API;检测所述目标类在运行环境中被加载时的加载器级别;如果所述目标类的加载器级别为非系统级别,则在所述调用信息中为所述目标类进行加载器级别的修改;基于完成修改的调用信息中所述目标类,进行指定隐藏API的反射调用。
第二方面,一种隐藏API的反射调用装置,包括:目标类提取模块,用于获取调用信息,从所述调用信息中提取目标类,所述目标类用于反射调用指定隐藏API;加载器检测模块,用于检测所述目标类在运行环境中被加载时的加载器级别;信息修改模块,用于如果所述目标类的加载器级别为非系统级别,则在所述调用信息中为所述目标类进行加载器级别的修改;反射调用模块,用于基于完成修改的调用信息中所述目标类,进行指定隐藏API的反射调用。
在一示例性实施例中,所述装置还包括:第二反射调用模块,用于如果所述目标类的加载器级别为系统级别,则基于未修改的调用信息中所述目标类,进行指定隐藏API的反射调用。
在一示例性实施例中,反射调用模块,包括:方法查找单元,用于根据所述指定隐藏API的接口标识,从所述目标类中查找得到被赋值占用的目标方法;第一参数获取单元,用于根据所述目标方法获取对应的目标参数;反射调用单元,用于通过所述目标方法及其对应的目标参数,反射调用所述指定隐藏API。
在一示例性实施例中,所述加载器检测模块包括:栈回溯单元,用于根据所述目标类回溯调用栈;加载器确定单元,用于通过所述调用栈的回溯,获取所述目标类所描述源代码被调用时的调用结果;加载器级别判断单元,用于根据所述调用结果确定所述目标类在所述运行环境中被加载时的加载器,以判断所述目标类的加载器级别是否为系统级别。
在一示例性实施例中,所述装置还包括:目标类添加模块,用于如果所述调用信息中未提取到所述目标类,则在所述调用信息中添加所述目标类。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于平安普惠企业管理有限公司,未经平安普惠企业管理有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910049473.3/2.html,转载请声明来源钻瓜专利网。