(19)中华人民共和国国家知识产权局
(12)发明专利申请
(10)申请公布号 (43)申请公布日 (21)申请号 202010790047.8
(22)申请日 2020.08.07
(71)申请人 咪咕文化科技有限公司
地址 100032 北京市西城区华远街11号
申请人 中国移动通信集团有限公司
(72)发明人 高吉 邹易展 刘小东 柴向前 
(74)专利代理机构 北京路浩知识产权代理有限
公司 11002
代理人 苗晓静
(51)Int.Cl.
G06F  9/54(2006.01)
(54)发明名称
原生应用调用JS的方法、装置、电子设备及
存储介质
(57)摘要
本发明实施例公开了一种原生应用调用JS
的方法、装置、电子设备及存储介质,方法包括:
包括:从预先配置好的参数对象中获取页面实施
模板和JS路径,页面实施模板包括JS路由地址和
JS接口封装层,JS接口封装层包括JS调用方法配
置信息;加载页面实施模板,并在加载到JS路由
地址时,从JS路径加载JS文件;在页面实施模板
和JS文件的加载成功后,根据JS调用方法配置信
息调用JS文件中相应的JS方法;将JS方法的执行
结果回调给原生应用。本发明的原生应用调用JS
的方法,提升原生应用调用JS的通用性,另外,在
JS文件没有发生变化的情况下,每次调用JS方法
时不需要频繁的加载JS文件,从而提升JS调用的
性能和稳定性。权利要求书2页  说明书7页  附图2页CN 112099965 A 2020.12.18
C N  112099965
A
1.一种原生应用调用JS的方法,其特征在于,包括:
从预先配置好的参数对象中获取页面实施模板和JS路径,其中,所述页面实施模板包括JS路由地址和JS接口封装层,所述JS接口封装层包括JS调用方法配置信息;
加载所述页面实施模板,并在加载到所述JS路由地址时,从所述JS路径加载JS文件;
在所述页面实施模板和所述JS文件的加载成功后,根据所述JS调用方法配置信息调用所述JS文件中相应的JS方法;
将所述JS方法的执行结果回调给所述原生应用。
2.根据权利要求1所述的原生应用调用JS的方法,其特征在于,还包括配置所述参数对象的步骤,具体包括:
获取所述JS路径;
配置JS路由地址和JS接口封装层,得到所述页面实施模板;
根据所述JS路径和所述页面实施模板得到所述参数对象。
3.根据权利要求2所述的原生应用调用JS的方法,其特征在于,所述配置JS接口封装层包括设置所述JS调用方法配置信息,其中,所述JS调用方法配置信息包括JS方法名称和传递参数。
4.根据权利要求1-3任一项所述的原生应用调用JS的方法,其特征在于,所述加载所述页面实施模板,并在加载到所述JS路由地址时,从所述JS路径加载JS文件,包括:构建WEBVIEW,通过所述WEBVIEW加载所述页面实施模板,并监听所述WEBVIEW是否加载到所述页面实施模板的JS路由地址;
如果加载到所述页面实施模板的JS路由地址,则从所述JS路径加载JS文件。
5.根据权利要求4所述的原生应用调用JS的方法,其特征在于,在所述页面实施模板和所述JS文件加载成功后,还包括:
监听所述JS路径中的JS文件是否发生变化;
如果是,则重新加载所述JS路径中的JS文件。
6.根据权利要求1所述的原生应用调用JS的方法,其特征在于,还包括:
监听所述页面实施模板和所述JS文件的加载状态,其中,所述页面实施模板和所述JS 文件的加载完成后,所述加载状态置为加载成功,否则,置为未加载成功。
7.根据权利要求1所述的原生应用调用JS的方法,其特征在于,所述将所述JS方法的执行结果回调给所述原生应用,包括:
监听所述JS方法的执行结果;
当监听到所述JS方法的执行结果后,将所述JS方法的执行结果回调给所述原生应用。
8.一种原生应用调用JS的装置,其特征在于,包括:
获取模块,用于从预先配置好的参数对象中获取页面实施模板和JS路径,其中,所述页面实施模板包括JS路由地址和JS接口封装层,所述JS接口封装层包括JS调用方法配置信息;
加载模块,用于加载所述页面实施模板,并在加载到所述JS路由地址时,从所述JS路径加载JS文件;
调用模块,用于在所述页面实施模板和所述JS文件的加载成功后,根据所述JS调用方法配置信息调用所述JS文件中相应的JS方法;
原生js和js的区别
回调模块,用于将所述JS方法的执行结果回调给所述原生应用。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现根据权利要求1至7任一所述的原生应用调用JS的方法。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现根据权利要求1至7任一所述的原生应用调用JS的方法。
原生应用调用JS的方法、装置、电子设备及存储介质
技术领域
[0001]本发明设计互联网技术领域,具体涉及一种原生应用调用JS的方法、装置、电子设备及存储介质。
背景技术
[0002]随着Android技术的发展,越来越多的应用开始趋向于原生应用客户端搭载JavaScript(JS)的方式去实现功能。JS与原生应用交互通常用在网页上,网页可通过JS与原生应用共享数据,原生应用需预先定义JS交互接口,调用WEBVIEW页面之前会将JS对象及其别名配置好。此后,若需要与原生应
用交互,就可以获取到当前JS接口对象的别名,然后通过该别名调用JS方法。存在以下缺点:原生应用不能直接调用JS,对于每一次的调用需要加载一次JS文件,频繁加载影响调用的稳定性和性能。
发明内容
[0003]基于现有技术中存在的问题,本发明实施例中提出一种原生应用调用JS的方法、装置、电子设备及存储介质。
[0004]第一方面,本发明实施例中提供了一种原生应用调用JS的方法,包括:
[0005]从预先配置好的参数对象中获取页面实施模板和JS路径,其中,所述页面实施模板包括JS路由地址和JS接口封装层,所述JS接口封装层包括JS调用方法配置信息;[0006]加载所述页面实施模板,并在加载到所述JS路由地址时,从所述JS路径加载JS文件;
[0007]在所述页面实施模板和所述JS文件的加载成功后,根据所述JS调用方法配置信息调用所述JS文件中相应的JS方法;
[0008]将所述JS方法的执行结果回调给所述原生应用。
[0009]进一步地,还包括配置所述参数对象的步骤,具体包括:
[0010]获取所述JS路径;
[0011]配置JS路由地址和JS接口封装层,得到所述页面实施模板;
[0012]根据所述JS路径和所述页面实施模板得到所述参数对象。
[0013]进一步地,所述配置JS接口封装层包括设置所述JS调用方法配置信息,其中,所述JS调用方法配置信息包括JS方法名称和传递参数。
[0014]进一步地,所述加载所述页面实施模板,并在加载到所述JS路由地址时,从所述JS 路径加载JS文件,包括:
[0015]构建WEBVIEW,通过所述WEBVIEW加载所述页面实施模板,并监听所述WEBVIEW是否加载到所述页面实施模板的JS路由地址;
[0016]如果加载到所述页面实施模板的JS路由地址,则从所述JS路径加载JS文件。[0017]进一步地,在所述页面实施模板和所述JS文件加载成功后,还包括:
[0018]监听所述JS路径中的JS文件是否发生变化;
[0019]如果是,则重新加载所述JS路径中的JS文件。
[0020]进一步地,还包括:
[0021]监听所述页面实施模板和所述JS文件的加载状态,其中,所述页面实施模板和所述JS文件的加载完成后,所述加载状态置为加载成功,否则,置为未加载成功。
[0022]进一步地,所述将所述JS方法的执行结果回调给所述原生应用,包括:
[0023]监听所述JS方法的执行结果;
[0024]当监听到所述JS方法的执行结果后,将所述JS方法的执行结果回调给所述原生应用。
[0025]第二方面,本发明实施例中还提供了一种原生应用调用JS的装置,包括:[0026]获取模块,用于从预先配置好的参数对象中获取页面实施模板和JS路径,其中,所述页面实施模板包括JS路由地址和JS接口封装层,所述JS接口封装层包括JS调用方法配置信息;
[0027]加载模块,用于加载所述页面实施模板,并在加载到所述JS路由地址时,从所述JS 路径加载JS文件;
[0028]调用模块,用于在所述页面实施模板和所述JS文件的加载成功后,根据所述JS调用方法配置信息调用所述JS文件中相应的JS方法;
[0029]回调模块,用于将所述JS方法的执行结果回调给所述原生应用。
[0030]第三方面,本发明实施例中还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面所述的原生应用调用JS的方法。
[0031]第四方面,本发明实施例中还提供了一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如第一方面所述的原生应用调用JS的方法。
[0032]由上述技术方案可知,本发明实施例中提供的原生应用调用JS的方法、装置、电子设备及存储介质,可以根据需要调用的目标JS文件中的目标JS方法,对参数对象JS接口封装层进行适当的配置,从而,原生应用便可以调用到目标JS文件中的目标JS方法,提升原生应用调用JS的通用性,另外,在JS文件没有发生变化的情况下,每次调用JS方法时不需要频繁的加载JS文件,从而提升JS调用的性能和稳定性。
附图说明
[0033]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0034]图1是本发明一个实施例中提供的原生应用调用JS的方法的流程图;
[0035]图2是本发明另一个实施例中提供的原生应用调用JS的装置的结构框图;[0036]图3是本发明一个实施例中提供的电子设备的结构示意图。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。