h5拦截Android返回事件的方法、装置及电子设备制造方法及图纸

技术编号:29583416 阅读:11 留言:0更新日期:2021-08-06 19:41
一种h5拦截Android返回事件的方法及装置、电子设备及可读介质,所述h5拦截Android返回事件的方法包括:响应于返回事件,Android端向h5页面调用事件拦截方法;h5页面查找所述事件拦截方法,并在查找到所述事件拦截方法时,向Android端返回拦截状态信息;h5页面将返回事件进行分发并判断返回事件是否被消费;若返回事件未被消费,h5页面调用Android端的回退方法。本发明专利技术Android端只需保存h5页面的拦截状态信息,无需保存拦截方法,避免了h5页面切换后,Android端无法删除当前保存的拦截方法,导致应用无法继续使用,提高了应用容错性和可靠性。

【技术实现步骤摘要】
h5拦截Android返回事件的方法、装置及电子设备
本专利技术属于计算机
,特别适用于客户端与前端混合开发的技术,更具体地涉及一种h5拦截Android返回事件的方法、装置、电子设备及计算机可读介质。
技术介绍
目前,在采用混合构架开发的应用的开发中,通过Android端内置webview组件来承载第五代超文本标记语言(h5,HyperTextMarkupLanguage5.0)编程的页面,进而实现提高页面所展示资源的丰富性。为了支持页面拦截功能,如图1所示,h5页面先将返回事件的拦截方法名称传递给Android端,Android端响应返回事件时,调用h5页面传递的拦截方法,h5页面响应事件,完成拦截。这种方式中,某些情况下,h5页面在当前webview容器中已不展示,而Android端仍然保存有该页面传递的拦截方法,会导致当前应用无法正常回退,甚至报错。为了解决这个问题,需要再次开发配套的卸载程序去卸载这些被删除的h5页面的拦截方法,在某些情况下,开发的卸载程序只能优化,并不能完全卸载已经被删除的h5页面的拦截方法。导致应用失去容错性和可靠性,无法继续使用,甚至正常需求停止的问题。显然,开发卸载程序会消耗开发人员大量时间和精力,造成效率低下的问题。
技术实现思路
有鉴于此,本专利技术旨在提出一种h5拦截Android返回事件的方法及装置、电子设备及计算机可读介质,以期至少部分地解决上述技术问题中的至少之一。为解决上述技术问题,本专利技术的第一方面提出了一种h5拦截Android返回事件的方法,包括如下步骤:响应于返回事件,Android端向h5页面调用事件拦截方法;h5页面查找所述事件拦截方法,并在查找到所述事件拦截方法时,向Android端返回拦截状态信息;h5页面将返回事件进行分发并判断返回事件是否被消费;若返回事件未被消费,h5页面调用Android端的回退方法。本专利技术第二方面提出一种h5拦截Android返回事件的装置,所述装置包括:查找模块,用于响应Android端调用事件拦截方法,查找所述事件拦截方法,并在查找到所述事件拦截方法时,向Android端返回拦截状态信息;分发模块,用于将返回事件进行分发并判断返回事件是否被消费;调用模块,用于若返回事件未被消费,调用Android端的回退方法。本专利技术的第三方面还提出了一种电子设备,包括处理器和存储器,所述存储器用于存储计算机可执行程序,当所述计算机程序被所述处理器执行时,所述处理器执行所述的方法。本专利技术的第四方面还提出了一种计算机可读介质,存储有计算机可执行程序,所述计算机可执行程序被执行时,实现所述的方法。基于上述技术方案可知,本专利技术的h5拦截Android返回事件的方法及装置、电子设备及计算机可读介质相对于现有技术至少具有如下有益效果之一:本专利技术通过Android端向h5页面调用事件拦截方法;h5页面在查找到所述事件拦截方法时,向Android端返回拦截状态信息;若h5页面未消费该返回事件,h5页面调用Android端的回退方法,结束对返回事件的拦截。本专利技术Android端只需保存h5页面的拦截状态信息,无需保存拦截方法,一方面,无需再次开发卸载程序去卸载已删除页面的拦截方法,减小了开发人员的重复劳动,提高开发效率。另一方面,提高了应用容错性和可靠性,避免了h5页面切换后,Android端无法完全删除当前保存的拦截方法,导致应用无法继续使用的问题。本专利技术根据事件类型收集和分发公共事件,根据根据公共事件分发结果执行所述公共事件。从而将Android端传递过来的公共事件分为不同类别去执行,提高了事件执行的效率。附图说明图1是本现有技术中h5拦截Android返回事件的示意图;图2是本专利技术h5拦截Android返回事件的方法的流程示意图;图3是本发h5页面将返回事件进行分发并判断返回事件是否被消费的流程示意图;图4是本专利技术的h5拦截Android返回事件的装置的结构示意图;图5是本专利技术的一个实施例的电子设备的结构示意图;图6是本专利技术的一个实施例的计算机可读记录介质的示意图。具体实施方式在对于具体实施例的介绍过程中,对结构、性能、效果或者其他特征的细节描述是为了使本领域的技术人员对实施例能够充分理解。但是,并不排除本领域技术人员可以在特定情况下,以不含有上述结构、性能、效果或者其他特征的技术方案来实施本专利技术。附图中的流程图仅是一种示例性的流程演示,不代表本专利技术的方案中必须包括流程图中的所有的内容、操作和步骤,也不代表必须按照图中所显示的顺序执行。例如,流程图中有的操作/步骤可以分解,有的操作/步骤可以合并或部分合并,等等,在不脱离本专利技术的专利技术主旨的情况下,流程图中显示的执行顺序可以根据实际情况改变。附图中的框图一般表示的是功能实体,并不一定必然与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理单元装置和/或微控制器装置中实现这些功能实体。各附图中相同的附图标记表示相同或类似的元件、组件或部分,因而下文中可能省略了对相同或类似的元件、组件或部分的重复描述。还应理解,虽然本文中可能使用第一、第二、第三等表示编号的定语来描述各种器件、元件、组件或部分,但是这些器件、元件、组件或部分不应受这些定语的限制。也就是说,这些定语仅是用来将一者与另一者区分。例如,第一器件亦可称为第二器件,但不偏离本专利技术实质的技术方案。此外,术语“和/或”、“及/或”是指包括所列出项目中的任一个或多个的所有组合。为解决h5页面删除后,Android端仍然保留有该页面传递的拦截方法,需要再开发配套的卸载程序去卸载这些被删除的h5页面的拦截方法,消耗开发人员大量时间和精力,造成效率低下的技术问题,本专利技术提出了一种h5拦截Android返回事件的方法,包括如下步骤:响应于返回事件,Android端向h5页面调用事件拦截方法;h5页面查找所述事件拦截方法,并在查找到所述事件拦截方法时,向Android端返回拦截状态信息;h5页面将返回事件进行分发并判断返回事件是否被消费;若返回事件未被消费,h5页面调用Android端的回退方法。根据本专利技术一种优选的实施方式,所述h5页面逐级将返回事件进行分发并判断返回事件是否被消费;其中,h5页面在当前级将返回事件进行分发并判断返回事件是否被消费的步骤包括:h5页面判断是否存在下一级分发对象;若存在下一级分发对象,向下一级分发对象分发返回事件;判断返回事件是否被消费;若返回事件未被消费,h5页面在下一级将返回事件进行分发并判断返回事件是否被消费。根据本专利技术一种优选的实施方式,所述判断返回事件是否被消费包括:读取返回事件响应的返回值;根据所述返回值判断本文档来自技高网...

【技术保护点】
1.一种h5拦截Android返回事件的方法,其特征在于,包括如下步骤:/n响应于返回事件,Android端向h5页面调用事件拦截方法;/nh5页面查找所述事件拦截方法,并在查找到所述事件拦截方法时,向Android端返回拦截状态信息;/nh5页面将返回事件进行分发并判断返回事件是否被消费;/n若返回事件未被消费,h5页面调用Android端的回退方法。/n

【技术特征摘要】
1.一种h5拦截Android返回事件的方法,其特征在于,包括如下步骤:
响应于返回事件,Android端向h5页面调用事件拦截方法;
h5页面查找所述事件拦截方法,并在查找到所述事件拦截方法时,向Android端返回拦截状态信息;
h5页面将返回事件进行分发并判断返回事件是否被消费;
若返回事件未被消费,h5页面调用Android端的回退方法。


2.根据权利要求1所述的h5拦截Android返回事件的方法,其特征在于,所述h5页面逐级将返回事件进行分发并判断返回事件是否被消费;
其中,h5页面在当前级将返回事件进行分发并判断返回事件是否被消费的步骤包括:
h5页面判断是否存在下一级分发对象;
若存在下一级分发对象,向下一级分发对象分发返回事件;
判断返回事件是否被消费;
若返回事件未被消费,h5页面在下一级将返回事件进行分发并判断返回事件是否被消费。


3.根据权利要求2所述的h5拦截Android返回事件的方法,其特征在于,所述判断返回事件是否被消费包括:
读取返回事件响应的返回值;
根据所述返回值判断返回事件是否被消费。


4.根据权利要求2所述的h5拦截Android返回事件的方法,其特征在于,若不存在下一级分发对象,结束分发。


5.根据权利要求1所述的h5拦截Android返回事件的方法,其特征在于,所述h5页面将返回事件进行分发并判断返回事件是否被消费之前,所述方法...

【专利技术属性】
技术研发人员:徐亚军
申请(专利权)人:长沙市到家悠享家政服务有限公司
类型:发明
国别省市:湖南;43

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

1