CN116226570B - 展示浮层的方法、装置、电子设备及介质 - Google Patents

展示浮层的方法、装置、电子设备及介质 Download PDF

Info

Publication number
CN116226570B
CN116226570B CN202211557165.XA CN202211557165A CN116226570B CN 116226570 B CN116226570 B CN 116226570B CN 202211557165 A CN202211557165 A CN 202211557165A CN 116226570 B CN116226570 B CN 116226570B
Authority
CN
China
Prior art keywords
floating layer
page
displayed
current
content
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202211557165.XA
Other languages
English (en)
Other versions
CN116226570A (zh
Inventor
陈旭
刘鑫
付晨
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seashell Housing Beijing Technology Co Ltd
Original Assignee
Seashell Housing Beijing Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Seashell Housing Beijing Technology Co Ltd filed Critical Seashell Housing Beijing Technology Co Ltd
Priority to CN202211557165.XA priority Critical patent/CN116226570B/zh
Publication of CN116226570A publication Critical patent/CN116226570A/zh
Application granted granted Critical
Publication of CN116226570B publication Critical patent/CN116226570B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing user interfaces
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Human Computer Interaction (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本发明实施方式公开了一种展示浮层的方法、装置、电子设备及介质。方法包括:获取待展示浮层数据,所述待展示浮层数据包含待展示页面标识和待展示浮层内容;将所述待展示浮层内容存储到对应于所述待展示页面标识的页面浮层队列中;确定当前页面标识;从对应于所述当前页面标识的页面浮层队列中,确定当前浮层内容;在所述当前页面标识的当前页面中展示所述当前浮层内容。本发明实施方式无需为每个页面单独开发浮层,可以实时为多个页面展示浮层,并进行动态优先级排序,还实现了浮层与底部业务独立,区分事件跳转与事件透传,丰富了控制逻辑。

Description

展示浮层的方法、装置、电子设备及介质
技术领域
本发明实施方式涉及互联网技术领域,更具体的说,涉及一种展示浮层的方法、装置、电子设备及介质。
背景技术
产品操作中,需要高频率地打开各类链接和按钮,如果点击后需要展示新的内容,展现形式包含很多种类型,比如标签页、新页面和浮层等。在这里,浮层是悬浮在页面基础内容之上的内容层的统称。例如,浮层可以包括各类气泡、提示框、下拉菜单和弹窗等。
在现有技术中,需要在确定页面上为每个业务方单独开发浮层,不能实时展示浮层。
发明内容
本发明实施方式提出一种展示浮层的方法、装置、电子设备及介质。
本发明实施方式的技术方案如下:
一种展示浮层的方法,包括:
获取待展示浮层数据,所述待展示浮层数据包含待展示页面标识和待展示浮层内容;
将所述待展示浮层内容存储到对应于所述待展示页面标识的页面浮层队列中;
确定当前页面标识;
从对应于所述当前页面标识的页面浮层队列中,确定当前浮层内容;
在所述当前页面标识的当前页面中展示所述当前浮层内容。
在示范性实施方式中,所述待展示浮层数据还包含所述待展示浮层内容的优先级;
所述从对应于所述当前页面标识的页面浮层队列中,获取当前浮层内容包括:
基于所述对应于所述当前页面标识的页面浮层队列中的浮层内容的优先级顺序,确定所述当前浮层内容。
在示范性实施方式中,所述待展示页面标识包含不等同于任意页面标识的特定标识;所述获取待展示浮层数据包括:基于与服务端的长连接,获取待展示浮层数据;
所述方法还包括:在当前页面中展示所述待展示浮层内容。
在示范性实施方式中,所述待展示页面标识包含不等同于任意页面标识的特定标识;所述获取待展示浮层数据包括:在客户端冷启动后,基于与服务端的接口获取所述待展示浮层数据;
所述方法还包括:在所述客户端冷启动后第一个显示的页面中展示所述待展示浮层内容。
在示范性实施方式中,所述在当前页面标识的当前页面中展示所述当前浮层内容包括:
在所述当前页面上生成具有预定透明度的全屏浮层;
在所述全屏浮层的预定区域中展示所述当前浮层内容;
接收所述全屏浮层上的、除所述预定区域之外的区域内的用户触发事件;
当所述透明度大于或等于预先设定的透明度阈值时,将所述用户触发事件透传到所述当前页面,以由所述当前页面响应所述用户触发事件;当所述透明度小于预先设定的透明度阈值时,由所述全屏浮层响应所述用户触发事件。
在示范性实施方式中,所述待展示浮层数据还包括浮层展示条件;
所述从对应于所述当前页面标识的页面浮层队列中,确定当前浮层内容包括:
确定全部页面的生命周期管理数据;
从对应于所述当前页面标识的页面浮层队列中,确定当前浮层内容,其中基于所述生命周期管理数据,所述当前浮层内容所属于的待展示浮层数据中的浮层展示条件被判定符合。
一种展示浮层的装置,包括:
获取模块,用于获取待展示浮层数据,所述待展示浮层数据包含待展示页面标识和待展示浮层内容;
存储模块,用于将所述待展示浮层内容存储到对应于所述待展示页面标识的页面浮层队列中;
标识确定模块,用于确定当前页面标识;
内容确定模块,用于从对应于所述当前页面标识的页面浮层队列中,确定当前浮层内容;
展示模块,用于在所述当前页面标识的当前页面中展示所述当前浮层内容。
在示范性实施方式中,所述待展示浮层数据还包含所述待展示浮层内容的优先级;
所述内容确定模块,用于基于所述对应于所述当前页面标识的页面浮层队列中的浮层内容的优先级顺序,确定所述当前浮层内容。
在示范性实施方式中,所述待展示页面标识包含不等同于任意页面标识的特定标识;所述获取模块,用于基于与服务端的长连接,获取所述待展示浮层数据;所述展示模块,用于在当前页面中展示所述待展示浮层内容。
在示范性实施方式中,所述待展示页面标识包含不等同于任意页面标识的特定标识;所述获取模块,用于在客户端冷启动后,基于与服务端的接口获取所述待展示浮层数据;所述展示模块,用于在所述客户端冷启动后第一个显示的页面中展示所述待展示浮层内容。
在示范性实施方式中,所述展示模块,用于在所述当前页面上生成具有预定透明度的全屏浮层;在所述全屏浮层的预定区域中展示所述当前浮层内容;接收所述全屏浮层上的、除所述预定区域之外的区域内的用户触发事件;当所述透明度大于或等于预先设定的透明度阈值时,将所述用户触发事件透传到所述当前页面,以由所述当前页面响应所述用户触发事件;当所述透明度小于预先设定的透明度阈值时,由所述全屏浮层响应所述用户触发事件。
在示范性实施方式中,所述待展示浮层数据还包括浮层展示条件;所述内容确定模块,用于确定全部页面的生命周期管理数据;从对应于所述当前页面标识的页面浮层队列中,确定当前浮层内容,其中基于所述生命周期管理数据,所述当前浮层内容所属于的待展示浮层数据中的浮层展示条件被判定符合。
一种电子设备,该电子设备包括:
处理器;
用于存储所述处理器可执行指令的存储器;
所述处理器,用于从所述存储器中读取所述可执行指令,并执行所述可执行指令以实现如上任一项所述的展示浮层的方法。
一种计算机可读存储介质,其上存储有计算机指令,所述计算机指令被处理器执行时可实现如上任一项所述的展示浮层的方法。
一种计算机程序产品,包括计算机指令,所述计算机指令在被处理器执行时实施如上任一项所述的展示浮层的方法。
从上述技术方案可以看出,在本发明实施方式中,获取待展示浮层数据,待展示浮层数据包含待展示页面标识和待展示浮层内容;将待展示浮层内容存储到对应于待展示页面标识的页面浮层队列中;确定当前页面标识;从对应于当前页面标识的页面浮层队列中,确定当前浮层内容;在当前页面标识的当前页面中展示当前浮层内容。可见,本发明实施方式无需为每个页面单独开发浮层,可以实时为多个页面展示浮层,并进行动态优先级排序,还实现了浮层与底部业务独立,区分事件跳转与事件透传,丰富了控制逻辑。
附图说明
为了更清楚地说明本发明实施方式中的技术方案,下面将对实施方式描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施方式的展示浮层的方法的示范性流程图。
图2A是本发明实施方式的浮层的第一示意图。
图2B是本发明实施方式的浮层的第二示意图。
图2C是本发明实施方式的浮层的第三示意图。
图2D是本发明实施方式的浮层的第四示意图。
图3是本发明实施方式的页面浮层队列的存储示意图。
图4是本发明实施方式的安卓端的浮层展示示意图。
图5是本发明实施方式的iOS端的浮层展示示意图。
图6是本发明实施方式的展示浮层的装置的结构图。
图7是本发明实施方式的电子设备的示范性结构图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面结合附图对本发明作进一步的详细描述。
为了描述上的简洁和直观,下文通过描述若干代表性的实施方式来对本发明的方案进行阐述。实施方式中大量的细节仅用于帮助理解本发明的方案。但是很明显,本发明的技术方案实现时可以不局限于这些细节。为了避免不必要地模糊了本发明的方案,一些实施方式没有进行细致地描述,而是仅给出了框架。下文中,“包括”是指“包括但不限于”,“根据……”是指“至少根据……,但不限于仅根据……”。由于汉语的语言习惯,下文中没有特别指出一个成分的数量时,意味着该成分可以是一个也可以是多个,或可理解为至少一个。本发明实施方式的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施方式例如能够以除在这里图示或描述的那些以外的顺序实施。
考虑到现有技术中不能实时展示浮层,尤其是不能对多个页面中多个浮层进行动态下发和动态优先级排序的缺点,本发明实施方式提出可以对任意页面实时动态下发多浮层,并进行动态优先级排序的技术方案。
图1是本发明实施方式的展示浮层的方法的示范性流程图。如图1所示,该方法包括:
步骤101:获取待展示浮层数据,待展示浮层数据包含待展示页面标识和待展示浮层内容。
在这里,待展示浮层数据是关于待展示浮层的属性和/或内容的数据。可以在服务端中生成待展示浮层数据,从而基于待展示浮层数据在客户端的页面(比如,客户端的APP页面)中展示浮层。待展示页面标识为期望浮层被展示到的页面的标识。待展示浮层内容为需要被展示的浮层的内容。
浮层是悬浮在页面基础内容之上的内容层的统称。例如,浮层可以包括对话框(Dialog)、气泡、提示框、下拉菜单、模态窗(Modals)和弹窗(Alert)等。模态窗一般用来执行具体任务,模态窗可以通过完成任务或点击外部区域来关闭。弹窗通常可以阻断用户当前操作,一般是通过提示来选择确定或者取消。提示框通常是在某些操作后会出现,一般有时间限制,可以在预定时间后消失(一般是几秒钟),通常只是简单展示信息。
以上示范性描述了浮层的典型实例,本领域技术人员可以意识到,这种描述仅是示范性的,并不用于限定本发明实施方式的保护范围。
在一个示范性实施方式中,客户端基于与服务端的长连接,从服务端获取待展示浮层数据。在这个实施方式中,客户端可以实时获取待展示浮层数据。当服务端期望在客户端上实时展示浮层时,可以在服务端上基于用户配置或浮层自动生成机制生成待展示浮层数据,然后客户端基于与服务端的长连接实时获取待展示浮层数据。
在另一个示范性实施方式中,在客户端冷启动后,客户端基于与服务端的接口获取待展示浮层数据。在这个实施方式中,客户端在冷启动后,从服务端获取待展示浮层数据。当服务端期望在客户端上非实时展示浮层时,可以在服务端上基于用户配置或浮层自动生成机制生成待展示浮层数据,客户端基于与服务端的长连接,在冷启动后获取待展示浮层数据。
步骤102:将待展示浮层内容存储到对应于待展示页面标识的页面浮层队列中。
当客户端获取待展示浮层数据后,从待展示浮层数据中解析出待展示页面标识以及待展示浮层内容。而且,客户端将待展示浮层内容存储到对应于待展示页面标识的页面浮层队列中。比如,客户端可以为每个页面(无论页面是否已打开)维护各自的页面浮层队列。每个页面的浮层队列中分别存储有需要在该页面中被展示的、一或多个浮层内容。
步骤103:确定当前页面标识。
在这里,当前页面标识为客户端当前打开的页面的标识。
步骤104:从对应于所述当前页面标识的页面浮层队列中,确定当前浮层内容。
在这里,当前浮层内容为对应于当前页面标识的页面浮层队列中的、当前需要被展示的浮层内容。比如,可以基于浮层内容的优先级、浮层内容的时间属性或浮层内容的地理属性等方式,从当前页面标识的页面浮层队列中确定出当前浮层内容。
步骤105:在当前页面标识的当前页面中展示当前浮层内容。
在一个实施方式中,在当前浮层内容中进一步包含浮层呈现方式(如H5全屏浮层,H5区域浮层,Native浮层,等等),并基于浮层呈现方式在当前页面中展示当前浮层内容。比如,区域浮层可以包括半屏浮层。
可见,相比较现有技术中直接在页面中埋伏并展示浮层的处理方式,本发明实施方式无需为每个页面单独开发浮层,降低了操作复杂度。而且,本发明实施方式可以实时为页面展示浮层,提高了实时性,并具有更灵活的控制逻辑。
在示范性实施方式中,待展示浮层数据还包含所述待展示浮层内容的优先级;步骤104包括:基于对应于当前页面标识的页面浮层队列中的浮层内容的优先级顺序,确定当前浮层内容。
比如,假定当前页面标识的页面浮层队列中包含浮层内容A、浮层内容B和浮层内容C,其中浮层内容A的优先级大于浮层内容B的优先级,浮层内容B的优先级大于浮层内容C的优先级。因此,从当前页面标识的页面浮层队列中确定当前浮层内容为浮层内容A。优选地,当浮层内容A被展示后,从当前页面标识的页面浮层队列中删除浮层内容A。可见,本发明实施方式实现了基于动态优先级排序的浮层内容展示,保证了优先展示重要浮层。
在示范性实施方式中,待展示页面标识包含不等同于任意页面标识的特定标识。比如,特定标识可以为“any page”。步骤101包括:基于与服务端的长连接,获取待展示浮层数据;方法还包括:在当前页面中展示待展示浮层内容。可见,当通过与服务端的长连接实时获取到具有特定标识的待展示浮层数据后,立即在当前页面中展示待展示浮层内容,实现了与具体页面无关的浮层及时展示。
在示范性实施方式中,待展示页面标识包含不等同于任意页面标识的特定标识。比如,特定标识可以为“any page”。步骤101包括:在客户端冷启动后,基于与服务端的接口获取所述待展示浮层数据。方法还包括:在客户端冷启动后第一个显示的页面中展示所述待展示浮层内容。可见,当客户端冷启动获取到具有特定标识的待展示浮层数据后,立即在冷启动后第一个显示的页面中展示待展示浮层内容,实现了与具体页面无关的浮层及时展示。
特定标识还可以具有其他的表述方式,只需要不等同于任意页面标识即可。
在示范性实施方式中,在当前页面标识的当前页面中展示当前浮层内容包括:在当前页面上生成具有预定透明度的全屏浮层;在全屏浮层的预定区域中展示当前浮层内容;接收全屏浮层上的、除预定区域之外的区域内的用户触发事件;当透明度大于或等于预先设定的透明度阈值时,将用户触发事件透传到当前页面,以由当前页面响应用户触发事件;当透明度小于预先设定的透明度阈值时,由全屏浮层响应用户触发事件。
因此,本发明实施方式还实现了浮层与底部业务独立,区分事件跳转与事件透传,丰富了控制逻辑。
图2A是本发明实施方式的浮层的第一示意图。图2B是本发明实施方式的浮层的第二示意图。图2C是本发明实施方式的浮层的第三示意图。图2D是本发明实施方式的浮层的第四示意图。
在图2A中,在当前页面的下部区域的上层具有区域浮层10,区域浮层10不会导致当前页面的其它区域不可见。在图2B中,全屏浮层完整覆盖当前页面的整个上层,全屏浮层中展示有浮层内容11,全屏浮层的透明度较低,从而当前页面中被浮层内容11遮盖住的内容不可见,且当前页面中不被浮层内容11遮盖住的内容变为黑色。在图2C中,全屏浮层完整覆盖当前页面的整个上层,全屏浮层中展示有浮层内容12,全屏浮层的透明度较低,从而当前页面中被浮层内容12遮盖住的内容不可见,且当前页面中不被浮层内容12遮盖住的内容变为黑色。在图2D中,区域浮层13展示在当前页面的上层的部分区域中,且区域浮层13的透明度较高,从而当前页面中的不被浮层内容13遮盖住的内容为可见的。
以图2C中的区域浮层12为例进行说明。当用户点击浮层内容12时,即监测到针对全屏浮层中的浮层内容12的用户触发事件时,全屏浮层响应于该用户触发事件(比如弹开新页面)。当用户点击全屏浮层中除了区域浮层12之外的区域时,即监测到针对全屏浮层中除了区域浮层12之外的区域的用户触发事件时,此时基于全屏浮层的透明度执行相应的控制逻辑。其中:当全屏浮层的透明度大于或等于预先设定的透明度阈值时,将用户触发事件透传到全屏浮层下面的当前页面,以由当前页面响应用户触发事件;当全屏浮层的透明度小于透明度阈值时,不将用户触发事件透传到全屏浮层下面的当前页面,而是由全屏浮层直接响应用户触发事件(比如,不执行操作)。其中,待展示浮层数据中可以包含用于设置全屏浮层透明度、尺寸、标题等的浮层设置信息。客户端获取待展示浮层数据后,可以将其中的浮层设置信息与其中的浮层内容相互关联地保存在对应于待展示页面标识的页面浮层队列中。步骤105包括:基于与当前浮层内容关联的浮层设置信息,在当前页面标识的当前页面中展示当前浮层内容。
在示范性实施方式中,待展示浮层数据还包括浮层展示条件。客户端获取待展示浮层数据后,可以将其中的浮层展示条件与其中的浮层内容相互关联地保存在对应于待展示页面标识的页面浮层队列中。步骤104包括:确定全部页面的生命周期管理数据;从对应于当前页面标识的页面浮层队列中,确定当前浮层内容,其中基于生命周期管理数据,当前浮层内容所属于的待展示浮层数据中的浮层展示条件被判定符合。
比如,假定当前页面标识的页面浮层队列中包含浮层内容123和浮层内容234。浮层内容123的浮层展示条件为:先展示页面A,然后展示页面B,再展示页面C。浮层内容234的浮层展示条件为:先展示页面C,然后展示页面B,再展示页面A。客户端监控页面A、页面B和页面C的生命周期管理数据(包括页面的打开事件、关闭事件,等等)。当基于页面A、页面B和页面C的生命周期管理数据确定页面打开顺序为:1、页面A;2、页面B;3、页面C时,确定浮层内容123的浮层展示条件得到满足,从而确定浮层内容123为当前浮层内容,并在当前页面(也就是页面C)中展示浮层内容123。
可见,本发明实施方式还可以根据页面的生命周期管理,实现在特定页面中展示对应的浮层。
因此,可以监听页面进出的生命周期时间以展示对应页面的浮层。对于服务端下发的浮层数据可以按页面维度来进行缓存。比如,以页面名称为键(key),页面浮层队列为值(value)的映射表类型存储结构。页面名称可以是活动(activity)、片段(fragment)、原生(flutter)和H5的页面名称。由于同一个浮层可以配置在n个页面中展示,可以创建插入到各个页面的缓存队列中的n个浮层对象,将这n个浮层对象的唯一标识保持一致,若同一个浮层被关闭,其对应的其他的浮层对象也不再展示。图3是本发明实施方式的页面浮层队列的存储示意图。在图3中,弹窗b被配置在多个页面展示。
可以在诸如功能手机、智能手机、掌上电脑、个人电脑(PC)、平板电脑或个人数字助理(PDA)等客户端上展示浮层。而且,客户端具体可以采用的操作系统包括但是不局限于:安卓(Andorid)、Palm OS、Symbian(塞班)、Windows mobile、Linux、Android(安卓)、iPhone(苹果)OS、Black Berry(黑莓)OS 6.0、Windows Phone系列,等等。比如,可以采用Andorid的各个版本之中,包括但是不局限于:阿童木(Android Beta)、发条机器人(Android1.0)、纸杯蛋糕(Android 1.5)、甜甜圈(Android 1.6)、松饼(Android 2.0/2.1),冻酸奶(Android 2.2)、姜饼(Android 2.3)、蜂巢(Android 3.0)、冰激凌三明治(Android4.0)、果冻豆(Jelly Bean,Android 4.1)等版本。
下面以安卓为例,对本发明实施方式进行描述。
首先,给出如下定义:
1、展示页面位置:
(1)任意(any)页面:当浮层数据通过推送到客户端后,在客户端的任意页面(当前页面)上立刻展示;当浮层数据是客户端冷启动从接口拉取到数据时,在拉取浮层数据后,在客户端第一个显示的页面展示浮层。任意页面的展示方式用于紧急事件,能够打断用户当前操作。
(2)具体的配置页面位置:当用户进入到配置页面时,在该配置页面展示浮层。配置页面的展示方式用于具体的业务活动提示。
2、浮层生命周期类型:
(1)强制浮层:浮层出现后,如果用户没有完成指定的业务流程操作,浮层保持开启,冷启动后,服务端将继续下发该浮层数据。
(2)非强制浮层:浮层出现后,如果用户观看或者点击关闭后,在本次生命周期内关闭,重新冷启动后,服务端也不会继续下发该浮层数据。
3、浮层容器及业务类型:
(1)android native弹窗:用android dialogFragment实现,由客户端预先编写模板集成进APP中,通过服务端下发数据调用不同的模板。
(2)WebView容器承载的H5浮层:包括H5弹窗和H5浮球。由H5开发实现浮层的UI,用客户端的WebView容器承载H5弹窗页面。根据H5页面浮层的业务需求配置拦截或传递WebView点击滑动事件。在H5浮层中,将WebView添加到当前页面活动(activity)的内容视图(contentview)上,当在透明区域点击跳转到其他fragment、H5页面或flutter页面上,需要将其从当前activity的contentview上移除。
基于监听钩子(hook)页面的进出状态展示对应页面的浮层,因此可以按照按页面维度对服务端下发的浮层数据进行缓存。页面名称可以是activity、fragment、flutter、H5的页面名称。缓存结构如图3所示。
下发浮球或弹窗等浮层时,遵循优先级排序结果。表1为页面的浮层优先级的示意表。
表1
在本发明实施方式中,可以叠加展示服务端下发的多个浮球,而且这多个浮球之间的优先级可以不做要求。另外,本发明实施方式的弹窗类型可以包括native弹窗和H5弹窗,遵循优先级以逐一方式(one by one)展示,即当前弹窗关闭后,再按优先级展示下一个弹窗。按照本发明实施方式的缓存策略及动态优先级排序方案,能够实现动态下发任意页面的浮层,在任意页面按照优先级实时推送展示。比如,客户端在收到服务端推送的浮层数据(比如,浮球x,弹窗y,弹窗z)后,按照其配置弹出的页面(比如,页面x,和任意页面)及优先级顺序插入对应页面的缓存队列中,并按优先级动态排序进行展示的过程。然后,当用户完成弹窗y对应的业务并关闭弹窗y后,回到页面x并重复之前的排序,以继续展示下一个最高优先级的浮层。
图4是本发明实施方式的安卓端的浮层展示示意图。如图4所示,当在安卓客户端上打开APP时,安卓客户端从服务器请求浮层数据,并建立与服务器的长连接以支持浮层数据的实时展示。当拉取到浮层数据后,将浮层数据按照其配置的页面信息,存入各个页面的浮层队列中进行缓存。监听各页面的进入、退出等生命周期活动,并记录当前所在页面的标识。当进入某一页面时,若命中了浮层展示条件,则根据该页面的浮层队列中的优先级顺序,在该页面中弹出相应浮层。
下面以iOS为例,对本发明实施方式进行描述。
iOS的浮层展示平台可以包含配置平台、展示平台、消息触发通道和全局浮层SDK。配置平台根据业务需求,决定展示位置(在哪些页面展示浮层)、展示有效期和展示内容,等等。展示位置可以配置为任意页面,即进入任意页面都弹出浮层;展示位置也可以配置为在指定页面且浮层在有效期内才弹出浮层。展示平台根据展示内容可以选择多种素材和模板,比如native固定模板、动态UI模板和H5模板等。消息触达方式包含冷启动拉取和即时通讯(IM)实时推送,其中冷启动可以作为IM实时推送失败的兜底方式。全局浮层SDK包含生命周期管理,其中对于native、H5和flutter页面监听相应的生命周期,并判断当前页面的标识。全局浮层SDK还包含消息管理,从冷启动和IM实时推送的消息中解析出展示内容、模板、有效期和展示位置等等。全局浮层SDK还包含页面浮层队列,以队列的形式更新已经展示和未展示的浮层数据,以及对当前页面标识进行匹配以实现顺次弹出。全局浮层SDK还包含优先级管理,其中按照优先级决定浮层弹出的先后顺序,前一个浮层结束展示后,才触发下一个浮层的展示。
针对iOS中,本发明实施方式的关键要点至少包括:(1)、配置平台包含权限管理、展示内容、展示位置、展示有效期等配置。具有权限的特定人员才能进行配置。展示内容可以包含标题(title)和内容(content)等;展示位置中指定进入某一个页面或任何页面展示浮层;展示有效期指定展示内容的开始时间点和结束时间点;(2)、展示平台设置展示人群包、模板管理、素材管理等,其中展示人群包可以指定特定城市和渠道,也可以自定义进行圈定;模板管理包含特定的原生模板,比如图文样式、纯图样式等以及特定的H5模板;素材管理包含基础素材,用于生成最终展示的H5浮球的URL;(3)、消息触达方式包含冷启动时主动拉取和即时通讯消息通道的推送下发;(4)、全局浮层SDK可以包括生命周期管理,在每个页面展示时,与展示位置和有效期进行匹配,冷启动拉取并缓存所有待展示的页面,按照优先级进行展示。
因此,在基于iOS的客户端应用中,可以在所有页面、特定的原生页面、H5页面或flutter页面展示浮层。而且,展示的全屏H5浮层与底部业务独立,可以区分浮层的跳转和事件透传。具体地,展示H5浮球的位置、优先级、展示时长等通过展示平台实现配置化,节省研发成本和缩短上线周期,紧急需求可随时上线。
图5是本发明实施方式的iOS端的浮层展示示意图。如图5所示,第一步:在iOS客户端中的APP冷启动时,从服务器拉取所有的浮层数据。第二步:进入每个页面,根据页面的生命周期自动生成相应的数据码(posCode),遍历浮层数据进行比较,如果包含当前页面,接着判断当前时间是否在有效期内。第三步:用全屏webview加载有效期内的浮层,并初始化基础配置以及原生页面和H5页面的交互能力,弹出全屏透明的H5浮层(比如悬浮于屏幕的任一角)。第四步:对于需要实时推送的浮层,通过推送通道下发。第五步:假定约定透明度大于等于阈值的点击位置时,把用户触发事件透传到底部页面,不影响底部页面的各种操作,透明度小于的位置认为是浮层所在位置,点击时响应并执行跳转操作。可见,整个过程是通过展示平台配置相应的posCode来展示,不需要native参与开发,与业务实现了解耦。
图6是本发明实施方式的展示浮层的装置的结构图。如图6所示,展示浮层的装置600包括:
获取模块601,用于获取待展示浮层数据,待展示浮层数据包含待展示页面标识和待展示浮层内容;
存储模块602,用于将待展示浮层内容存储到对应于待展示页面标识的页面浮层队列中;
标识确定模块603,用于确定当前页面标识;
内容确定模块604,用于从对应于当前页面标识的页面浮层队列中,确定当前浮层内容;
展示模块605,用于在当前页面标识的当前页面中展示当前浮层内容。
在示范性实施方式中,待展示浮层数据还包含待展示浮层内容的优先级;
内容确定模块604,用于基于对应于当前页面标识的页面浮层队列中的浮层内容的优先级顺序,确定当前浮层内容。
在示范性实施方式中,获取模块601,用于基于与服务端的长连接,获取待展示浮层数据;待展示页面标识包含不等同于任意页面标识的特定标识;展示模块605,用于在当前页面中展示待展示浮层内容。
在示范性实施方式中,获取模块601,用于在客户端冷启动后,基于与服务端的接口获取待展示浮层数据;待展示页面标识包含不等同于任意页面标识的特定标识;展示模块605,用于在客户端冷启动后第一个显示的页面中展示待展示浮层内容。
在示范性实施方式中,展示模块605,用于在当前页面上生成具有预定透明度的全屏浮层;在全屏浮层的预定区域中展示当前浮层内容;接收全屏浮层上的、除预定区域之外的区域内的用户触发事件;当透明度大于或等于预先设定的透明度阈值时,将用户触发事件透传到当前页面,以由当前页面响应用户触发事件;当透明度小于预先设定的透明度阈值时,由全屏浮层响应用户触发事件。
在示范性实施方式中,待展示浮层数据还包括浮层展示条件;内容确定模块604,用于确定全部页面的生命周期管理数据;从对应于当前页面标识的页面浮层队列中,确定当前浮层内容,其中基于生命周期管理数据,当前浮层内容所属于的待展示浮层数据中的浮层展示条件被判定符合。
本发明实施方式还提供一种计算机可读介质,计算机可读存储介质存储指令,指令在由处理器执行时可执行如上的展示浮层的方法中的步骤。实际应用中的计算机可读介质可以是上述实施方式中描述的设备/装置/系统中所包含的,也可以是单独存在而未装配入该设备/装置/系统中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或多个程序被执行时,可以实现上述各实施方式描述的展示浮层的方法。根据本发明公开的实施方式,计算机可读存储介质可以是非易失性的计算机可读存储介质,例如可以包括但不限于:便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件,或者上述的任意合适的组合,但不用于限制本发明保护的范围。在本发明公开的实施方式中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
如图7所示,本发明实施方式还提供一种电子设备,其中可以集成本发明实施方式的展示浮层的方法的装置。如图7所示,其示出了本发明实施方式所涉及的电子设备的示范性结构图。具体地:该电子设备可以包括一个或一个以上处理核心的处理器701、一个或一个以上计算机可读存储介质的存储器702以及存储在存储器上并可在处理器上运行的计算机程序。在执行存储器702的程序时,可以实现上述展示浮层的方法。
在实际应用中,该电子设备还可以包括电源703、输入单元704、以及输出单元705等部件。本领域技术人员可以理解,图7中示出的电子设备的结构并不构成对该电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:处理器701是该电子设备的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或执行存储在存储器702内的软件程序和/或模块,以及调用存储在存储器702内的数据,执行服务器的各种功能和处理数据,从而对该电子设备进行整体监控。存储器702可用于存储软件程序以及模块,即上述计算机可读存储介质。处理器701通过运行存储在存储器702的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器702可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据服务器的使用所创建的数据等。此外,存储器702可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器702还可以包括存储器控制器,以提供处理器701对存储器702的访问。
该电子设备还包括给各个部件供电的电源703,可以通过电源管理系统与处理器701逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源703还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。该电子设备还可包括输入单元704,该输入单元704可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。该电子设备还可以包括输出单元705,该输出单元705可以用于显示由用户输入的信息或提供给用户的信息以及各种图像用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。
本发明实施方式还提供一种计算机程序产品,该计算机程序产品包括计算机指令,该计算机指令在被处理器执行时实施如上述任一实施方式所述的展示浮层的方法。本发明附图中的流程图和框图,示出了按照本发明公开的各种实施方式的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或者代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应该注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同附图中所标准的顺序发生。例如,两个连接地表示的方框实际上可以基本并行地执行,它们有时也可以按照相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或者流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
本文中应用了具体实施方式对本发明的原理及实施方式进行了阐述,以上实施方式的说明只是用于帮助理解本发明的方法及其核心思路,并不用于限制本发明。对于本领域的技术人员来说,可以依据本发明的思路、精神和原则,在具体实施方式及应用范围上进行改变,其所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

Claims (9)

1.一种展示浮层的方法,其特征在于,包括:
获取待展示浮层数据,所述待展示浮层数据包含待展示页面标识和待展示浮层内容;
将所述待展示浮层内容存储到对应于所述待展示页面标识的页面浮层队列中;
确定当前页面标识;
从对应于所述当前页面标识的页面浮层队列中,确定当前浮层内容;以及
在所述当前页面标识的当前页面中展示所述当前浮层内容;
所述待展示浮层数据还包括浮层展示条件;获取待展示浮层数据后,将其中的浮层展示条件与其中的浮层内容相互关联地保存在对应于待展示页面标识的页面浮层队列中;所述浮层展示条件包括页面打开顺序;
所述从对应于所述当前页面标识的页面浮层队列中,确定当前浮层内容,包括:
确定全部页面的生命周期管理数据;
从对应于所述当前页面标识的页面浮层队列中,确定当前浮层内容,其中,基于所述生命周期管理数据,所述当前浮层内容所属于的待展示浮层数据中的浮层展示条件被判定符合。
2.根据权利要求1所述的方法,其特征在于,所述待展示浮层数据还包含所述待展示浮层内容的优先级;
所述从对应于所述当前页面标识的页面浮层队列中,获取当前浮层内容包括:
基于所述对应于所述当前页面标识的页面浮层队列中的浮层内容的优先级顺序,确定所述当前浮层内容。
3.根据权利要求1所述的方法,其特征在于,所述待展示页面标识包含不等同于任意页面标识的特定标识;
所述获取待展示浮层数据包括:基于与服务端的长连接,获取所述待展示浮层数据;
所述方法还包括:在当前页面中展示所述待展示浮层内容。
4.根据权利要求1所述的方法,其特征在于,所述待展示页面标识包含不等同于任意页面标识的特定标识;
所述获取待展示浮层数据包括:在客户端冷启动后,基于与服务端的接口获取所述待展示浮层数据;
所述方法还包括:在所述客户端冷启动后第一个显示的页面中展示所述待展示浮层内容。
5.根据权利要求1-4中任一项所述的方法,其特征在于,在所述当前页面标识的当前页面中展示所述当前浮层内容,包括:
在所述当前页面上生成具有预定透明度的全屏浮层;
在所述全屏浮层的预定区域中展示所述当前浮层内容;
接收所述全屏浮层上的、除所述预定区域之外的区域内的用户触发事件;
当所述透明度大于或等于预先设定的透明度阈值时,将所述用户触发事件透传到所述当前页面,以由所述当前页面响应所述用户触发事件;当所述透明度小于预先设定的透明度阈值时,由所述全屏浮层响应所述用户触发事件。
6.一种展示浮层的装置,其特征在于,包括:
获取模块,用于获取待展示浮层数据,所述待展示浮层数据包含待展示页面标识和待展示浮层内容;
存储模块,用于将所述待展示浮层内容存储到对应于所述待展示页面标识的页面浮层队列中;
标识确定模块,用于确定当前页面标识;
内容确定模块,用于从对应于所述当前页面标识的页面浮层队列中,确定当前浮层内容;以及
展示模块,用于在所述当前页面标识的当前页面中展示所述当前浮层内容;
所述待展示浮层数据还包括浮层展示条件;获取待展示浮层数据后,将其中的浮层展示条件与其中的浮层内容相互关联地保存在对应于待展示页面标识的页面浮层队列中;所述浮层展示条件包括页面打开顺序;
所述从对应于所述当前页面标识的页面浮层队列中,确定当前浮层内容,包括:
确定全部页面的生命周期管理数据;
从对应于所述当前页面标识的页面浮层队列中,确定当前浮层内容,其中,基于所述生命周期管理数据,所述当前浮层内容所属于的待展示浮层数据中的浮层展示条件被判定符合。
7.一种电子设备,其特征在于,该电子设备包括:
处理器;
用于存储所述处理器可执行指令的存储器;
所述处理器,用于从所述存储器中读取所述可执行指令,并执行所述可执行指令以实现权利要求1-5任一项所述的展示浮层的方法。
8.一种计算机可读存储介质,其上存储有计算机指令,其特征在于,所述计算机指令被处理器执行时可实现权利要求1-5任一项所述的展示浮层的方法。
9.一种计算机程序产品,其特征在于,包括计算机指令,所述计算机指令在被处理器执行时实施权利要求1-5任一项所述的展示浮层的方法。
CN202211557165.XA 2022-12-06 2022-12-06 展示浮层的方法、装置、电子设备及介质 Active CN116226570B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211557165.XA CN116226570B (zh) 2022-12-06 2022-12-06 展示浮层的方法、装置、电子设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211557165.XA CN116226570B (zh) 2022-12-06 2022-12-06 展示浮层的方法、装置、电子设备及介质

Publications (2)

Publication Number Publication Date
CN116226570A CN116226570A (zh) 2023-06-06
CN116226570B true CN116226570B (zh) 2024-05-10

Family

ID=86586177

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211557165.XA Active CN116226570B (zh) 2022-12-06 2022-12-06 展示浮层的方法、装置、电子设备及介质

Country Status (1)

Country Link
CN (1) CN116226570B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106445278A (zh) * 2016-08-31 2017-02-22 冠捷显示科技(厦门)有限公司 一种透明悬浮窗的控制方法
CN108399089A (zh) * 2018-01-25 2018-08-14 阿里巴巴集团控股有限公司 视图界面的显示方法及装置
CN113157152A (zh) * 2020-01-23 2021-07-23 阿里巴巴集团控股有限公司 数据处理方法、装置、播放终端及计算机存储介质
CN113721811A (zh) * 2021-11-03 2021-11-30 北京每日菜场科技有限公司 弹窗发送方法、装置、电子设备和计算机可读介质
CN113900760A (zh) * 2021-10-26 2022-01-07 广州博冠信息科技有限公司 一种弹窗展示方法和装置
CN114238821A (zh) * 2022-02-18 2022-03-25 北京金堤科技有限公司 弹窗处理方法及装置
WO2022161022A1 (zh) * 2021-01-29 2022-08-04 北京字节跳动网络技术有限公司 一种页面展示方法、装置、计算机设备及存储介质
CN115033333A (zh) * 2022-07-19 2022-09-09 荣耀终端有限公司 一种悬浮窗显示方法、电子设备和存储介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190286462A1 (en) * 2013-03-15 2019-09-19 David Bodnick Systems, methods, and media for presenting interactive checklists
CN113542485B (zh) * 2017-10-09 2023-05-05 华为技术有限公司 一种通知处理方法、电子设备及计算机可读存储介质

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106445278A (zh) * 2016-08-31 2017-02-22 冠捷显示科技(厦门)有限公司 一种透明悬浮窗的控制方法
CN108399089A (zh) * 2018-01-25 2018-08-14 阿里巴巴集团控股有限公司 视图界面的显示方法及装置
CN113157152A (zh) * 2020-01-23 2021-07-23 阿里巴巴集团控股有限公司 数据处理方法、装置、播放终端及计算机存储介质
WO2022161022A1 (zh) * 2021-01-29 2022-08-04 北京字节跳动网络技术有限公司 一种页面展示方法、装置、计算机设备及存储介质
CN113900760A (zh) * 2021-10-26 2022-01-07 广州博冠信息科技有限公司 一种弹窗展示方法和装置
CN113721811A (zh) * 2021-11-03 2021-11-30 北京每日菜场科技有限公司 弹窗发送方法、装置、电子设备和计算机可读介质
CN114238821A (zh) * 2022-02-18 2022-03-25 北京金堤科技有限公司 弹窗处理方法及装置
CN115033333A (zh) * 2022-07-19 2022-09-09 荣耀终端有限公司 一种悬浮窗显示方法、电子设备和存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于定制页面的二维态势数值可视化研究;吕亮;徐青;施群山;周杨;;系统仿真学报;20130808(第08期);全文 *

Also Published As

Publication number Publication date
CN116226570A (zh) 2023-06-06

Similar Documents

Publication Publication Date Title
US20220229521A1 (en) Displaying a translucent version of a user interface element
US10324733B2 (en) Shutdown notifications
JP7138804B2 (ja) インタフェース表示方法及びその装置、端末並びにコンピュータプログラム
US20210065134A1 (en) Intelligent notification system
US9699295B2 (en) Method for displaying an icon and terminal device thereof
CN107111799A (zh) 作业调度和监测
CN113094135B (zh) 页面显示控制方法、装置、设备及存储介质
CN108604152A (zh) 未读消息提示方法和终端
JP5825030B2 (ja) 情報処理装置、情報処理方法およびコンピュータプログラム
WO2023015986A1 (zh) 日程冲突处理方法、设备、存储介质及软件程序产品
CN113449877A (zh) 用于展示机器学习建模过程的方法及系统
CN111133724B (zh) 会话调度助理计算系统中的自然语言处理和分析
Salman et al. A design framework of a smartphone user interface for elderly users
US20240171531A1 (en) Information Display Method, Electronic Device, and Non-transitory Readable Storage Medium
CN104331405B (zh) 数据报表的处理方法及装置
CN113271360B (zh) 应用程序的推荐方法、装置、电子设备及介质
CN116226570B (zh) 展示浮层的方法、装置、电子设备及介质
CN111818371B (zh) 一种互动视频的管理方法以及相关装置
US11962556B2 (en) Animated notification indicator
CN110162350B (zh) 通知栏信息的显示方法、装置、服务器及存储介质
WO2023056850A1 (zh) 页面显示方法、装置、设备及存储介质
CN111857463A (zh) 新消息提醒方法、装置、电子设备及介质
CN110100281B (zh) 方法、程序及信息处理装置
CN113824841B (zh) 通知消息处理方法、装置、电子设备及可读存储介质
CN113436604B (zh) 播报内容的方法及装置、电子设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant