[发明专利]基于JSBridge进行通信的方法、装置及存储介质有效
申请号: | 201910797901.0 | 申请日: | 2019-08-27 |
公开(公告)号: | CN110502708B | 公开(公告)日: | 2020-10-30 |
发明(设计)人: | 李振华;孙阳;宋云路;苗威;蒋帅 | 申请(专利权)人: | 北京达佳互联信息技术有限公司 |
主分类号: | G06F16/955 | 分类号: | G06F16/955;G06F16/958 |
代理公司: | 北京三高永信知识产权代理有限责任公司 11138 | 代理人: | 祝亚男 |
地址: | 100085 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 jsbridge 进行 通信 方法 装置 存储 介质 | ||
本公开是关于一种基于JSBridge进行通信的方法、装置及存储介质,属于计算机技术领域。方法包括:通过原生层加载网页的过程中,获取网页的加载进度,当加载进度达到预设阈值时,加载包含用于生成JSBridge的预设方法的Javascript文件,当Javascript文件加载成功时,确定已经通过调用该预设方法创建JSBridge,则原生层与Web层能够基于创建的JSBridge进行通信。本公开能够提前创建JSBridge,保证了原生层与Web层能够提前基于创建的JSBridge进行通信,提高了操作效率。并且,通过加载Javascript文件的方式来创建JSBridge,降低了实现成本。
技术领域
本公开涉及计算机技术领域,尤其涉及一种基于JSBridge进行通信的方法、装置及存储介质。
背景技术
混合模式的应用客户端兼具原生功能和网页功能,目前已得到了广泛应用。混合模式的应用客户端包括原生层和Web(万维网)层,由于Web层的权限受到限制,需要与原生层进行通信,才能委托原生层来实现某些功能。因此原生层与Web层之间需要创建一个JSBridge(桥梁),基于JSBridge实现两者的通信。
Web层所提供的第一网页中添加不可见的iframe(内联框架)元素,在iframe元素中设置第二网页的URL(Uniform Resource Locator,统一资源定位符),URL中包含该第二网页的地址信息。当用户点击第一网页中的该URL时,需要加载该URL对应的第二网页,如果该URL满足原生层预先设置的规则,原生层会拦截该URL,对该地址信息进行解析,得到地址信息中包含的参数信息,再根据该参数信息进行后续处理,实现了原生层与Web层之间的通信。
但是,上述方案需要在添加iframe元素且在iframe元素中设置相应的URL之后才能实现,实现成本较高,操作效率低下。
发明内容
本公开提供了一种基于JSBridge进行通信的方法、装置及存储介质,能够克服相关技术中存在的实现成本较高,操作效率低下的问题。
根据本公开实施例的第一方面,提供一种基于JSBridge进行通信的方法,所述方法包括:
通过原生层加载网页的过程中,获取所述网页的加载进度;
当所述加载进度达到预设阈值时加载脚本Javascript文件,所述Javascript文件中包含用于生成JSBridge的预设方法;
当所述Javascript文件加载成功时,确定已创建JSBridge;
所述原生层与Web层基于所述JSBridge进行通信。
在一种可能实现方式中,所述当所述加载进度达到预设阈值时加载脚本Javascript文件,包括:
当所述加载进度达到所述预设阈值时启动指定线程,通过所述指定线程加载所述Javascript文件;
所述方法还包括:当所述Javascript文件加载成功时,停止所述指定线程。
在另一种可能实现方式中,所述原生层与Web层基于所述JSBridge进行通信之前,所述方法还包括:
所述Web层调用所述JSBridge向所述原生层发送Ready事件,如果所述Ready事件发送成功,则确定所述JSBridge创建成功。
在另一种可能实现方式中,所述原生层与Web层基于所述JSBridge进行通信,包括:
所述Web层基于所述JSBridge向所述预设方法传入参数信息,调用所述预设方法;
所述原生层中的所述预设方法接受所述Web层的调用,根据所述参数信息进行处理,得到处理结果;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京达佳互联信息技术有限公司,未经北京达佳互联信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910797901.0/2.html,转载请声明来源钻瓜专利网。