一种用于确定窗口相关性的方法、设备及介质与流程

文档序号:37161278发布日期:2024-02-26 17:31阅读:55来源:国知局
一种用于确定窗口相关性的方法、设备及介质与流程

本申请涉及通信领域,尤其涉及一种用于确定窗口相关性的技术。


背景技术:

1、在安卓系统中,窗口类型通常分为三类。第一种为应用窗口(页面类型窗口),所谓的应用窗口一般是指该窗口对应一个页面(activity),对于应用程序来讲,要创建一个应用窗口,只能在页面内部完成。第二种是子窗口(例如,popwindow类型窗口、dialog类型窗口),所谓的子窗口是指,该窗口必须有一个宿主窗口,宿主窗口需要是一个应用窗口。第三种是系统窗口,系统窗口不需要对应任何页面,也不需要有父窗口,但是对于应用程序而言,理论上是无法创建系统窗口,因为应用程序没有这个权限,只有系统进程却可以创建系统窗口。


技术实现思路

1、本申请的一个目的是提供一种用于确定窗口相关性的方法、设备及介质。

2、根据本申请的一个方面,提供了一种用于确定窗口相关性的方法,该方法包括:

3、获取目标应用对应的窗口管理器中的根视图集合,遍历所述根视图集合中的每个根视图,获取所述每个根视图绑定的至少一个上下文信息;

4、对于所述目标应用中的第一视图,若所述第一视图对应的第一根视图绑定的至少一个上下文信息与所述根视图集合中除所述第一根视图以外的第二根视图绑定的至少一个上下文信息之间存在交集,确定所述第一视图与所述第二根视图属于同一个宿主窗口。

5、根据本申请的一个方面,提供了一种用于确定窗口相关性的计算机设备,该设备包括:

6、处理器;以及

7、被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行如下操作:

8、获取目标应用对应的窗口管理器中的根视图集合,遍历所述根视图集合中的每个根视图,获取所述每个根视图绑定的至少一个上下文信息;

9、对于所述目标应用中的第一视图,若所述第一视图对应的第一根视图绑定的至少一个上下文信息与所述根视图集合中除所述第一根视图以外的第二根视图绑定的至少一个上下文信息之间存在交集,确定所述第一视图与所述第二根视图属于同一个宿主窗口。

10、根据本申请的一个方面,提供了一种存储指令的计算机可读介质,所述指令在被执行时使得系统进行如下操作:

11、获取目标应用对应的窗口管理器中的根视图集合,遍历所述根视图集合中的每个根视图,获取所述每个根视图绑定的至少一个上下文信息;

12、对于所述目标应用中的第一视图,若所述第一视图对应的第一根视图绑定的至少一个上下文信息与所述根视图集合中除所述第一根视图以外的第二根视图绑定的至少一个上下文信息之间存在交集,确定所述第一视图与所述第二根视图属于同一个宿主窗口。

13、根据本申请的一个方面,提供了一种用于确定窗口相关性的用户设备,该设备包括:

14、一一模块,用于获取目标应用对应的窗口管理器中的根视图集合,遍历所述根视图集合中的每个根视图,获取所述每个根视图绑定的至少一个上下文信息;

15、一二模块,用于对于所述目标应用中的第一视图,若所述第一视图对应的第一根视图绑定的至少一个上下文信息与所述根视图集合中除所述第一根视图以外的第二根视图绑定的至少一个上下文信息之间存在交集,确定所述第一视图与所述第二根视图属于同一个宿主窗口。

16、与现有技术相比,本申请通过获取目标应用对应的窗口管理器中的根视图集合,遍历所述根视图集合中的每个根视图,获取所述每个根视图绑定的至少一个上下文信息;对于所述目标应用中的第一视图,若所述第一视图对应的第一根视图绑定的至少一个上下文信息与所述根视图集合中除所述第一根视图以外的第二根视图绑定的至少一个上下文信息之间存在交集,确定所述第一视图与所述第二根视图属于同一个宿主窗口,从而可以通过独立于业务的sdk模块,判断两个视图是否属于同一个宿主窗口,以及判断当前显示页面内是否存在弹窗,不需要对现有业务代码中嵌入大量的额外逻辑,不会对原有的业务代码造成很强的侵入性,对业务层的改动较小。



技术特征:

1.一种用于确定窗口相关性的方法,其中,所述方法包括:

2.根据权利要求1所述的方法,其中,所述每个根视图绑定的至少一个上下文信息包括至少一个第一上下文信息;

3.根据权利要求2所述的方法,其中,所述对于所述每个根视图,从该根视图持有的一个或多个第一属性变量中解析出该根视图绑定的至少一个第一上下文信息,包括:

4.根据权利要求2或3所述的方法,其中,所述每个根视图绑定的至少一个上下文信息还包括所述至少一个第一上下文信息包装的至少一个第二上下文信息。

5.根据权利要求4所述的方法,其中,所述方法还包括:

6.根据权利要求1所述的方法,其中,所述对于所述目标应用中的第一视图,若所述第一视图对应的第一根视图绑定的至少一个上下文信息与所述根视图集合中除所述第一根视图以外的第二根视图绑定的至少一个上下文信息之间存在交集,确定所述第一视图与所述第二根视图属于同一个宿主窗口,包括:

7.根据权利要求6所述的方法,其中,所述获取所述第一视图对应的第一根视图,包括:

8.根据权利要求1所述的方法,其中,所述第二根视图为所述目标应用中的第二视图对应的根视图;

9.根据权利要求1所述的方法,其中,所述第一视图为所述目标应用中的当前显示页面的根视图,所述第二根视图为非页面根视图;

10.根据权利要求1所述的方法,其中,所述方法还包括:

11.一种用于确定窗口相关性的用户设备,其中,所述设备包括:

12.一种用于确定窗口相关性的计算机设备,包括存储器、处理器及存储在存储器上的计算机程序,其特征在于,所述处理器执行所述计算机程序以实现如权利要求1至10中任一项所述方法的步骤。

13.一种计算机可读存储介质,其上存储有计算机程序/指令,其特征在于,该计算机程序/指令被处理器执行时实现如权利要求1至10中任一项所述方法的步骤。


技术总结
本申请的目的是提供一种用于确定窗口相关性的方法、设备及介质,该方法包括:获取目标应用对应的窗口管理器中的根视图集合,遍历根视图集合中的每个根视图,获取每个根视图绑定的至少一个上下文信息;对于目标应用中的第一视图,若第一视图对应的第一根视图绑定的至少一个上下文信息与根视图集合中除第一根视图以外的第二根视图绑定的至少一个上下文信息之间存在交集,确定第一视图与第二根视图属于同一个宿主窗口。本申请可以通过独立于业务的SDK模块,判断两个视图是否属于同一个宿主窗口,以及判断当前显示页面内是否存在弹窗,不需要对现有业务代码中嵌入大量的额外逻辑,不会对原有的业务代码造成很强的侵入性,对业务层的改动较小。

技术研发人员:侯晓辉,王军,张建伟
受保护的技术使用者:亮风台(上海)信息科技有限公司
技术研发日:
技术公布日:2024/2/25
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1