控制悬浮窗展示的方法、装置、介质和计算设备制造方法及图纸

技术编号:20943859 阅读:28 留言:0更新日期:2019-04-24 02:08
本发明专利技术的实施方式提供了一种控制悬浮窗展示的方法、装置、介质和计算设备。所述方法包括:在应用程序中配置悬浮窗管理器,所述悬浮窗管理器中配置有展示方法,所述展示方法用于控制所述悬浮窗展示于在所述悬浮窗管理器中注册的应用界面中;在所述应用程序中配置注册方法,所述注册方法用于在所述应用程序的至少一个应用界面进入可见状态时在所述悬浮窗管理器中注册所述至少一个应用界面;以及在所述应用程序中配置反注册方法,所述反注册方法用于在所述至少一个应用界面切换为不可见状态时在所述悬浮窗管理器中反注册所述至少一个应用界面。本发明专利技术的方法使得悬浮窗可以展示在应用程序内,而且无需申请任何权限。

Method, device, medium and computing equipment for controlling display of suspension window

The embodiment of the present invention provides a method, device, medium and computing device for controlling the display of suspension window. The method includes: configuring a suspension window manager in an application program with a display method for controlling the display of the suspension window in an application interface registered in the suspension window manager, and configuring a registration method in the application program for importing at least one application interface of the application program. The at least one application interface is registered in the suspension window manager when in the visible state, and an anti-registration method is configured in the application program for anti-registration of the at least one application interface in the suspension window manager when the at least one application interface is switched to an invisible state. The method of the invention enables the suspension window to be displayed in the application program without applying for any permission.

【技术实现步骤摘要】
控制悬浮窗展示的方法、装置、介质和计算设备
本专利技术的实施方式涉及互联网领域,更具体地,本专利技术的实施方式涉及一种控制悬浮窗展示的方法、装置、介质和计算设备。
技术介绍
本部分旨在为权利要求书中陈述的本专利技术的实施方式提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。在终端设备(例如,手机)中,通常会通过悬浮窗对用户进行一些快捷操作的展示。现有技术中,悬浮窗的使用受到了各种限制。目前的应用程序采用的更多的是应用内部的悬浮窗。目前,悬浮窗的实现方式基本包括两种:第一种是通过TYPE_SYSTEM_ALERT类型实现;第二种是通过TYPE_TOAST/TYPE_PHONE类型实现。其中,第一种实现方式因为存在各种限制,不能被众多开发采纳,故而比较流行的悬浮窗实现方式是第二种。然而,第二种实现方式中,在显示悬浮窗时还需要进行权限的申请,而且在很多种机型上,该悬浮窗的实现方式的适配性很差:例如,在安卓7.1.1以上机型,使用该第二种方式实现的悬浮窗仍需要用户主动授予权限;或者,又例如,在魅族、华为、小米等机型上的悬浮窗默认隐藏,需要引导用户打开悬浮窗。
技术实现思路
因此在现有技术中,如何实现减少悬浮窗的权限限制,并适配各种机型是非常令人烦恼的过程。在本上下文中,本专利技术的实施方式期望提供一种适配性强、且不受操作系统的权限限制的控制悬浮窗展示的方法、装置、介质和计算设备。在本专利技术实施方式的第一方面中,提供了一种控制悬浮窗展示的方法。所述方法包括:在应用程序中配置悬浮窗管理器,所述悬浮窗管理器为用于控制所述悬浮窗展示的类,所述悬浮窗管理器中配置有展示方法,所述展示方法用于控制所述悬浮窗展示于在所述悬浮窗管理器中注册的应用界面中;在所述应用程序中配置注册方法,所述注册方法用于在所述应用程序的至少一个应用界面进入可见状态时在所述悬浮窗管理器中注册所述至少一个应用界面;以及在所述应用程序中配置反注册方法,所述反注册方法用于在所述至少一个应用界面切换为不可见状态时在所述悬浮窗管理器中反注册所述至少一个应用界面。在本专利技术的一个实施例中,所述注册方法和所述反注册方法配置于所述应用程序的activity基类中。在本专利技术的另一个实施例中,所述悬浮窗管理器中还配置有创建方法,其中,所述创建方法用于基于第一用户操作,创建所述悬浮窗。在本专利技术的又一个实施例中,所述方法还包括:响应于所述应用程序的第一应用界面的展示,执行所述注册方法,其中所述第一应用界面属于所述至少一个应用界面;判断是否已创建有所述悬浮窗;以及在已创建有所述悬浮窗的情况下,执行所述展示方法以控制所述悬浮窗展示于所述第一应用界面。在本专利技术的又一个实施例中,所述方法还包括:在未创建有所述悬浮窗的情况下,接受所述第一用户操作;响应于所述第一用户操作,执行所述创建方法以创建所述悬浮窗;以及响应于所述悬浮窗的创建,执行所述展示方法以控制所述悬浮窗展示于所述第一应用界面。在本专利技术的又一个实施例中,所述方法还包括响应于所述第一应用界面的退出展示,执行所述反注册方法,以及执行所述展示方法以控制所述悬浮窗从所述第一应用界面移除。在本专利技术的又一个实施例中,所述第一应用界面的退出展示包括将所述第一应用界面切换至所述应用程序的第二应用界面,所述第二应用界面属于所述至少一个应用界面,所述方法还包括响应于所述第二应用界面的展示,执行所述注册方法,以及执行所述展示方法以控制所述悬浮窗展示于所述第二应用界面。在本专利技术的又一个实施例中,所述悬浮窗在所述第二应用界面的展示位置与在所述第一应用界面的展示位置相同。在本专利技术的又一个实施例中,所述悬浮窗管理器中还配置有销毁方法,所述销毁方法用于基于第二用户操作,销毁所述悬浮窗。在本专利技术的又一个实施例中,所述方法还包括接受所述第二用户操作,以及响应于所述第二用户操作,执行所述销毁方法以销毁所述悬浮窗。在本专利技术的再一个实施例中,所述方法还包括:检测对所述悬浮窗的触摸操作;响应于检测到的触摸操作,选中所述悬浮窗;记录所述触摸操作的持续时间;以及,在所述触摸操作的持续时间小于阈值时间的情况下,将所述触摸操作作为点击事件进行处理,或者在所述触摸操作的持续时间大于等于阈值时间的情况下,将所述触摸操作作为触摸事件进行处理。在本专利技术的再一个实施例中,所述在所述触摸操作的持续时间大于等于阈值时间的情况下,将所述触摸操作作为触摸事件进行处理包括:获取所述触摸操作的原始容器坐标,所述原始容器坐标为所述触摸操作在所述触摸操作的起始时刻相对于所述第一应用界面的位置坐标;获取从所述触摸操作的起始时刻到所述触摸操作的终止时刻所述触摸操作的位移;计算所述触摸操作的当前容器坐标,所述当前容器坐标为在所述触摸操作的终止时刻所述触摸操作相对于所述第一应用界面的位置坐标,所述当前容器坐标=所述原始容器坐标+所述位移;以及基于所述当前容器坐标在所述第一应用界面的第二位置展示所述悬浮窗。在本专利技术的再一个实施例中,所述获取从所述触摸操作的起始时刻到所述触摸操作的终止时刻所述触摸操作的位移包括:获取所述触摸操作在所述触摸操作的起始时刻相对于显示屏幕的位置坐标,得到原始屏幕坐标;获取所述触摸操作在所述触摸操作的终止时刻相对于所述显示屏幕的位置坐标,得到当前屏幕坐标;以及计算所述位移,其中,所述位移=所述当前屏幕坐标-所述原始屏幕坐标。在本专利技术的再一个实施例中,所述基于所述当前容器坐标在所述第一应用界面的第二位置展示所述悬浮窗包括:判断所述当前容器坐标中的x坐标处于所述显示屏幕的左侧还是右侧,其中所述x坐标的坐标轴方向与所述显示屏幕的宽度方向一致,所述屏幕的左侧和右侧以所述显示屏幕宽度方向的中线为分界线;当所述x坐标处于所述显示屏幕的左侧时,将所述悬浮窗吸附至所述显示屏幕的左边缘进行展示,或者当所述x坐标处于所述显示屏幕的右侧时,将所述悬浮窗吸附至所述显示屏幕的右边缘进行展示。在本专利技术的再一个实施例中,所述吸附通过位移动画实现。在本专利技术实施方式的第二方面中,提供了一种控制悬浮窗展示的装置,包括管理器配置模块、注册方法配置模块、以及反注册方法配置模块。所述管理器配置模块用于在应用程序中配置悬浮窗管理器,所述悬浮窗管理器为用于控制所述悬浮窗展示的类,所述悬浮窗管理器中配置有展示方法,所述展示方法用于控制所述悬浮窗展示于在所述悬浮窗管理器中注册的应用界面中。所述注册方法配置模块用于在所述应用程序中配置注册方法,所述注册方法用于在所述应用程序的至少一个应用界面进入可见状态时在所述悬浮窗管理器中注册所述至少一个应用界面。所述反注册方法配置模块用于在所述应用程序中配置反注册方法,所述反注册方法用于在所述至少一个应用界面切换为不可见状态时在所述悬浮窗管理器中反注册所述至少一个应用界面。在本专利技术的一个实施例中,所述注册方法和所述反注册方法配置于所述应用程序的activity基类中。在本专利技术的另一个实施例中,所述悬浮窗管理器中还配置有创建方法,其中,所述创建方法用于基于第一用户操作,创建所述悬浮窗。在本专利技术的又一个实施例中,所述装置还包括注册方法执行模块、第一判断模块、以及展示方法执行模块。所述注册方法执行模块用于响应于所述应用程序的第一应用界面的展示,执行所述注册方法,其中所述第一应用界面属于所述至少一个应用本文档来自技高网...

【技术保护点】
1.一种控制悬浮窗展示的方法,包括:在应用程序中配置悬浮窗管理器,所述悬浮窗管理器为用于控制所述悬浮窗展示的类,所述悬浮窗管理器中配置有展示方法,所述展示方法用于控制所述悬浮窗展示于在所述悬浮窗管理器中注册的应用界面中;在所述应用程序中配置注册方法,所述注册方法用于在所述应用程序的至少一个应用界面进入可见状态时在所述悬浮窗管理器中注册所述至少一个应用界面;以及在所述应用程序中配置反注册方法,所述反注册方法用于在所述至少一个应用界面切换为不可见状态时在所述悬浮窗管理器中反注册所述至少一个应用界面。

【技术特征摘要】
1.一种控制悬浮窗展示的方法,包括:在应用程序中配置悬浮窗管理器,所述悬浮窗管理器为用于控制所述悬浮窗展示的类,所述悬浮窗管理器中配置有展示方法,所述展示方法用于控制所述悬浮窗展示于在所述悬浮窗管理器中注册的应用界面中;在所述应用程序中配置注册方法,所述注册方法用于在所述应用程序的至少一个应用界面进入可见状态时在所述悬浮窗管理器中注册所述至少一个应用界面;以及在所述应用程序中配置反注册方法,所述反注册方法用于在所述至少一个应用界面切换为不可见状态时在所述悬浮窗管理器中反注册所述至少一个应用界面。2.根据权利要求1所述的方法,其中,所述悬浮窗管理器中还配置有创建方法,其中,所述创建方法用于基于第一用户操作,创建所述悬浮窗。3.根据权利要求2所述的方法,还包括:响应于所述应用程序的第一应用界面的展示,执行所述注册方法,其中所述第一应用界面属于所述至少一个应用界面;判断是否已创建有所述悬浮窗;以及在已创建有所述悬浮窗的情况下,执行所述展示方法以控制所述悬浮窗展示于所述第一应用界面。4.根据权利要求3所述的方法,还包括:在未创建有所述悬浮窗的情况下,接受所述第一用户操作;响应于所述第一用户操作,执行所述创建方法以创建所述悬浮窗;以及响应于所述悬浮窗的创建,执行所述展示方法以控制所述悬浮窗展示于所述第一应用界面。5.根据权利要求4所述的方法,还包括:响应于所述第一应用界面的退出展示,执行所述反注册方法;以及执行所述展示方法以控制所述悬浮窗从所述第一应用界面移除。6.根据权利要求5所述的方法,其中,所述...

【专利技术属性】
技术研发人员:李云鹏刘棉明盛惠珍
申请(专利权)人:网易传媒科技北京有限公司
类型:发明
国别省市:北京,11

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

1