一种JS模块与Java模块之间的通信方法及装置制造方法及图纸

技术编号:18575708 阅读:33 留言:0更新日期:2018-08-01 10:42
本发明专利技术实施例公开了一种JS模块与Java模块之间的通信方法及装置。其中,该方法包括:应用在需要通过JS模块调用Java接口实现某一功能时,JS模块与Java模块之间的通信装置可以通过JS模块的JavaScript引擎中预先注入的Java对象,从Java模块中查找目标Java对象,当查找到目标Java对象时,确定Java模块中存在与该目标Java对象对应的目标方法,并通过JavaScript引擎调用目标方法对目标Java对象执行目标方法对应的操作。通过本发明专利技术实施例,JS模块与Java模块之间不需要通过网络视图就能实现通信,从而能减少终端的内存占用,提高通信效率,提高应用的运行性能。

Communication method and device between JS module and Java module

The embodiment of the invention discloses a communication method and a device between the JS module and the Java module. Among them, the method includes: when the application is needed to implement a function by calling the Java interface through the JS module, the communication device between the JS module and the Java module can find the target Java object from the Java module through the Java object that is pre injected in the JavaScript engine of the JS module, and determines the Java module when the target Java object is found. There is a target method that corresponds to the target Java object, and the target method is invoked by the JavaScript engine to perform the operation of the target method for the target Java object. Through the embodiment of the invention, the communication between the JS module and the Java module is not needed through the network view, which can reduce the memory occupancy of the terminal, improve the communication efficiency and improve the performance of the application.

【技术实现步骤摘要】
一种JS模块与Java模块之间的通信方法及装置
本专利技术涉及计算机
,具体涉及一种JS模块与Java模块之间的通信方法及装置。
技术介绍
随着终端技术的不断发展,智能手机、平板电脑等终端可以安装越来越多的应用,以丰富人们的生活,如今已成为人们工作和生活中不可缺少的电子设备。目前的安卓设备上,应用中的JavaScript与Java的通信需要通过网络视图WebView来实现。但是,WebView主要功能是用来显示页面的,在某些不需要打开页面的场景中,如果通过WebView实现JavaScript与Java之间的通信,会增加终端内存的占用。同时,在页面比较繁忙的情况下,采用这种方式会降低JavaScript与Java的通信效率,从而降低应用的运行性能。
技术实现思路
本专利技术实施例公开了一种JS模块与Java模块之间的通信方法及装置,能够减少终端内存的占用,提高JavaScript与Java之间的通信效率,从而提高应用的运行性能。第一方面,本专利技术实施例公开了一种JS模块与Java模块之间的通信方法,该方法可以包括:通过JS模块的JavaScript引擎中预先注入的Java对象,从本文档来自技高网...

【技术保护点】
1.一种JS模块与Java模块之间的通信方法,其特征在于,所述方法包括:通过JS模块的JavaScript引擎中预先注入的Java对象,从Java模块中查找目标Java对象;当查找到所述目标Java对象时,确定所述Java模块中存在与所述目标Java对象对应的目标方法;通过所述JavaScript引擎调用所述目标方法对所述目标Java对象执行所述目标方法对应的操作。

【技术特征摘要】
1.一种JS模块与Java模块之间的通信方法,其特征在于,所述方法包括:通过JS模块的JavaScript引擎中预先注入的Java对象,从Java模块中查找目标Java对象;当查找到所述目标Java对象时,确定所述Java模块中存在与所述目标Java对象对应的目标方法;通过所述JavaScript引擎调用所述目标方法对所述目标Java对象执行所述目标方法对应的操作。2.根据权利要求1所述的方法,其特征在于,所述通过JS模块的JavaScript引擎中预先注入的Java对象,从Java模块中查找目标Java对象之前,所述方法还包括:检测当前的运行环境,确定所述当前的运行环境不为页面运行环境,并执行所述通过JS模块的JavaScript引擎中预先注入的Java对象,从Java模块中查找目标Java对象的操作。3.根据权利要求2所述的方法,其特征在于,所述方法还包括:确定所述当前的运行环境为所述页面运行环境,并获取所述页面运行环境中页面的运行状态;当所述页面的运行状态为预设状态时,通过网络视图中预先注入的Java对象,从Java模块中查找目标Java对象;当查找到所述目标Java对象时,确定所述Java模块中存在与所述目标Java对象对应的目标方法;通过所述网络视图调用所述目标方法对所述目标Java对象执行所述目标方法对应的操作。4.根据权利要求1~3任一项所述的方法,其特征在于,所述通过JS模块的JavaScript引擎中预先注入的Java对象,从Java模块中查找目标Java对象之前,所述方法还包括:接收第三方应用的Java对象注入请求,并根据所述注入请求将所述Java对象注入到JavaScript引擎中。5.根据权利要求1~3任一项所述的方法,其特征在于,所述通过JS模块的JavaScript引擎中预先注入的Java对象,从Java模块中查找目标Java对象,包括:当接收到第三方应用的调用请求时,通过JS模块的JavaScript引擎中预先注入的Java对象,从Java模块中查找与所述调用请求对应的目标Java对象;所述方法还包括:当查找到所述目标Java对象时,确定所述Java模块中不存在与所述目标Java对象对应的目标方法,并向所述第三方应用返回调用错误的指示。6.一种JS模块与Java模块之间的通信...

【专利技术属性】
技术研发人员:王勇
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:广东,44

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

1