CN113050900B - 屏幕分享方法、装置、设备及存储介质 - Google Patents
屏幕分享方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN113050900B CN113050900B CN202110287733.8A CN202110287733A CN113050900B CN 113050900 B CN113050900 B CN 113050900B CN 202110287733 A CN202110287733 A CN 202110287733A CN 113050900 B CN113050900 B CN 113050900B
- Authority
- CN
- China
- Prior art keywords
- program
- interface
- acquiring
- log
- preset
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 35
- 238000012545 processing Methods 0.000 claims abstract description 22
- 238000013475 authorization Methods 0.000 claims description 38
- 238000013507 mapping Methods 0.000 claims description 16
- 238000012216 screening Methods 0.000 claims description 16
- 230000005540 biological transmission Effects 0.000 claims description 5
- 238000001514 detection method Methods 0.000 claims description 4
- 238000004378 air conditioning Methods 0.000 claims description 2
- 238000005516 engineering process Methods 0.000 abstract description 3
- 230000006870 function Effects 0.000 description 16
- 238000010586 diagram Methods 0.000 description 5
- 238000000605 extraction Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000003491 array Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
- G06F3/1454—Digital output to display device ; Cooperation and interconnection of the display device with other functional units involving copying of the display data of a local workstation or window to a remote workstation or window so that an actual copy of the data is displayed simultaneously on two or more displays, e.g. teledisplay
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/82—Protecting input, output or interconnection devices
- G06F21/84—Protecting input, output or interconnection devices output devices, e.g. displays or monitors
Abstract
本发明涉及安全防护,提供一种屏幕分享方法、装置、设备及存储介质。该方法能够当接收到屏幕分享请求时,根据所述屏幕分享请求获取待处理程序;获取所述电子设备自身的显示界面,并确定所述待处理程序在所述显示界面中的显示位置;检测所述显示位置上是否有预设界面生成;当检测到所述显示位置上有所述预设界面生成时,确定所述预设界面的触发程序,并确定所述触发程序的分享权限;若所述分享权限为不支持分享所述触发程序,处理所述显示位置上的所述预设界面,得到待分享界面;分享所述待分享界面。本发明能够提高屏幕分享的安全性。此外,本发明还涉及区块链技术,所述待分享界面可存储于区块链中。
Description
技术领域
本发明涉及安全防护技术领域,尤其涉及一种屏幕分享方法、装置、设备及存储介质。
背景技术
随着互联网的发展,通过操作用户分享的区域屏幕能够帮助用户解决问题。在现有的屏幕分享方案中,由于在向第三方分享屏幕时,会向第三方展示用户分享的整个区域屏幕,因此,当区域屏幕上弹出私密信息时,也会将私密信息向第三方展示,造成私密信息的信息泄露,从而导致屏幕分享的安全性较低。
发明内容
鉴于以上内容,有必要提供一种屏幕分享方法、装置、设备及存储介质,本发明能够提高屏幕分享的安全性。
一方面,本发明提出一种屏幕分享方法,应用于电子设备,所述屏幕分享方法包括:
当接收到屏幕分享请求时,根据所述屏幕分享请求获取待处理程序;
获取所述电子设备自身的显示界面,并确定所述待处理程序在所述显示界面中的显示位置;
检测所述显示位置上是否有预设界面生成;
当检测到所述显示位置上有所述预设界面生成时,确定所述预设界面的触发程序,并确定所述触发程序的分享权限;
若所述分享权限为不支持分享所述触发程序,处理所述显示位置上的所述预设界面,得到待分享界面;
分享所述待分享界面。
根据本发明优选实施例,所述确定所述待处理程序在所述显示界面中的显示位置包括:
获取所有日志,并获取所述待处理程序的程序标识;
根据所述程序标识从所述所有日志中提取所述待处理程序的程序日志;
获取所述程序日志的生成时间,并获取当前时间;
计算所述生成时间与所述当前时间的差值,得到间隔时间;
将所述间隔时间最小的程序日志确定为目标日志;
从所述目标日志上提取用于指示位置的信息作为显示坐标,并将与所述显示坐标对应的位置确定为所述显示位置。
根据本发明优选实施例,所述检测所述显示位置上是否有预设界面生成包括:
获取日志时间大于所述当前时间的日志作为初筛日志,所述日志时间是指所述初筛日志的生成时间;
从所述初筛日志中提取与所述显示位置对应的位置日志;
检测所述位置日志中是否包含预设生成指令;
若所述位置日志中包含所述预设生成指令,确定所述显示位置上有所述预设界面生成。
根据本发明优选实施例,所述确定所述触发程序的分享权限包括:
获取所述屏幕分享请求的授权反馈结果;
从所述授权反馈结果中获取授权子程序;
将所述触发程序与所述授权子程序进行比较;
若所述触发程序与所述授权子程序均不相同,确定所述分享权限为不支持分享所述触发程序。
根据本发明优选实施例,所述处理所述显示位置上的所述预设界面,得到待分享界面包括:
获取所述预设界面的基础信息,所述基础信息用于指示所述预设界面的界面大小;
获取与所述基础信息对应的图层;
确定所述预设界面在所述显示位置上的界面位置;
利用所述图层覆盖所述界面位置,得到所述待分享界面。
根据本发明优选实施例,所述根据所述屏幕分享请求获取待处理程序包括:
解析所述屏幕分享请求的报文头,得到所述报文头携带的地址信息;
从所述地址信息中获取指示发送请求的地址作为目标地址;
根据所述目标地址获取所述屏幕分享请求的请求方;
从配置表中获取与所述请求方对应的应用程序作为所述待处理程序,所述配置表中存储有对象与应用程序的映射关系。
根据本发明优选实施例,所述分享所述待分享界面包括:
将与所述目标地址对应的终端确定为请求终端;
获取所述电子设备自身与所述请求终端的连接通道;
通过所述连接通道将所述待分享界面发送至所述请求终端。
另一方面,本发明还提出一种屏幕分享装置,运行于电子设备,所述屏幕分享装置包括:
获取单元,用于当接收到屏幕分享请求时,根据所述屏幕分享请求获取待处理程序;
确定单元,用于获取所述电子设备自身的显示界面,并确定所述待处理程序在所述显示界面中的显示位置;
检测单元,用于检测所述显示位置上是否有预设界面生成;
所述确定单元,还用于当检测到所述显示位置上有所述预设界面生成时,确定所述预设界面的触发程序,并确定所述触发程序的分享权限;
处理单元,用于若所述分享权限为不支持分享所述触发程序,处理所述显示位置上的所述预设界面,得到待分享界面;
分享单元,用于分享所述待分享界面。
另一方面,本发明还提出一种电子设备,所述电子设备包括:
存储器,存储计算机可读指令;及
处理器,执行所述存储器中存储的计算机可读指令以实现所述屏幕分享方法。
另一方面,本发明还提出一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机可读指令,所述计算机可读指令被电子设备中的处理器执行以实现所述屏幕分享方法。
由以上技术方案可以看出,本发明在检测到所述显示位置上有所述预设界面生成时,根据所述触发程序的分享权限处理所述预设界面,能够准确生成所述待分享界面,进而向第三方分享所述待分享界面,由于在向第三方分享所述待分享界面之前,对所述预设界面进行了相应处理,因此,能够避免所述显示位置上弹出的私密信息被泄露,从而提高所述显示界面的安全性,同时,通过与所述界面大小相同的图层覆盖所述预设界面,能够避免需要进行分享的信息被遮挡,从而提高屏幕分享的准确性。
附图说明
图1是本发明屏幕分享方法的较佳实施例的流程图。
图2是本发明屏幕分享装置的较佳实施例的功能模块图。
图3是本发明实现屏幕分享方法的较佳实施例的电子设备的结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。
如图1所示,是本发明屏幕分享方法的较佳实施例的流程图。根据不同的需求,该流程图中步骤的顺序可以改变,某些步骤可以省略。
所述屏幕分享方法应用于一个或者多个电子设备中,所述电子设备是一种能够按照事先设定或存储的计算机可读指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程门阵列(Field-Programmable Gate Array,FPGA)、数字信号处理器(Digital Signal Processor,DSP)、嵌入式设备等。
所述电子设备可以是任何一种可与用户进行人机交互的电子产品,例如,个人计算机、平板电脑、智能手机、个人数字助理(Personal Digital Assistant,PDA)、游戏机、交互式网络电视(Internet Protocol Television,IPTV)、智能穿戴式设备等。
所述电子设备可以包括网络设备和/或用户设备。其中,所述网络设备包括,但不限于单个网络电子设备、多个网络电子设备组成的电子设备组或基于云计算(CloudComputing)的由大量主机或网络电子设备构成的云。
所述电子设备所处的网络包括,但不限于:互联网、广域网、城域网、局域网、虚拟专用网络(Virtual Private Network,VPN)等。
S10,当接收到屏幕分享请求时,根据所述屏幕分享请求获取待处理程序。
在本发明的至少一个实施例中,所述屏幕分享请求可以是在所述电子设备的持有用户开启视频会话后生成的,所述屏幕分享请求还可以是在所述电子设备确定远程操作请求后生成的。所述屏幕分享请求携带的信息包括,但不限于:指示发送请求的标签、目标地址等。
在本发明的至少一个实施例中,所述待处理程序是指所述屏幕分享请求的分享对象,即,除所述待处理程序外,其他应用程序的显示界面均不会进行屏幕分享。所述待处理程序可以是任意应用程序,例如,所述待处理程序可以是微信、QQ等。所述待处理程序上包括多个子程序,不同子程序的处理功能各不相同。
在本发明的至少一个实施例中,所述电子设备根据所述屏幕分享请求获取待处理程序包括:
解析所述屏幕分享请求的报文头,得到所述报文头携带的地址信息;
从所述地址信息中获取指示发送请求的地址作为目标地址;
根据所述目标地址获取所述屏幕分享请求的请求方;
从配置表中获取与所述请求方对应的应用程序作为所述待处理程序,所述配置表中存储有对象与应用程序的映射关系。
其中,所述地址信息包括发送所述屏幕分享请求的地址,以及,接收所述屏幕分享请求的地址。
所述目标地址是指发送所述屏幕分享请求的地址,所述目标地址用于指示所述屏幕分享请求的请求终端。
所述请求方是指所述屏幕分享请求的触发用户。例如,所述请求方可以是后台运维人员,所述请求方也可以是客服。
通过解析所述屏幕分享请求的报文头,由于无需解析整个所述屏幕分享请求,因此,能够提高所述地址信息的获取效率,通过对象与应用程序的映射关系,能够准确的从所述配置表中获取到所述待处理程序。
具体地,所述电子设备根据所述目标地址获取所述屏幕分享请求的请求方包括:
从地址映射表中获取与所述目标地址对应的终端作为请求终端;
将所述请求终端的绑定用户确定为所述请求方。
其中,所述地址映射表中存储有多个地址与多个终端的映射关系。
所述请求方是指所述请求终端的持有用户。
通过所述地址映射表及所述目标地址,能够准确确定出所述请求终端,进而能够准确确定出所述请求方。
S11,获取所述电子设备自身的显示界面,并确定所述待处理程序在所述显示界面中的显示位置。
在本发明的至少一个实施例中,所述显示界面是指与所述电子设备连接的界面,所述显示界面可以有多个,例如,所述电子设备的显示界面有界面1及界面2。
所述显示位置是指所述待处理程序中所有操作进行操作显示的位置。
在本发明的至少一个实施例中,所述电子设备获取所述电子设备自身的显示界面包括:
获取所述电子设备自身的设备标识;
从界面配置表中获取与所述设备标识对应的界面标识;
将与所述界面标识对应的界面确定为所述显示界面。
其中,所述界面配置表中存储有多个设备与其显示界面的映射关系。
通过所述设备标识,能够准确的从所述界面配置表中获取到所述电子设备连接的界面的标识,进一步通过所述界面标识能够准确确定出所述显示界面。
在本发明的至少一个实施例中,所述电子设备确定所述待处理程序在所述显示界面中的显示位置包括:
获取所有日志,并获取所述待处理程序的程序标识;
根据所述程序标识从所述所有日志中提取所述待处理程序的程序日志;
获取所述程序日志的生成时间,并获取当前时间;
计算所述生成时间与所述当前时间的差值,得到间隔时间;
将所述间隔时间最小的程序日志确定为目标日志;
从所述目标日志上提取用于指示位置的信息作为显示坐标,并将与所述显示坐标对应的位置确定为所述显示位置。
其中,所述所有日志是指所述电子设备上的所有操作的日志信息。
所述程序标识是指能够唯一指示所述待处理程序的标识。
所述程序日志是指所述待处理程序上的所有操作的日志信息。
所述目标日志是指是生成时间距离所述当前时间最近的程序日志。
通过所述程序标识能够从所述所有日志中准确筛选出所述程序日志,进而缩小所述目标日志的确定范围,从而提高所述目标日志的确定效率,将所述目标日志上的显示坐标确定为所述显示位置,由于所述目标日志是生成时间距离所述当前时间最近的程序日志,因此能够准确确定出所述显示位置。
S12,检测所述显示位置上是否有预设界面生成。
在本发明的至少一个实施例中,所述预设界面可以是任意弹窗界面,所述预设界面还可以是页面跳转窗口。
在本发明的至少一个实施例中,所述电子设备检测所述显示位置上是否有预设界面生成包括:
获取日志时间大于所述当前时间的日志作为初筛日志,所述日志时间是指所述初筛日志的生成时间;
从所述初筛日志中提取与所述显示位置对应的位置日志;
检测所述位置日志中是否包含预设生成指令;
若所述位置日志中包含所述预设生成指令,确定所述显示位置上有所述预设界面生成。
其中,所述位置日志是指包含所述显示位置的初筛日志。
所述预设生成指令是指用于生成界面的指令,所述预设生成指令对应的程序语言不作限制,例如,所述预设生成指令对应的程序语言可以是JAVA语言,也可以是C语言。
通过上述实施方式,由于所述初筛日志是日志时间大于所述当前时间的日志,因此,能够缩小所述位置日志的提取范围,从而提高所述位置日志的提取效率,通过检测所述位置日志中是否包含所述预设生成指令,能够准确确定出所述显示位置上是否有所述预设界面生成。
S13,当检测到所述显示位置上有所述预设界面生成时,确定所述预设界面的触发程序,并确定所述触发程序的分享权限。
在本发明的至少一个实施例中,所述触发程序是指所述待处理程序中的子程序,例如,所述待处理程序为微信,所述触发程序可以是扫一扫功能,所述触发程序还可以是设置功能,所述触发程序还可以是收藏功能。
所述分享权限是指所述请求方对所述触发程序的权限。例如,所述分享权限可以是不支持分享所述触发程序,所述分享权限也可以是支持分享所述触发程序。
在本发明的至少一个实施例中,所述电子设备确定所述预设界面的触发程序包括:
将包含有所述预设生成指令的位置日志确定为触发日志;
从所述触发日志中获取指示触发主体的信息作为所述触发程序。
通过指示触发主体的标签能够准确的从所述触发日志中获取到所述触发程序。
在本发明的至少一个实施例中,所述电子设备确定所述触发程序的分享权限包括:
获取所述屏幕分享请求的授权反馈结果;
从所述授权反馈结果中获取授权子程序;
将所述触发程序与所述授权子程序进行比较;
若所述触发程序与所述授权子程序均不相同,确定所述分享权限为不支持分享所述触发程序。
其中,所述授权反馈结果是指所述屏幕分享请求的响应结果。
所述授权子程序是指所述待处理程序中的子应用程序。例如,所述待处理程序为微信,所述授权子程序可以是聊天消息。
通过所述授权反馈结果,能够准确获取到与所述屏幕分享请求对应的授权子程序,进而能够准确确定出所述触发程序是否具有对所述屏幕分享请求的分享权限。
S14,若所述分享权限为不支持分享所述触发程序,处理所述显示位置上的所述预设界面,得到待分享界面。
需要强调的是,为进一步保证上述待分享界面的私密和安全性,上述待分享界面还可以存储于一区块链的节点中。
在本发明的至少一个实施例中,所述待分享界面是指对所述预设界面进行覆盖处理后的显示位置上的界面。
在本发明的至少一个实施例中,所述电子设备处理所述显示位置上的所述预设界面,得到待分享界面包括:
获取所述预设界面的基础信息,所述基础信息用于指示所述预设界面的界面大小;
获取与所述基础信息对应的图层;
确定所述预设界面在所述显示位置上的界面位置;
利用所述图层覆盖所述界面位置,得到所述待分享界面。
其中,所述图层是指与所述预设界面的界面大小相同的图像。
通过利用与所述界面大小相同的图层覆盖所述预设界面,能够准确生成所述待分享界面,不仅能够避免所述预设界面中的私密信息的泄露,从而提高屏幕分享的安全性,还能够避免需要进行分享的信息被遮挡,从而提高屏幕分享的准确性。
在本发明的至少一个实施例中,所述方法还包括:
若所述分享权限为支持分享所述触发程序,分享所述显示位置上的所述预设界面。
S15,分享所述待分享界面。
在本发明的至少一个实施例中,所述电子设备分享所述待分享界面包括:
将与所述目标地址对应的终端确定为请求终端;
获取所述电子设备自身与所述请求终端的连接通道;
通过所述连接通道将所述待分享界面发送至所述请求终端。
其中,所述连接通道是指所述电子设备与所述请求终端的连接路径。
通过上述实施方式,能够准确确定出所述屏幕分享请求的请求终端,进而能够准确确定出所述连接通道,进而根据所述连接通道能够准确将所述待分享界面分享至所述请求终端,从而避免了所述待分享界面中界面信息的泄露。
在本发明的至少一个实施例中,所述屏幕分享方法还包括:
当监测到所述显示界面上有预设事件创建时,确定与所述预设事件对应的目标程序;
将所述目标程序与所述授权子程序进行比较;
若所述目标程序与所述授权子程序均不相同,控制所述预设事件停止执行,并根据所述预设事件生成提醒信息。
其中,所述预设事件可以是任意操作。
通过上述实施方式,能够在所述目标程序不具有授权操作时,控制所述预设事件停止执行,避免不具有所述目标程序的执行用户操作所述目标程序,从而提高屏幕分享的安全性,同时,通过生成所述提醒信息能够及时提醒用户。
由以上技术方案可以看出,本发明在检测到所述显示位置上有所述预设界面生成时,根据所述触发程序的分享权限处理所述预设界面,能够准确生成所述待分享界面,进而向第三方分享所述待分享界面,由于在向第三方分享所述待分享界面之前,对所述预设界面进行了相应处理,因此,能够避免所述显示位置上弹出的私密信息被泄露,从而提高所述显示界面的安全性,同时,通过与所述界面大小相同的图层覆盖所述预设界面,能够避免需要进行分享的信息被遮挡,从而提高屏幕分享的准确性。
如图2所示,是本发明屏幕分享装置的较佳实施例的功能模块图。所述屏幕分享装置11包括获取单元110、确定单元111、检测单元112、处理单元113、分享单元114、比较单元115及生成单元116。本发明所称的模块/单元是指一种能够被处理器13所获取,并且能够完成固定功能的一系列计算机可读指令段,其存储在存储器12中。在本实施例中,关于各模块/单元的功能将在后续的实施例中详述。
当接收到屏幕分享请求时,获取单元110根据所述屏幕分享请求获取待处理程序。
在本发明的至少一个实施例中,所述屏幕分享请求可以是在所述电子设备的持有用户开启视频会话后生成的,所述屏幕分享请求还可以是在所述电子设备确定远程操作请求后生成的。所述屏幕分享请求携带的信息包括,但不限于:指示发送请求的标签、目标地址等。
在本发明的至少一个实施例中,所述待处理程序是指所述屏幕分享请求的分享对象,即,除所述待处理程序外,其他应用程序的显示界面均不会进行屏幕分享。所述待处理程序可以是任意应用程序,例如,所述待处理程序可以是微信、QQ等。所述待处理程序上包括多个子程序,不同子程序的处理功能各不相同。
在本发明的至少一个实施例中,所述获取单元110根据所述屏幕分享请求获取待处理程序包括:
解析所述屏幕分享请求的报文头,得到所述报文头携带的地址信息;
从所述地址信息中获取指示发送请求的地址作为目标地址;
根据所述目标地址获取所述屏幕分享请求的请求方;
从配置表中获取与所述请求方对应的应用程序作为所述待处理程序,所述配置表中存储有对象与应用程序的映射关系。
其中,所述地址信息包括发送所述屏幕分享请求的地址,以及,接收所述屏幕分享请求的地址。
所述目标地址是指发送所述屏幕分享请求的地址,所述目标地址用于指示所述屏幕分享请求的请求终端。
所述请求方是指所述屏幕分享请求的触发用户。例如,所述请求方可以是后台运维人员,所述请求方也可以是客服。
通过解析所述屏幕分享请求的报文头,由于无需解析整个所述屏幕分享请求,因此,能够提高所述地址信息的获取效率,通过对象与应用程序的映射关系,能够准确的从所述配置表中获取到所述待处理程序。
具体地,所述获取单元110根据所述目标地址获取所述屏幕分享请求的请求方包括:
从地址映射表中获取与所述目标地址对应的终端作为请求终端;
将所述请求终端的绑定用户确定为所述请求方。
其中,所述地址映射表中存储有多个地址与多个终端的映射关系。
所述请求方是指所述请求终端的持有用户。
通过所述地址映射表及所述目标地址,能够准确确定出所述请求终端,进而能够准确确定出所述请求方。
确定单元111获取所述电子设备自身的显示界面,并确定所述待处理程序在所述显示界面中的显示位置。
在本发明的至少一个实施例中,所述显示界面是指与所述电子设备连接的界面,所述显示界面可以有多个,例如,所述电子设备的显示界面有界面1及界面2。
所述显示位置是指所述待处理程序中所有操作进行操作显示的位置。
在本发明的至少一个实施例中,所述确定单元111获取所述电子设备自身的显示界面包括:
获取所述电子设备自身的设备标识;
从界面配置表中获取与所述设备标识对应的界面标识;
将与所述界面标识对应的界面确定为所述显示界面。
其中,所述界面配置表中存储有多个设备与其显示界面的映射关系。
通过所述设备标识,能够准确的从所述界面配置表中获取到所述电子设备连接的界面的标识,进一步通过所述界面标识能够准确确定出所述显示界面。
在本发明的至少一个实施例中,所述确定单元111确定所述待处理程序在所述显示界面中的显示位置包括:
获取所有日志,并获取所述待处理程序的程序标识;
根据所述程序标识从所述所有日志中提取所述待处理程序的程序日志;
获取所述程序日志的生成时间,并获取当前时间;
计算所述生成时间与所述当前时间的差值,得到间隔时间;
将所述间隔时间最小的程序日志确定为目标日志;
从所述目标日志上提取用于指示位置的信息作为显示坐标,并将与所述显示坐标对应的位置确定为所述显示位置。
其中,所述所有日志是指所述电子设备上的所有操作的日志信息。
所述程序标识是指能够唯一指示所述待处理程序的标识。
所述程序日志是指所述待处理程序上的所有操作的日志信息。
所述目标日志是指是生成时间距离所述当前时间最近的程序日志。
通过所述程序标识能够从所述所有日志中准确筛选出所述程序日志,进而缩小所述目标日志的确定范围,从而提高所述目标日志的确定效率,将所述目标日志上的显示坐标确定为所述显示位置,由于所述目标日志是生成时间距离所述当前时间最近的程序日志,因此能够准确确定出所述显示位置。
检测单元112检测所述显示位置上是否有预设界面生成。
在本发明的至少一个实施例中,所述预设界面可以是任意弹窗界面,所述预设界面还可以是页面跳转窗口。
在本发明的至少一个实施例中,所述检测单元112检测所述显示位置上是否有预设界面生成包括:
获取日志时间大于所述当前时间的日志作为初筛日志,所述日志时间是指所述初筛日志的生成时间;
从所述初筛日志中提取与所述显示位置对应的位置日志;
检测所述位置日志中是否包含预设生成指令;
若所述位置日志中包含所述预设生成指令,确定所述显示位置上有所述预设界面生成。
其中,所述位置日志是指包含所述显示位置的初筛日志。
所述预设生成指令是指用于生成界面的指令,所述预设生成指令对应的程序语言不作限制,例如,所述预设生成指令对应的程序语言可以是JAVA语言,也可以是C语言。
通过上述实施方式,由于所述初筛日志是日志时间大于所述当前时间的日志,因此,能够缩小所述位置日志的提取范围,从而提高所述位置日志的提取效率,通过检测所述位置日志中是否包含所述预设生成指令,能够准确确定出所述显示位置上是否有所述预设界面生成。
当检测到所述显示位置上有所述预设界面生成时,所述确定单元111确定所述预设界面的触发程序,并确定所述触发程序的分享权限。
在本发明的至少一个实施例中,所述触发程序是指所述待处理程序中的子程序,例如,所述待处理程序为微信,所述触发程序可以是扫一扫功能,所述触发程序还可以是设置功能,所述触发程序还可以是收藏功能。
所述分享权限是指所述请求方对所述触发程序的权限。例如,所述分享权限可以是不支持分享所述触发程序,所述分享权限也可以是支持分享所述触发程序。
在本发明的至少一个实施例中,所述确定单元111确定所述预设界面的触发程序包括:
将包含有所述预设生成指令的位置日志确定为触发日志;
从所述触发日志中获取指示触发主体的信息作为所述触发程序。
通过指示触发主体的标签能够准确的从所述触发日志中获取到所述触发程序。
在本发明的至少一个实施例中,所述确定单元111确定所述触发程序的分享权限包括:
获取所述屏幕分享请求的授权反馈结果;
从所述授权反馈结果中获取授权子程序;
将所述触发程序与所述授权子程序进行比较;
若所述触发程序与所述授权子程序均不相同,确定所述分享权限为不支持分享所述触发程序。
其中,所述授权反馈结果是指所述屏幕分享请求的响应结果。
所述授权子程序是指所述待处理程序中的子应用程序。例如,所述待处理程序为微信,所述授权子程序可以是聊天消息。
通过所述授权反馈结果,能够准确获取到与所述屏幕分享请求对应的授权子程序,进而能够准确确定出所述触发程序是否具有对所述屏幕分享请求的分享权限。
若所述分享权限为不支持分享所述触发程序,处理单元113处理所述显示位置上的所述预设界面,得到待分享界面。
需要强调的是,为进一步保证上述待分享界面的私密和安全性,上述待分享界面还可以存储于一区块链的节点中。
在本发明的至少一个实施例中,所述待分享界面是指对所述预设界面进行覆盖处理后的显示位置上的界面。
在本发明的至少一个实施例中,所述处理单元113处理所述显示位置上的所述预设界面,得到待分享界面包括:
获取所述预设界面的基础信息,所述基础信息用于指示所述预设界面的界面大小;
获取与所述基础信息对应的图层;
确定所述预设界面在所述显示位置上的界面位置;
利用所述图层覆盖所述界面位置,得到所述待分享界面。
其中,所述图层是指与所述预设界面的界面大小相同的图像。
通过利用与所述界面大小相同的图层覆盖所述预设界面,能够准确生成所述待分享界面,不仅能够避免所述预设界面中的私密信息的泄露,从而提高屏幕分享的安全性,还能够避免需要进行分享的信息被遮挡,从而提高屏幕分享的准确性。
在本发明的至少一个实施例中,若所述分享权限为支持分享所述触发程序,分享单元114分享所述显示位置上的所述预设界面。
所述分享单元114分享所述待分享界面。
在本发明的至少一个实施例中,所述分享单元114分享所述待分享界面包括:
将与所述目标地址对应的终端确定为请求终端;
获取所述电子设备自身与所述请求终端的连接通道;
通过所述连接通道将所述待分享界面发送至所述请求终端。
其中,所述连接通道是指所述电子设备与所述请求终端的连接路径。
通过上述实施方式,能够准确确定出所述屏幕分享请求的请求终端,进而能够准确确定出所述连接通道,进而根据所述连接通道能够准确将所述待分享界面分享至所述请求终端,从而避免了所述待分享界面中界面信息的泄露。
在本发明的至少一个实施例中,当监测到所述显示界面上有预设事件创建时,所述确定单元111确定与所述预设事件对应的目标程序;
比较单元115将所述目标程序与所述授权子程序进行比较;
若所述目标程序与所述授权子程序均不相同,生成单元116控制所述预设事件停止执行,并根据所述预设事件生成提醒信息。
其中,所述预设事件可以是任意操作。
通过上述实施方式,能够在所述目标程序不具有授权操作时,控制所述预设事件停止执行,避免不具有所述目标程序的执行用户操作所述目标程序,从而提高屏幕分享的安全性,同时,通过生成所述提醒信息能够及时提醒用户。
由以上技术方案可以看出,本发明在检测到所述显示位置上有所述预设界面生成时,根据所述触发程序的分享权限处理所述预设界面,能够准确生成所述待分享界面,进而向第三方分享所述待分享界面,由于在向第三方分享所述待分享界面之前,对所述预设界面进行了相应处理,因此,能够避免所述显示位置上弹出的私密信息被泄露,从而提高所述显示界面的安全性,同时,通过与所述界面大小相同的图层覆盖所述预设界面,能够避免需要进行分享的信息被遮挡,从而提高屏幕分享的准确性。
如图3所示,是本发明实现屏幕分享方法的较佳实施例的电子设备的结构示意图。
在本发明的一个实施例中,所述电子设备1包括,但不限于,存储器12、处理器13,以及存储在所述存储器12中并可在所述处理器13上运行的计算机可读指令,例如屏幕分享程序。
本领域技术人员可以理解,所述示意图仅仅是电子设备1的示例,并不构成对电子设备1的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述电子设备1还可以包括输入输出设备、网络接入设备、总线等。
所述处理器13可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器13是所述电子设备1的运算核心和控制中心,利用各种接口和线路连接整个电子设备1的各个部分,及执行所述电子设备1的操作系统以及安装的各类应用程序、程序代码等。
示例性的,所述计算机可读指令可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器12中,并由所述处理器13执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机可读指令段,该计算机可读指令段用于描述所述计算机可读指令在所述电子设备1中的执行过程。例如,所述计算机可读指令可以被分割成获取单元110、确定单元111、检测单元112、处理单元113、分享单元114、比较单元115及生成单元116。
所述存储器12可用于存储所述计算机可读指令和/或模块,所述处理器13通过运行或执行存储在所述存储器12内的计算机可读指令和/或模块,以及调用存储在存储器12内的数据,实现所述电子设备1的各种功能。所述存储器12可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据电子设备的使用所创建的数据等。存储器12可以包括非易失性和易失性存储器,例如:硬盘、内存、插接式硬盘,智能存储卡(SmartMedia Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他存储器件。
所述存储器12可以是电子设备1的外部存储器和/或内部存储器。进一步地,所述存储器12可以是具有实物形式的存储器,如内存条、TF卡(Trans-flash Card)等等。
所述电子设备1集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机可读指令来指令相关的硬件来完成,所述的计算机可读指令可存储于一计算机可读存储介质中,该计算机可读指令在被处理器执行时,可实现上述各个方法实施例的步骤。
其中,所述计算机可读指令包括计算机可读指令代码,所述计算机可读指令代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机可读指令代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)。
本发明所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
结合图1,所述电子设备1中的所述存储器12存储计算机可读指令实现一种屏幕分享方法,所述处理器13可执行所述计算机可读指令从而实现:
当接收到屏幕分享请求时,根据所述屏幕分享请求获取待处理程序;
获取所述电子设备自身的显示界面,并确定所述待处理程序在所述显示界面中的显示位置;
检测所述显示位置上是否有预设界面生成;
当检测到所述显示位置上有所述预设界面生成时,确定所述预设界面的触发程序,并确定所述触发程序的分享权限;
若所述分享权限为不支持分享所述触发程序,处理所述显示位置上的所述预设界面,得到待分享界面;
分享所述待分享界面。
具体地,所述处理器13对上述计算机可读指令的具体实现方法可参考图1对应实施例中相关步骤的描述,在此不赘述。
在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
所述计算机可读存储介质上存储有计算机可读指令,其中,所述计算机可读指令被处理器13执行时用以实现以下步骤:
当接收到屏幕分享请求时,根据所述屏幕分享请求获取待处理程序;
获取所述电子设备自身的显示界面,并确定所述待处理程序在所述显示界面中的显示位置;
检测所述显示位置上是否有预设界面生成;
当检测到所述显示位置上有所述预设界面生成时,确定所述预设界面的触发程序,并确定所述触发程序的分享权限;
若所述分享权限为不支持分享所述触发程序,处理所述显示位置上的所述预设界面,得到待分享界面;
分享所述待分享界面。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附关联图标记视为限制所涉及的权利要求。
此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。所述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一、第二等词语用来表示名称,而并不表示任何特定的顺序。
最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。
Claims (9)
1.一种屏幕分享方法,应用于电子设备,其特征在于,所述屏幕分享方法包括:
当接收到屏幕分享请求时,根据所述屏幕分享请求获取待处理程序;
获取所述电子设备自身的显示界面,并确定所述待处理程序在所述显示界面中的显示位置,包括:获取所有日志,并获取所述待处理程序的程序标识;根据所述程序标识从所述所有日志中提取所述待处理程序的程序日志;获取所述程序日志的生成时间,并获取当前时间;计算所述生成时间与所述当前时间的差值,得到间隔时间;将所述间隔时间最小的程序日志确定为目标日志;从所述目标日志上提取用于指示位置的信息作为显示坐标,并将与所述显示坐标对应的位置确定为所述显示位置,所述显示位置是指所述待处理程序中所有操作进行操作显示的位置;
检测所述显示位置上是否有预设界面生成;
当检测到所述显示位置上有所述预设界面生成时,确定所述预设界面的触发程序,并确定所述触发程序的分享权限;
若所述分享权限为不支持分享所述触发程序,处理所述显示位置上的所述预设界面,得到待分享界面;
分享所述待分享界面;
当监测到所述显示界面上有预设事件创建时,确定与所述预设事件对应的目标程序;
将所述目标程序与授权子程序进行比较;
若所述目标程序与所述授权子程序均不相同,控制所述预设事件停止执行,并根据所述预设事件生成提醒信息。
2.如权利要求1所述的屏幕分享方法,其特征在于,所述检测所述显示位置上是否有预设界面生成包括:
获取日志时间大于所述当前时间的日志作为初筛日志,所述日志时间是指所述初筛日志的生成时间;
从所述初筛日志中提取与所述显示位置对应的位置日志;
检测所述位置日志中是否包含预设生成指令;
若所述位置日志中包含所述预设生成指令,确定所述显示位置上有所述预设界面生成。
3.如权利要求1所述的屏幕分享方法,其特征在于,所述确定所述触发程序的分享权限包括:
获取所述屏幕分享请求的授权反馈结果;
从所述授权反馈结果中获取授权子程序;
将所述触发程序与所述授权子程序进行比较;
若所述触发程序与所述授权子程序均不相同,确定所述分享权限为不支持分享所述触发程序。
4.如权利要求1所述的屏幕分享方法,其特征在于,所述处理所述显示位置上的所述预设界面,得到待分享界面包括:
获取所述预设界面的基础信息,所述基础信息用于指示所述预设界面的界面大小;
获取与所述基础信息对应的图层;
确定所述预设界面在所述显示位置上的界面位置;
利用所述图层覆盖所述界面位置,得到所述待分享界面。
5.如权利要求1所述的屏幕分享方法,其特征在于,所述根据所述屏幕分享请求获取待处理程序包括:
解析所述屏幕分享请求的报文头,得到所述报文头携带的地址信息;
从所述地址信息中获取指示发送请求的地址作为目标地址;
根据所述目标地址获取所述屏幕分享请求的请求方;
从配置表中获取与所述请求方对应的应用程序作为所述待处理程序,所述配置表中存储有对象与应用程序的映射关系。
6.如权利要求5所述的屏幕分享方法,其特征在于,所述分享所述待分享界面包括:
将与所述目标地址对应的终端确定为请求终端;
获取所述电子设备自身与所述请求终端的连接通道;
通过所述连接通道将所述待分享界面发送至所述请求终端。
7.一种屏幕分享装置,运行于电子设备,其特征在于,所述屏幕分享装置包括:
获取单元,用于当接收到屏幕分享请求时,根据所述屏幕分享请求获取待处理程序;
确定单元,用于获取所述电子设备自身的显示界面,并确定所述待处理程序在所述显示界面中的显示位置,包括:获取所有日志,并获取所述待处理程序的程序标识;根据所述程序标识从所述所有日志中提取所述待处理程序的程序日志;获取所述程序日志的生成时间,并获取当前时间;计算所述生成时间与所述当前时间的差值,得到间隔时间;将所述间隔时间最小的程序日志确定为目标日志;从所述目标日志上提取用于指示位置的信息作为显示坐标,并将与所述显示坐标对应的位置确定为所述显示位置,所述显示位置是指所述待处理程序中所有操作进行操作显示的位置;
检测单元,用于检测所述显示位置上是否有预设界面生成;
所述确定单元,还用于当检测到所述显示位置上有所述预设界面生成时,确定所述预设界面的触发程序,并确定所述触发程序的分享权限;
处理单元,用于若所述分享权限为不支持分享所述触发程序,处理所述显示位置上的所述预设界面,得到待分享界面;
分享单元,用于分享所述待分享界面;
所述确定单元,还用于当监测到所述显示界面上有预设事件创建时,确定与所述预设事件对应的目标程序;
比较单元,用于将所述目标程序与授权子程序进行比较;
生成单元,用于若所述目标程序与所述授权子程序均不相同,控制所述预设事件停止执行,并根据所述预设事件生成提醒信息。
8.一种电子设备,其特征在于,所述电子设备包括:
存储器,存储有计算机可读指令;及
处理器,执行所述存储器中存储的计算机可读指令以实现如权利要求1至6中任意一项所述的屏幕分享方法。
9.一种计算机可读存储介质,其特征在于:所述计算机可读存储介质中存储有计算机可读指令,所述计算机可读指令被电子设备中的处理器执行以实现如权利要求1至6中任意一项所述的屏幕分享方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110287733.8A CN113050900B (zh) | 2021-03-17 | 2021-03-17 | 屏幕分享方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110287733.8A CN113050900B (zh) | 2021-03-17 | 2021-03-17 | 屏幕分享方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113050900A CN113050900A (zh) | 2021-06-29 |
CN113050900B true CN113050900B (zh) | 2024-01-23 |
Family
ID=76513206
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110287733.8A Active CN113050900B (zh) | 2021-03-17 | 2021-03-17 | 屏幕分享方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113050900B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111767554B (zh) * | 2020-06-01 | 2024-02-20 | Oppo(重庆)智能科技有限公司 | 屏幕分享方法、装置、存储介质及电子设备 |
CN113608810B (zh) * | 2021-08-06 | 2024-03-08 | 亿咖通(湖北)技术有限公司 | 应用分享方法、装置、设备、系统及存储介质 |
CN115277174A (zh) * | 2022-07-25 | 2022-11-01 | 中移互联网有限公司 | 屏幕共享方法、装置、计算机设备及存储介质 |
CN117676006A (zh) * | 2022-08-31 | 2024-03-08 | 中兴通讯股份有限公司 | 显示方法、装置、终端、电子设备和存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019071872A1 (zh) * | 2017-10-09 | 2019-04-18 | 华为技术有限公司 | 一种文件分享方法及终端 |
CN110378145A (zh) * | 2019-06-10 | 2019-10-25 | 华为技术有限公司 | 一种分享内容的方法和电子设备 |
CN112241327A (zh) * | 2019-07-17 | 2021-01-19 | 腾讯科技(深圳)有限公司 | 分享信息处理方法、装置、存储介质与电子设备 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9591090B2 (en) * | 2011-08-22 | 2017-03-07 | Salesforce.Com, Inc. | Computer implemented methods and apparatus for sharing data of an information feed of an online social network |
US9514333B1 (en) * | 2014-12-16 | 2016-12-06 | Amazon Technologies, Inc. | Secure remote application shares |
-
2021
- 2021-03-17 CN CN202110287733.8A patent/CN113050900B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019071872A1 (zh) * | 2017-10-09 | 2019-04-18 | 华为技术有限公司 | 一种文件分享方法及终端 |
CN110622487A (zh) * | 2017-10-09 | 2019-12-27 | 华为技术有限公司 | 一种文件分享方法及终端 |
CN110378145A (zh) * | 2019-06-10 | 2019-10-25 | 华为技术有限公司 | 一种分享内容的方法和电子设备 |
CN112241327A (zh) * | 2019-07-17 | 2021-01-19 | 腾讯科技(深圳)有限公司 | 分享信息处理方法、装置、存储介质与电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN113050900A (zh) | 2021-06-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113050900B (zh) | 屏幕分享方法、装置、设备及存储介质 | |
CN112541009B (zh) | 数据查询方法、装置、电子设备及存储介质 | |
CN112669138A (zh) | 数据处理方法及相关设备 | |
CN111984601A (zh) | 日志文件删除方法、装置、电子设备及存储介质 | |
US10892901B1 (en) | Facial data collection and verification | |
CN112528274A (zh) | 数据处理方法、装置、电子设备及存储介质 | |
CN111796936A (zh) | 请求处理方法、装置、电子设备及介质 | |
CN112134968A (zh) | 域名访问方法、装置、电子设备及存储介质 | |
CN112711696A (zh) | 请求访问方法、装置、电子设备及存储介质 | |
CN112784566A (zh) | 单证生成方法、装置、设备及存储介质 | |
CN112948418A (zh) | 动态查询方法、装置、设备及存储介质 | |
CN115037790B (zh) | 异常注册识别方法、装置、设备及存储介质 | |
CN111277626A (zh) | 服务器升级方法、装置、电子设备及介质 | |
CN112181485B (zh) | 脚本执行方法、装置、电子设备及存储介质 | |
CN116360769A (zh) | 代码生成方法、装置、设备及存储介质 | |
CN112738175B (zh) | 请求处理方法及相关设备 | |
CN112817742B (zh) | 数据迁移方法、装置、设备及存储介质 | |
CN112685706A (zh) | 请求鉴权方法及相关设备 | |
CN111933241B (zh) | 医疗数据解析方法、装置、电子设备及存储介质 | |
CN114003784A (zh) | 请求录制方法、装置、设备及存储介质 | |
CN112819305A (zh) | 业务指标分析方法、装置、设备及存储介质 | |
CN112434237A (zh) | 页面加载方法、装置、电子设备及存储介质 | |
CN111680483A (zh) | 单证模板更新方法、装置、电子设备及介质 | |
CN112527830A (zh) | 数据查询方法、装置、设备及存储介质 | |
CN112667721A (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 |