接口定位方法、装置、计算机设备和存储介质制造方法及图纸

技术编号:24167675 阅读:30 留言:0更新日期:2020-05-16 01:57
本申请涉及一种接口定位方法、装置、计算机设备和存储介质,通过计算机设备获取当前开发过程中所需接口的接口功能,并根据接口功能从包括不同的原生接口的接口功能与接口方法名之间的对应关系的原生接口文档中,确定与接口功能匹配的目标接口方法名,然后基于目标接口方法名,在目标应用程序代码中查找目标原生接口。这样,在后续的H5开发过程中,可通过该原生接口文档,快速定位到目标应用程序代码中的目标原生接口;且,对目标应用程序代码中的原生接口的功能和方法名进行汇总整理,有利于H5开发过对原生接口的规划和优化,大大节省了开发过程中的对接成本,也节省了后续维护成本。

Interface positioning method, device, computer equipment and storage medium

【技术实现步骤摘要】
接口定位方法、装置、计算机设备和存储介质
本申请涉及计算机
,特别是涉及一种接口定位方法、装置、计算机设备和存储介质。
技术介绍
在安卓系统中,大部分安卓应用程序的开发,都需要与安卓系统的原生代码进行接口交互才可以完整运行。以安卓系统中的网页应用程序为例,网页应用程序开发时需要基于网格视图在H5上调用安卓系统的原生代码来实现。目前的安卓系统提供的H5与安卓原生代码之间接口交互的方式,是通过将安卓的原生注解@JavascriptInterface注释到指定的安卓代码的原生接口方法上,然后在H5上直接调用被@JavascriptInterface注解注释的接口方法名,即可实现H5与安卓原生代码之间的接口交互。然而,虽然通过原生注解可以实现H5和原生代码之间的接口交互,但在后期仍存在对已开发好的交互接口难以定位的问题。
技术实现思路
基于此,有必要针对上述技术问题,提供一种接口定位方法、装置、计算机设备和存储介质。第一方面,本申请实施例提供一种接口定位方法,该方法包括:获取当前开发过程中所需接口的接口功能;根据接口功能,从预设的原生接口文档中确定与接口功能匹配的目标接口方法名;原生接口文档包括不同的原生接口的接口功能与接口方法名之间的对应关系;基于目标接口方法名,在目标应用程序代码中查找目标原生接口。在其中一个实施例中,上述原生接口文档的获取方法,包括:获取目标应用程序代码中所有原生接口上的注释信息;注释信息包括原生接口的接口方法名以及原生接口的接口功能;根据所有注释信息,生成原生接口文档。在其中一个实施例中,在上述获取目标应用程序代码中所有原生接口上的注释信息之前,该方法还包括:获取每个原生接口上预设的注解的参数;参数至少包括原生接口的方法名参数、功能参数;基于参数获取方法名参数对应的接口方法名,以及功能参数对应的接口功能;基于方法名参数对应的接口方法名,以及功能参数对应的接口功能,生成注释信息。在其中一个实施例中,该方法还包括:获取各原生接口的类位置信息;其中,类位置信息用于表示原生接口在目标应用程序代码中的位置;则根据所有注释信息,生成原生接口文档,包括:根据注释信息和类位置信息,生成原生接口文档。在其中一个实施例中,生成原生接口文档,包括:通过预设的文件输出代码,生成Html文档。在其中一个实施例中,在生成原生接口文档之后,该方法还包括:保存原生接口文档至预设的文件存储路径中。在其中一个实施例中,该方法还包括:基于目标代码中所有原生接口的所有调用入口与总调用入口之间的关联关系,将预设的原生注解添加至总调用入口,以对目标代码中所有原生接口的调用入口进行统一;其中,原生注解用于表征所有原生接口可通过总调用入口被调用。在其中一个实施例中,在获取目标应用程序代码中所有原生接口上的注释信息之后,该方法还包括:根据注释信息,生成各原生接口的路由方法和初始化方法;路由方法应用在总调用入口的位置;初始化方法应用在目标代码初始化的位置。在其中一个实施例中,接口功能是基于接口的应用场景确定的,不同的应用场景对应不同的接口功能。第二方面,本申请实施例提供一种接口定位装置,装置包括:获取模块,用于获取当前开发过程中所需接口的接口功能;匹配模块,用于根据接口功能,从预设的原生接口文档中确定与接口功能匹配的目标接口方法名;原生接口文档包括不同的原生接口的接口功能与接口方法名之间的对应关系;定位模块,用于基于目标接口方法名,在目标应用程序代码中查找目标原生接口。第三方面,本申请实施例提供一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现上述第一方面实施例提供的任一项方法的步骤。第四方面,本申请实施例提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述第一方面实施例提供的任一项方法的步骤。本申请实施例提供的一种接口定位方法、装置、计算机设备和存储介质,通过计算机设备获取当前开发过程中所需接口的接口功能,并根据接口功能从包括不同的原生接口的接口功能与接口方法名之间的对应关系的原生接口文档中,确定与接口功能匹配的目标接口方法名,然后基于目标接口方法名,在目标应用程序代码中查找目标原生接口。该方法中,由于原生接口文档中包括了不同的原生接口的接口功能与接口方法名之间的对应关系,相当于通过原生接口文档对目标应用程序代码中的原生接口的功能和方法名进行了汇总整理,这样,在后续的H5开发过程中,可通过该原生接口文档,快速定位到目标应用程序代码中的目标原生接口;且,对目标应用程序代码中的原生接口的功能和方法名进行汇总整理,有利于H5开发过对原生接口的规划和优化,大大节省了开发过程中的对接成本,也节省了后续维护成本。附图说明图1为一个实施例提供的一种接口定位方法的应用环境图;图2为一个实施例提供的一种接口定位方法的流程示意图;图3为一个实施例提供的一种接口定位方法的流程示意图;图4为一个实施例提供的一种Html文档示意图;图5为一个实施例提供的一种接口定位方法的流程示意图;图6为一个实施例提供的一种注解处理器实现结构示意图;图7为一个实施例提供的一种注解处理器生成文档编译过程示意图;图8为一个实施例提供的一种接口定位装置的结构框图;图9为一个实施例提供的一种接口定位装置的结构框图。具体实施方式为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。安卓系统中的应用程序包括原生应用程序和网页应用程序,其中,在开发网页应用程序时,或多或少都会用到网格视图(以下称为webview),webview是一个实现H5与安卓原生代码互调的重要控件,通过webview可以方便简单的展示一些经常变动的H5界面,也比较易于维护。实际应用中,网页应用程序开发时,可以通过@JavascriptInterface注解注释到安卓原生接口方法上实现H5与安卓原生代码之间的接口交互,但仍然存在以下问题:第一,难以维护:对于交互接口而言,很多原生代码的交互接口是可以在H5的业务场景中使用多次的,例如,获取当前用户的基本信息、获取当前用户的登录状态等接口。然而,由于各个交互接口的开发人员的开发习惯的差异,往往不能留下有效的注释,这就导致下次碰到相似场景时,较难从已有的接口中找到可以复用的接口。第二,难以定位:对于一个大型的安卓应用程序来说,与H5交互的接口可能有上千个,而@JavascriptInterface注解只修饰方法(即只对交互接口的接口方法名进行注解),没有任何属性参数可以让开发人员进行标注,使得原生代码与H5对接的时候只本文档来自技高网...

【技术保护点】
1.一种接口定位方法,其特征在于,所述方法包括:/n获取当前开发过程中所需接口的接口功能;/n根据所述接口功能,从预设的原生接口文档中确定与所述接口功能匹配的目标接口方法名;所述原生接口文档包括不同的原生接口的接口功能与接口方法名之间的对应关系;/n基于所述目标接口方法名,在目标应用程序代码中查找目标原生接口。/n

【技术特征摘要】
1.一种接口定位方法,其特征在于,所述方法包括:
获取当前开发过程中所需接口的接口功能;
根据所述接口功能,从预设的原生接口文档中确定与所述接口功能匹配的目标接口方法名;所述原生接口文档包括不同的原生接口的接口功能与接口方法名之间的对应关系;
基于所述目标接口方法名,在目标应用程序代码中查找目标原生接口。


2.根据权利要求1所述的接口定位方法,其特征在于,所述原生接口文档的获取方法,包括:
获取所述目标应用程序代码中所有原生接口上的注释信息;所述注释信息包括所述原生接口的接口方法名以及所述原生接口的接口功能;
根据所有注释信息,生成所述原生接口文档。


3.根据权利要求2所述的接口定位方法,其特征在于,在获取所述目标应用程序代码中所有原生接口上的注释信息之前,所述方法还包括:
获取每个原生接口上预设的注解的参数;所述参数至少包括所述原生接口的方法名参数、功能参数;
基于所述参数获取所述方法名参数对应的接口方法名,以及所述功能参数对应的接口功能;
基于所述方法名参数对应的接口方法名,以及所述功能参数对应的接口功能,生成所述注释信息。


4.根据权利要求2所述的接口定位方法,其特征在于,所述方法还包括:
获取各所述原生接口的类位置信息;其中,所述类位置信息用于表示所述原生接口在所述目标应用程序代码中的位置;
则根据所有注释信息,生成所述原生接口文档,包括:
根据所述注释信息和所述类位置信息,生成所述原生接口文档。


5.根据权利要求2-4任一项所述的接口定位方法,其特征在于...

【专利技术属性】
技术研发人员:王斐航
申请(专利权)人:广州华多网络科技有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1