掌桥专利:专业的专利平台
掌桥专利
首页

屏幕画面分享方法和装置、存储介质及电子设备

文献发布时间:2024-04-18 19:58:53


屏幕画面分享方法和装置、存储介质及电子设备

技术领域

本发明涉及网络直播技术领域,具体而言,涉及一种屏幕画面分享方法和装置、存储介质及电子设备。

背景技术

随着网络直播行业的发展和网络主播数量的日益增多,主播客户端将大量的网络直播视频流分享给大量用户客户端,以供用户随时观看。例如,主播客户端将大量的游戏直播画面、购物直播画面或者美食直播画面等发送给用户客户端。

相关技术中,将主播客户端的屏幕画面分享给用户客户端的实现方式为:通过API接口的方式获取主播客户端的屏幕画面,并将获取到的屏幕画面经由第三方服务平台直接分发给用户客户端,在用户客户端中显示主播客户端的屏幕画面。

然而,在直播过程中,主播客户端的屏幕画面中经常会出现隐私信息,例如,银行账号和密码、聊天通知、验证信息等,如果采用上述屏幕画面分享方法中直接将主播客户端的隐私信息分发给用户客户端,将会泄露主播的个人隐私,从而造成了在屏幕分享过程中出现的隐私信息泄露的技术问题。

针对上述的问题,目前尚未提出有效的解决方案。

发明内容

本发明实施例提供了一种屏幕画面分享方法和装置、存储介质及电子设备,以至少解决在屏幕分享过程中出现的隐私信息泄露的技术问题。

根据本发明实施例的一个方面,提供了一种屏幕画面分享方法,包括:在目标终端的屏幕上显示目标屏幕画面时,确定目标屏幕画面是否为待隐私保护的屏幕画面,其中,目标屏幕画面是目标直播应用待分享给目标观看账号的屏幕画面,目标直播应用运行在目标终端上,目标观看账号是目标直播应用进行当前直播时的观看账号;在确定出目标屏幕画面为待隐私保护的屏幕画面的情况下,对目标屏幕画面中的隐私信息进行加密处理,得到加密屏幕画面,其中,隐私信息在加密屏幕画面中处于不可见状态;将加密屏幕画面通过目标直播应用传输给目标观看账号进行显示。

可选地,在目标终端的屏幕上显示目标屏幕画面时,确定目标屏幕画面是否为待隐私保护的屏幕画面,包括:在目标终端的屏幕上显示目标屏幕画面时,根据在目标终端中检测到的目标事件,确定目标屏幕画面是否为待隐私保护的屏幕画面,其中,目标屏幕画面是目标事件触发的屏幕画面;和/或在目标终端的屏幕上显示目标屏幕画面时,根据目标终端的顶层窗口信息,确定目标屏幕画面是否为待隐私保护的屏幕画面,其中,顶层窗口信息用于指示在目标终端的顶层显示的目标窗口,目标窗口是目标应用的窗口。

可选地,上述在目标终端的屏幕上显示目标屏幕画面时,根据目标终端的顶层窗口信息,确定目标屏幕画面是否为待隐私保护的屏幕画面,包括:在目标终端的屏幕上显示目标屏幕画面时,获取目标终端的顶层窗口信息,并获取与顶层窗口信息对应的目标应用的特征信息;将目标应用的特征信息与预定的隐私保护规则进行匹配;在目标应用的特征信息满足隐私保护规则中的目标命名规则的情况下,将目标屏幕画面确定为待隐私保护的屏幕画面。

可选地,上述获取目标终端的顶层窗口信息,并获取与顶层窗口信息对应的目标应用的特征信息,包括:通过预先注册的生命周期回调函数,获取目标终端的操作系统发送的系统通知消息,其中,系统通知消息用于指示目标终端的顶层窗口信息以及目标应用的特征信息,生命周期回调函数是在创建操作系统的系统进程时注册的函数;获取系统通知消息指示的目标终端的顶层窗口信息以及目标应用的特征信息。

可选地,上述在目标终端的屏幕上显示目标屏幕画面时,根据在目标终端中检测到的目标事件,确定目标屏幕画面是否为待隐私保护的屏幕画面,包括:在目标终端的屏幕上显示目标屏幕画面、且目标屏幕画面是目标事件触发的屏幕画面时,获取目标事件对应的目标文本信息,其中,目标事件是在目标终端中检测到的事件;将目标文本信息与预定的隐私保护规则进行匹配;在目标文本信息中的字段满足隐私保护规则中的目标文本规则的情况下,将目标屏幕画面确定为待隐私保护的屏幕画面。

可选地,上述在目标终端的屏幕上显示目标屏幕画面时,根据在目标终端中检测到的目标事件,确定目标屏幕画面是否为待隐私保护的屏幕画面,还包括:在目标终端的屏幕上显示目标屏幕画面、且目标屏幕画面是目标事件触发的屏幕画面时,获取目标事件对应的目标事件路径,其中,目标事件是在目标终端中检测到的事件;将目标事件路径与预定的隐私保护规则进行匹配;在目标事件路径满足隐私保护规则中的目标路径规则的情况下,获取目标事件对应的目标文本信息,并将目标文本信息与预定的隐私保护规则进行匹配;在目标文本信息中的字段满足隐私保护规则中的目标文本规则的情况下,将目标屏幕画面确定为待隐私保护的屏幕画面。

可选地,上述获取目标事件对应的目标文本信息,包括以下至少一种:在目标事件用于表示目标终端上的通知栏发生变化的情况下,获取目标终端上变化后的通知栏中的信息,其中,目标文本信息包括变化后的通知栏中的信息;在目标事件用于表示目标终端上的窗口发生变化的情况下,获取目标终端上变化后的窗口中的信息,其中,目标文本信息包括变化后的窗口中的信息。

可选地,上述获取目标事件对应的目标文本信息,包括:通过目标终端上运行的目标进程,获取目标事件对应的目标文本信息,其中,目标进程是目标终端的操作系统中的目标能力层的事件分发出口。

可选地,上述在目标终端的屏幕上显示目标屏幕画面时,根据目标终端的顶层窗口信息,确定目标屏幕画面是否为待隐私保护的屏幕画面,包括:在目标终端的屏幕上显示目标屏幕画面时,获取目标终端的顶层窗口信息,并获取与顶层窗口信息对应的目标应用的特征信息;将目标应用的特征信息与预定的隐私保护规则进行匹配;在目标应用的特征信息满足隐私保护规则中的目标命名规则的情况下,获取在目标应用中驻留的驻留时长,在驻留时长小于或等于预设的第一时长阈值的情况下,将目标屏幕画面确定为待隐私保护的屏幕画面;或者,在目标应用的特征信息满足隐私保护规则中的目标命名规则的情况下,获取在目标应用中执行目标操作的持续时长,在持续时长小于或等于预设的第二时长阈值的情况下,将目标屏幕画面确定为待隐私保护的屏幕画面。

可选地,上述在目标终端的屏幕上显示目标屏幕画面时,确定目标屏幕画面是否为待隐私保护的屏幕画面,包括:以并行的方式执行以下步骤,以确定目标屏幕画面是否为待隐私保护的屏幕画面:在目标终端的屏幕上显示目标屏幕画面时,获取目标终端的顶层窗口信息,并获取与顶层窗口信息对应的目标应用的特征信息,其中,顶层窗口信息用于指示在目标终端的顶层显示的目标窗口,目标窗口是目标应用的窗口;将目标应用的特征信息与预定的隐私保护规则进行匹配;根据匹配的结果,确定目标屏幕画面是否为待隐私保护的屏幕画面;在目标终端的屏幕上显示目标屏幕画面、且目标屏幕画面是目标事件触发的屏幕画面时,获取目标事件对应的目标文本信息,其中,目标事件是在目标终端中检测到的事件;将目标文本信息与预定的隐私保护规则进行匹配;根据匹配的结果,确定目标屏幕画面是否为待隐私保护的屏幕画面。

可选地,上述方法还包括:获取隐私保护规则,并将隐私保护规则保存在目标终端的操作系统中的本地文件中,其中,本地文件与在目标直播应用的文件不同,隐私保护规则被设置于允许被目标终端上的多个直播应用调用,多个直播应用包括目标直播应用。

可选地,上述对目标屏幕画面中的隐私信息进行加密处理,得到加密屏幕画面,包括:获取目标屏幕画面中隐私信息所在的目标区域;将与目标区域对应的隐私保护画面叠加在目标屏幕画面的上面,得到加密屏幕画面,其中,隐私保护画面用于遮挡目标区域上的隐私信息。

根据本发明实施例的另一方面,还提供了一种屏幕画面分享装置,包括:第一处理单元,用于在目标终端的屏幕上显示目标屏幕画面时,确定目标屏幕画面是否为待隐私保护的屏幕画面,其中,目标屏幕画面是目标直播应用待分享给目标观看账号的屏幕画面,目标直播应用运行在目标终端上,目标观看账号是目标直播应用进行当前直播时的观看账号;加密单元,用于在确定出目标屏幕画面为待隐私保护的屏幕画面的情况下,对目标屏幕画面中的隐私信息进行加密处理,得到加密屏幕画面,其中,隐私信息在加密屏幕画面中处于不可见状态;第一传输单元,用于将加密屏幕画面通过目标直播应用传输给目标观看账号进行显示。

根据本发明实施例的又一方面,还提供了一种计算机可读的存储介质,该计算机可读的存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述屏幕画面分享方法。

根据本发明实施例的又一方面,还提供了一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现上述方法的步骤。

根据本发明实施例的又一方面,还提供了一种电子设备,包括存储器和处理器,上述存储器中存储有计算机程序,上述处理器被设置为通过计算机程序执行上述屏幕画面分享方法。

在本发明实施例中,在将目标直播应用的目标屏幕画面分享给目标观看账号之前,判断待分享的目标屏幕画面中是否存在隐私信息,在确定存在隐私信息的情况下,通过对隐私信息进行加密处理,得到加密屏幕画面,并将加密屏幕画面传输给目标观看账号进行显示。换言之,通过对目标屏幕画面中的隐私信息进行加密处理,使得隐私信息在加密屏幕画面中为不可见状态,确保了目标直播账号的隐私信息不被泄露,从而解决了在屏幕分享过程中出现的隐私信息泄露的技术问题,实现了提高隐私信息安全性的技术效果。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是根据本发明实施例的一种可选的屏幕画面分享方法的应用场景示意图;

图2是根据本发明实施例的一种可选的屏幕画面分享方法的流程图;

图3是根据本发明实施例的一种可选的用于实现屏幕画面分享方法的系统架构图;

图4是根据本发明实施例的一种可选的屏幕隐私特征提取的流程图;

图5是根据本发明实施例的一种系统基础能力的示意图;

图6是根据本发明实施例的一种可选的屏幕隐私信息的加密处理的产品界面图;

图7是根据本发明实施例的一种可选的待隐私保护的屏幕画面的确定过程的示意图;

图8是根据本发明实施例的另一种可选的待隐私保护的屏幕画面的确定过程的示意图;

图9是根据本发明实施例的又一种可选的待隐私保护的屏幕画面的确定过程的示意图;

图10是根据本发明实施例的一种可选的存储及调用隐私保护规则的示意图;

图11是根据本发明实施例的一种可选的通过应用层确定隐私保护规则的流程图;

图12是根据本发明实施例的一种可选的屏幕画面分享方法的整体流程图;

图13是根据本发明实施例的一种可选的屏幕画面分享装置的结构示意图;

图14是根据本发明实施例的一种可选的电子设备的结构示意图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

首先,对本发明实施例中使用或相关的术语进行如下描述,可以理解的是以下描述是术语的一种解释而不是唯一解释:

UI:User Interface,用户界面。

App:Application,应用程序。

SDK:Software Development Kit,软件开发包。

AccessibilityService:安卓系统中的无障碍模式的能力层,代码继承自该类可以得到一些应用信息、应用显示的文本信息、图片描述信息、安卓系统事件(例如,用户点击、展示、退出等)信息等。

AccessibilityEvent:系统发送出来的页面视图事件。

ActivityLifecycleCallback:用于应用中页面的生命周期的回调,如页面创建、页面可见、页面被退出到后台运行等。

TopActivity:顶层应用的当前页面。

VirtualDisplay:安卓系统在显示到屏幕的时候,该类型代表一个虚拟显示器,用来存储一些屏幕显示各种相关信息。

Surface:屏幕显示的数据承载在这个类型里面。

屏幕纹理信息:记录屏幕上一些颜色、线条等等。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

根据本发明实施例的一个方面,提供了一种屏幕画面分享方法。作为一种可选的实施方式,上述屏幕画面分享方法可以但不限于应用于如图1所示的应用场景。在如图1所示的应用场景中,通过目标直播应用,将直播终端102中的目标屏幕画面分享给观看终端110的具体过程为:判断目标屏幕画面中是否存在隐私信息,其中,隐私信息可以但不限于短信中的验证码、密码、银行类应用的账号及密码、社交类工具的聊天信息等,例如,如图1中(a)所示的验证码;在确定目标屏幕画面中存在隐私信息的情况下,对隐私信息进行加密处理,得到加密屏幕画面,例如,通过悬浮窗打码,对隐私信息进行遮挡,如图1中(b)所示;通过网络104,将加密屏幕画面发送给观看客户端,其中,目标观看账号通过登陆观看客户端110可以观看直播终端102分享的加密屏幕画面。

具体过程如下:步骤S102,在目标终端的屏幕上显示目标屏幕画面时,确定目标屏幕画面是否为待隐私保护的屏幕画面,其中,目标屏幕画面是目标直播应用待分享给目标观看账号的屏幕画面,目标观看账号是目标直播应用进行当前直播时的观看账号;步骤S104,在确定出目标屏幕画面为待隐私保护的屏幕画面的情况下,对目标屏幕画面中的隐私信息进行加密处理,得到加密屏幕画面,其中,隐私信息在加密屏幕画面中处于不可见状态;步骤S106,将加密屏幕画面通过目标直播应用传输给目标观看账号进行显示。上述仅是一种示例,本实施例中对此不作任何限定。

作为一种可选的示例,本实施例对上述步骤S102至S106的执行主体不做限定,例如,上述步骤S102至S106都可以在直播终端102或者观看终端110上执行,或者,可以部分在直播终端102上执行,部分在与观看终端110上执行。

通过上述方式,在将目标直播应用的目标屏幕画面分享给目标观看账号之前,判断待分享的目标屏幕画面中是否存在隐私信息,在确定存在隐私信息的情况下,通过对隐私信息进行加密处理,得到加密屏幕画面,并将加密屏幕画面传输给目标观看账号进行显示。换言之,通过对目标屏幕画面中的隐私信息进行加密处理,使得隐私信息在加密屏幕画面中为不可见状态,确保了在分享目标屏幕画面的过程中目标直播账号的隐私信息不被泄露,解决了在屏幕分享过程中出现的隐私信息泄露的技术问题,实现了提高隐私信息安全性的技术效果。

根据本发明实施例的一个方面,提供了一种屏幕画面分享方法,图2是根据本发明实施例的屏幕画面分享方法的流程图,该流程包括如下步骤:

步骤S202,在目标终端的屏幕上显示目标屏幕画面时,确定目标屏幕画面是否为待隐私保护的屏幕画面,其中,目标屏幕画面是目标直播应用待分享给目标观看账号的屏幕画面,目标观看账号是目标直播应用进行当前直播时的观看账号;

为了更好地理解上述屏幕画面分享方法的实现过程,下面首先结合图3所示的系统架构图对执行上述屏幕画面分享方法所应用到的各个层进行解释。

如图3所示,实现上述屏幕画面分享方法的系统框架主要包括应用层300、屏幕特征提取层302、基础能力层304等。下面针对各个部分进行描述。

(1)应用层300:用于对隐私保护规则进行设置。如图3所示,应用层300可以对隐私保护规则进行自动生成,或者,对隐私保护规则进行自定义。此外,如图3所示,应用层300还可以实现用户交互,例如,在直播的过程中显示悬浮窗,或者,对隐私区域进行屏幕渲染等。

作为一种可选的示例,上述设置的隐私保护规则可以但不限于包括:当终端的屏幕画面中出现验证码类型的文本、且该文本中连续出现6位数字时,确定该屏幕画面为待隐私保护的屏幕画面。

进一步,上述隐私保护规则还可以包括确定待隐私保护的屏幕画面中的隐私信息的规则,例如,上述隐私保护规则可以但不限于包括:当终端的屏幕画面中出现验证码类型的文本、且该文本中连续出现6位数字时,确定该屏幕画面为待隐私保护的屏幕画面,且该文本中连续出现的6位数字为隐私信息。

进一步,上述隐私保护规则还可以包括对隐私信息进行加密处理的方式,例如,上述隐私保护规则可以但不限于包括:当终端的屏幕画面中出现验证码类型的文本、且该文本中连续出现6位数字时,确定该屏幕画面为待隐私保护的屏幕画面,该文本中连续出现的6位数字为隐私信息,且对上述隐私信息进行加密处理的方式为对上述隐私信息进行打码处理,以使得打码后上述隐私信息处于不可见状态。可选地,上述打码处理可以但不限于为对上述隐私信息所在的屏幕区域覆盖上马赛克。

进一步,上述隐私保护规则还可以包括对隐私信息进行打码处理的方式,例如,上述隐私保护规则可以但不限于包括:当终端的屏幕画面中出现验证码类型的文本、且该文本中连续出现6位数字时,确定该屏幕画面为待隐私保护的屏幕画面,该文本中连续出现的6位数字为隐私信息,对上述隐私信息进行加密处理的方式为对上述隐私信息进行打码处理,以使得打码后上述隐私信息处于不可见状态,其中,上述打码处理可以但不限于为对上述隐私信息所在的屏幕区域覆盖上马赛克,或者,为悬浮窗打码,这里,悬浮窗打码是在上述隐私信息所在的屏幕区域上覆盖一个悬浮可移动的窗口,通过该悬浮窗口使得屏幕画面中的隐私信息为不可见状态。

(2)屏幕特征提取层302:用于提取屏幕画面对应的特征,例如,可以实时地提取屏幕画面对应的特征。作为一种可选的示例,根据上述应用层300中自定义的隐私保护规则,提取直播终端102的屏幕画面对应的特征。如图3所示,提取的特征包括但不限于以下几种情况:

1)顶层应用特征(或称为顶层App特征)

以直播终端102的屏幕画面为例,假设当前的屏幕画面为直播应用的直播画面,如果将直播画面切换为聊天应用的消息页面(可以视为聊天应用的当前页面),则直播终端102的顶层应用由直播应用变为聊天应用,这样,提取的顶层应用特征可以但不限于包括上述聊天应用的当前页面对应的路径信息,其中,上述路径信息可以但不限于包括聊天应用的安装包名称(以下为了描述方便,统一简称为“包名”)和当前页面的相对路径。换句话说,上述顶层应用特征可以但不限于包括提取到的聊天应用的包名和/或上述相对路径。然后,根据应用层300中设置的隐私保护规则,对顶层应用特征与隐私保护规则进行匹配,以确定上述聊天应用是否为风险应用,即,待隐私保护的应用。可选地,上述顶层应用特征可以被称为顶层应用的特征信息,本申请的实施例对此不作限定。

作为一种可选的示例,上述顶层应用特征可以但不限于包括以下至少之一:顶层应用的包名、顶层应用的当前页面的相对路径、当前页面中视图控件的文本信息(如编辑框提醒文本、图片的文字描述等)、当前页面中视图控件的类型(如编辑框是否是密码类型、输入法是否是验证码模式等)。

为了便于理解上述当前页面的相对路径,下面结合具体示例对其进行说明。

在一个实施例中,上述顶层应用是可以实现短信内容的编辑、修改、发送和接收等功能的应用,该应用的包名为com.android.mms.。上述顶层应用中的各个页面的路径均由应用的包名和相对路径组成,例如,短信列表页面的路径为com.android.mms.ui.ConversationList,短信详情页的路径为com.android.mms.ui.conversation.ConversationActivity,这样,短信列表页面和短信详情页面的相对路径则分别为在上述路径中去掉应用的包名所得到的相对路径,即,分别为ui.ConversationList、ui.conversation.ConversationActivity。

2)无障碍模式特征

通过无障碍模式,可以但不限于获取页面中的文本信息、图片描述信息、UI展示事件等。

例如,当系统提醒消息为“此时出现了一个通知栏”,且通知栏内容为“您收到一条短信,验证码为009112,五分钟内有效”,那么通知栏内容可以被理解为页面中的文本信息。

又例如,当收到系统通知为“你当前在密码类型的编辑框输入文本”、“你当前在拨打电话,正在输入139...”,那么系统通知可以被理解为UI展示事件。

此外,采用无障碍模式可以对页面中的文本信息、图片描述信息、UI展示事件进行特征提取(所提取的特征可以被称为无障碍模式特征),并依据所提取的特征对隐私信息进行加密处理等。

3)应用统计特征

上述应用统计特征可以但不限于用于提供直播过程中的数据警示能力,例如,根据应用统计特征校正上述应用层中定义或判定不准确的事项。

举例来说,对于应用层中自定义的隐私保护规则可能存在不准确的问题,通过应用统计特征,可以实现对不准确的隐私保护规则进行校正提醒。又例如,在直播过程中,如果主播长期停留在某个风险应用内、或者长期进行文本输入等,则统计主播使用该风险应用的时长或者统计输入文本的字符数等,进一步确定对该风险应用的判定是否准确。

需要说明的是,上述校正提醒的实现方式可以但不限于如下方式之一:

a)当用户需要完善隐私保护规则时,则会提醒一些应用页面出现过密码输入,是否继续为上述应用页面补充对应的隐私保护规则;

b)当用户在前一个版本的应用中添加应用页面路径规则时,由于更新版本后的应用页面的相对路径会发生变化,则会提醒是否在隐私保护规则中更新或补充与变化后的相对路径对应的规则。

显然,通过屏幕特征提取层302所提取到的上述三种特征是确定目标屏幕画面中是否存在隐私信息的关键因素,也是实现本申请实施例中屏幕画面分享方法的过程中较为重要的一个方面,因此,下面会结合具体实施例进行详细描述。

(3)基础能力层304:是为了构建本申请实施例中对目标屏幕画面中的隐私信息进行加密处理所具备的能力。

在对基础能力层304进行描述之前,首先对实现本申请实施例中的屏幕画面分享方法所用到的直播推流技术进行简单介绍。所谓直播推流指的是:在直播过程中,主播将本地客户端采集编码后的视频数据分发(又称为推流)到观看客户端的过程。

本申请实施例中的屏幕画面分享方法,是在相关技术中的直播推流方案中结合隐私保护方案来实现对目标屏幕画面中的隐私信息进行保护。作为一种可选的实现方式,上述隐私保护方案可以以独立应用的形式存在,也可以是以软件包SDK或插件的形式存在。也就是说,可以在一个应用(与直播应用不同的应用)中实现本申请实施例中的屏幕画面分享方法,或者,在软件包SDK或插件中实现本申请实施例中的屏幕画面分享方法。

当以独立应用(例如,隐私保护应用)的形式存在时,本申请实施例中的直播推流的实现方式包括但不限于以下三种方式:

(a)利用隐私保护应用来实现屏幕画面的推流

在直播应用待分享的目标屏幕画面中不存在隐私信息的情况下,隐私保护应用或者直播应用直接将目标屏幕画面写入如图12所示的屏幕内容缓存(buffer)中,然后读取屏幕内容缓存中的目标屏幕画面,并将读取到的目标屏幕画面推送至观看终端;

在直播应用待分享的目标屏幕画面中存在隐私信息的情况下,利用隐私保护应用对待分享的目标屏幕画面中的隐私信息进行加密处理,然后将加密后的屏幕画面(为了描述方便,简称为“加密屏幕画面”)写入如图12所示的屏幕内容缓存中;最后,隐私保护应用将屏幕内容缓存中的加密屏幕画面推送至观看终端。

(b)利用直播应用来实现屏幕画面的推流

在直播应用待分享的目标屏幕画面中不存在隐私信息的情况下,隐私保护应用或者直播应用直接将目标屏幕画面写入如图12所示的屏幕内容缓存(buffer)中;直播应用读取屏幕内容缓存中的目标屏幕画面,并将目标屏幕画面推送至观看终端;

在直播应用待分享的目标屏幕画面中存在隐私信息的情况下,利用隐私保护应用对待分享的目标屏幕画面中的隐私信息进行加密处理,然后将加密屏幕画面写入如图12所示的屏幕内容缓存(buffer)中;直播应用读取屏幕内容缓存中的加密屏幕画面,然后将加密屏幕画面推送至观看终端。

(c)直播应用和隐私保护应用共同实现屏幕画面的推流

在直播应用待分享的目标屏幕画面中不存在隐私信息的情况下,隐私保护应用或者直播应用直接将目标屏幕画面写入如图12所示的屏幕内容缓存(buffer)中,直播应用读取屏幕内容缓存中的目标屏幕画面,然后将目标屏幕画面推送至观看终端。

在直播应用待分享的目标屏幕画面中存在隐私信息的情况下,利用隐私保护应用对待分享的目标屏幕画面中的隐私信息进行加密处理,得到加密屏幕画面,然后将加密屏幕画面写入如图12所示的屏幕内容缓存(buffer)中;隐私保护应用读取屏幕内容缓存中的加密屏幕画面,然后将加密屏幕画面推送至观看终端。

通过上述分析可知,在本申请实施例中的屏幕画面分享方法中,屏幕画面的推送可以由直播推流应用来完成,也可以由隐私保护应用来完成。

作为一种可选的示例,在上述屏幕画面分享方法以隐私保护应用的形式存在时,通过上述基础能力,可以实现如下目标:

1)隐私保护应用具备不易被系统强行退出的能力。

其中,隐私保护应用可以被理解为对目标屏幕画面进行加密处理的应用。上述系统可以但不限于被理解为是直播终端102的操作系统(例如,Android系统)等。

在一个可选的示例中,上述隐私保护应用不易被系统强行退出,可以但不限于以下两个层面的理解:

(1)实现方式:可以结合直播终端102的操作系统的悬浮窗实现,并创建系统前台服务(ForegroundService),能降低直播终端102的操作系统强行将隐私保护应用退出的优先级,以确保隐私保护应用可以在后台正常运行。

可选地,在结合悬浮窗实现的过程中,可以采用以下方式来确定打码区域的尺寸或者悬浮窗的尺寸:

a)在对隐私信息进行打码的场景中,根据悬浮窗的尺寸确定打码区域的尺寸;

b)在非隐私信息的场景中,不需要对屏幕画面进行打码,悬浮窗的尺寸设定为单个像素的尺寸,以保证用户无法感知。

(2)悬浮窗机制:保证了对屏幕画面中的隐私信息进行打码的真实性,因此,隐私保护应用会将打码后的加密屏幕画面传输给后台。

需要说明的是,直播终端102中包括上述隐私保护应用、直播应用及Android系统,在直播应用执行目标直播事件的过程中,隐私保护应用会循环执行如下操作:

S1,在目标终端的屏幕上显示目标屏幕画面时,确定目标屏幕画面是否为待隐私保护的屏幕画面;

作为一种可选的示例,目标屏幕画面可以但不限于直播应用的直播画面,例如,还可以是直播终端102中的其他应用的显示画面,或者直播终端102的操作系统推送的通知类消息的画面等。换言之,在一个可选的示例中,目标屏幕画面可以但不限于包括直播终端102上显示的所有画面。

S2,在确定出目标屏幕画面为待隐私保护的屏幕画面的情况下,对目标屏幕画面中的隐私信息进行加密处理,得到加密屏幕画面,其中,所述隐私信息在加密屏幕画面中处于不可见状态;

在一个可选的示例中,在确定出目标屏幕画面为待隐私保护的屏幕画面的情况下,上述隐私保护应用才会获取目标屏幕画面,然后对获取到的目标屏幕画面进行加密处理,而不需要通过图像处理的方式实时获取目标屏幕画面。

可选的,步骤S1中确定目标屏幕画面是否为待隐私保护的屏幕画面的方式可以但不限于包括:

i)在直播终端中检测到目标事件的情况下,将目标事件对应的目标文本信息与预设的隐私保护规则进行匹配,和/或,将目标事件对应的目标事件路径与预设的隐私保护规则进行匹配;根据匹配的结果,确定目标屏幕画面是否为待隐私保护的屏幕画面。

可选的,可以通过直播终端上的操作系统发送的系统通知,判断是否检测到上述目标事件。作为一种可选的示例,上述目标事件可以但不限于包括:用于表示直播终端(也可称为目标终端)上的通知栏发生变化的事件,或者,用于表示直播终端上的窗口发生变化的事件。可选的,上述目标屏幕画面是目标事件触发的屏幕画面,例如,上述目标屏幕画面是直播终端上出现了通知栏所形成的画面,或者,是直播终端上出现了新的窗口所形成的画面。

ii)将上述直播终端的顶层窗口信息与预设的隐私保护规则进行匹配;根据匹配的结果,确定目标屏幕画面是否为待隐私保护的屏幕画面。

S3,在得到加密屏幕画面的情况下,将加密屏幕画面写入屏幕内容缓存(buffer)中。

2)隐私保护悬浮窗不影响隐私保护应用分享直播推流的交互体验,不改变屏幕本身的UI(User Interface,用户界面)。

其中,隐私保护悬浮窗可以被理解为对待分享的屏幕画面中的隐私信息所在的区域进行打码所创建的悬浮窗,也是实现对屏幕画面中的隐私信息进行加密处理所利用到的悬浮窗机制,具体可参考上述实施例中的说明。

为了更好地理解上述直播推流的实现过程,下面对直播应用和隐私保护应用进行进一步描述。

假设直播终端102的系统为安卓系统,上述直播推流的过程是在直播应用上实现的。当预先设置了隐私保护规则时,在待分享的目标屏幕画面为待隐私保护的屏幕画面的情况下,隐私保护应用会将待分享的屏幕画面中的隐私信息进行打码,得到加密屏幕画面,并将加密屏幕画面输出到预先创建的虚拟显示器(如图5所示的VirtualDisplay),其中,上述虚拟显示器可以但不限于用于获取屏幕画面内容。这样,直播应用推流的屏幕画面为打码后的加密屏幕画面。

可选地,上述过程可以描述成以下具体步骤:

S11,用户自定义隐私保护规则,例如,通过对默认规则进行选择、添加等;

S12,直播终端102中的直播应用开始直播;

S13,在直播过程中,在检测到直播终端102的屏幕画面中有通知栏、短信、相册、密码等隐私信息时,启动悬浮窗机制,对屏幕中的隐私信息所在的区域进行打码,得到加密屏幕画面,并将加密屏幕画面写入上述虚拟显示器对应的缓存中;

S14,直播应用读取上述虚拟显示器对应的缓存中的加密屏幕画面,并将加密屏幕画面推送到观看终端。

可以理解的是,由于隐私保护应用与直播应用为直播终端102中两个独立运行的应用,在上述加密处理过程中,直播应用不需要做任何修改,直播终端的目标屏幕画面本身也并没有发生改变,执行上述打码处理的主体仅为隐私保护应用。

3)保证用户操作事件具有穿透能力

结合上述分析可知,对目标屏幕画面中的隐私信息进行加密处理的方式是指对隐私信息所在区域进行打码处理,但并没有修改目标屏幕画面的原始内容(例如,直播、短信、通知栏、或者预设风险应用中显示的内容)。在对隐私信息所在的区域执行目标操作(例如,点击、滚动、拖动、长按)时,该目标操作会先到达打码画面(例如,马赛克)所在的层,这是直播终端的安卓系统会将上述目标操作形成的操作事件转发到下层界面上(例如,转发到隐私信息所在的层),使得可以上述目标操作可以作用在隐私信息所在的层上,即,保证用户操作事件具有穿透能力。

需要说明的是,上述对隐私信息所在的区域执行目标操作可以被理解为主播对该区域的点击、拖动、滚动等操作,并且悬浮窗打码的隐私信息相对于主播来说是可见的,这是由于隐私信息本身的内容并没有改变,只是将打码后的隐私信息所在的区域发送至缓存区,并将打码后的隐私信息所在的区域推流出去,以确保观看终端无法观看屏幕画面中的隐私信息。

4)具备在全局系统屏幕窗口上绘制视图(View)的能力

在一种可选的示例中,在全局系统屏幕窗口上绘制视图的能力是指:使用系统级悬浮窗对屏幕画面中的隐私信息进行打码处理,即,将系统级悬浮窗覆盖在屏幕画面中的隐私信息之上,其中,上述系统级悬浮窗是在直播终端的顶层应用是任何应用时都可以存在的悬浮窗,从而可以在直播终端的顶层应用是任何应用时,都可以使用系统级悬浮窗对屏幕画面中的隐私信息进行打码处理,这样就是具备了在全局系统屏幕窗口上绘制视图的能力。

在一种可选的示例中,上述绘制视图的步骤包括:通过系统级悬浮窗把打码画面(例如,马赛克)绘制到任意应用的任意位置做个浮层,而不用改应用的内容。

作为一种可选的示例,结合图4和图5,对上述目标屏幕画面进行加密处理的具体实现过程进行如下说明:

需要说明的是,对目标屏幕画面中的隐私信息可以但不限于顶层窗口信息和事件信息,其中,在对目标屏幕画面中的隐私信息进行加密处理的过程中,并行执行两种类型的隐私信息的加密处理,对于并行执行的具体过程会结合下述实施例进行详细说明。

S402,注册并启动无障碍服务;

在一种可选的示例中,在直播终端102中注册并启动无障碍服务,上述无障碍服务可以但不限于用于检测直播终端上的目标事件,上述目标事件可以但不限于包括:用于表示直播终端(也可称为目标终端)上的通知栏发生变化的事件,或者,用于表示直播终端上的窗口发生变化的事件。可选的,上述目标屏幕画面是目标事件触发的屏幕画面,例如,上述目标屏幕画面是直播终端上出现了通知栏所形成的画面,或者,是直播终端上出现了新的窗口所形成的画面。

S404,执行顶层窗口检测,和/或,执行目标事件检测;在执行顶层窗口检测时,执行步骤S406,在执行目标事件检测时,执行步骤S418。

在一种可选的示例中,如图4所示,可以并行地执行两种检测方案,即,并行地执行“获取到直播终端102的顶层窗口信息”的分支(S406-S416)以及“检测到直播终端102中的上述目标事件”的分支(S418-S424)。换句话说,可以通过至少上述这两种检测方案,确定直播应用待分享的目标屏幕画面是否为待隐私保护的屏幕画面。当然,本申请实施例对此不作限定,例如,还可以采用上述两种检测方案中的一种检测方案来确定直播应用待分享的目标屏幕画面是否为待隐私保护的屏幕画面,例如,执行“获取到直播终端102的顶层窗口信息”的分支(S406-S416)来确定直播应用待分享的目标屏幕画面是否为待隐私保护的屏幕画面,或者,执行“检测到直播终端102中的上述目标事件”的分支(S418-S424)来确定直播应用待分享的目标屏幕画面是否为待隐私保护的屏幕画面。

S406,获取顶层窗口信息;

其中,上述顶层窗口信息用于指示在直播终端的顶层显示的目标窗口,该目标窗口是目标应用的窗口,上述目标应用是直播终端102的顶层应用。例如,假设当前的屏幕画面为直播应用的直播画面,如果将直播画面切换为聊天应用的消息页面(可以视为聊天应用的当前页面),则直播终端102的顶层应用由直播应用变为聊天应用。

作为一种可选的示例,可以但不限于通过如图2所示的基础能力层304提供的基础能力,获取上述顶层窗口信息。

S408,获取应用的特征信息;

在一种可选的示例中,获取应用的特征信息可以但不限于包括:提取的顶层应用特征。其中,上述顶层应用特征可以但不限于包括上述顶层应用的当前页面对应的路径信息,其中,上述路径信息可以但不限于包括顶层应用的安装包名称(以下为了描述方便,统一简称为“包名”)和当前页面的相对路径。以顶层应用为聊天应用为例,上述顶层应用特征可以但不限于包括提取到的聊天应用的包名和/或聊天应用的消息页面的相对路径。

S410,特征信息与隐私保护规则匹配;

在一种可选的示例中,可以将获取到的特征信息与预先设置的隐私保护规则进行匹配,得到匹配结果,其中,该匹配结果可以直接用于确定直播应用待分享的目标屏幕画面是否为待隐私保护的屏幕画面,或者,结合S412-S416共同确定直播应用待分享的目标屏幕画面是否为待隐私保护的屏幕画面。以特征信息包括顶层应用的包名为例,可以将顶层应用的包名与上述隐私保护规则中的目标命名规则进行匹配,其中,上述目标命名规则可以但不限于包括:顶层应用的包名是否包括预设的词语,例如,“银行”、“账号”,如果顶层应用的包名包括上述预设的词语,则确定直播应用待分享的目标屏幕画面为待隐私保护的屏幕画面,或者,确定顶层应用为风险应用,待进一步判断顶层应用所对应的目标屏幕画面是否为待隐私保护的屏幕画面。

S412,获取应用统计数据;

作为一种可选的示例,在通过上述步骤S406~S410,确定顶层应用为风险应用的情况下,可以进一步获取顶层应用的应用统计数据。可选的,获取顶层应用的应用统计数据的步骤可以但不限于包括:基于直播终端102自身的操作系统(例如,安卓系统)的能力,统计在上述风险应用中执行目标操作的持续时长或者停留在风险应用的时长等。

S414,根据获取到的应用统计数据,确定上述顶层应用是否为在预定时长内用户使用过的应用,例如,确定上述顶层应用是否为最近使用的应用;

S416,在确定出上述顶层应用为在预定时长内用户使用过的应用时,将应用统计数据与预设的风险规则进行匹配,根据匹配结果,来校正S410输出的匹配结果;

作为一种可选的示例,上述风险规则可以设置在隐私保护规则中,当然也可以独立于隐私保护规则而单独设置,本申请的示例对此不做限定。以上述风险规则可以设置在隐私保护规则中为例,结合上述应用层300中自定义的隐私保护规则,判断在顶层应用中执行目标操作的持续时长或者停留在风险应用的时长是否满足隐私保护规则中的风险规则,并在满足风险规则的情况下,确定S410输出的匹配结果存在误判。例如,在S410输出的匹配结果表示直播应用待分享的目标屏幕画面为待隐私保护的屏幕画面的情况下,当在顶层应用中执行目标操作的持续时长或者停留在风险应用的时长满足上述风险规则时,则确定S410输出的匹配结果存在误判,即,需要将S410输出的匹配结果校正为直播应用待分享的目标屏幕画面不为待隐私保护的屏幕画面。

当然,上述S416的执行条件为在确定出上述顶层应用为在预定时长内用户使用过的应用时,这只是一种示例,还可以由其他执行条件来触发上述S416,即,由其他执行条件来触发执行将应用统计数据与预设的风险规则进行匹配,并根据匹配结果,来校正S410输出的匹配结果,或者,可以直接跳过S414,在执行完S412之后,直接执行S416,而不执行S414。

基于上述分析可知,当获取到顶层窗口信息时,可以仅通过执行步骤S406~S410,确定直播应用待分享的目标屏幕画面是否为待隐私保护的屏幕画面。或者,也可以通过执行步骤S406~S416,确定直播应用待分享的目标屏幕画面是否为待隐私保护的屏幕画面。也就是说,在确定直播应用待分享的目标屏幕画面是否为待隐私保护的屏幕画面时,步骤S412~S416并不是必须要执行的步骤。

S418,作为另一个分支,当检测到上述目标事件时,获取上述目标事件的事件信息;

作为一种可选的示例,可以但不限于通过直播终端的操作系统发送的系统通知,确定检测到图5中所示的目标事件(AccessibilityEvent),并获取到目标事件的事件信息,其中,目标事件的事件信息用于表示直播终端(也可称为目标终端)上的通知栏发生变化,或者,用于表示直播终端上的窗口发生变化。

在目标事件的事件信息表示直播终端(也可称为目标终端)上的通知栏发生变化时,执行步骤S422;在目标事件的事件信息表示直播终端上的窗口发生变化时,执行步骤S424。

S422,将目标事件对应的目标文本信息与预先设置的隐私保护规则进行匹配,其中,上述目标文本信息包括:变化后的通知栏中的信息。作为一种可选的示例,可以判断上述目标文本信息中的字段是否满足上述隐私保护规则中的目标文本规则;如果上述目标文本信息中的字段满足上述隐私保护规则中的目标文本规则,则将上述待分享的目标屏幕画面确定为待隐私保护的屏幕画面。

S424,将目标事件对应的目标文本信息与预先设置的隐私保护规则进行匹配,其中,上述目标文本信息包括:变化后的窗口中的信息。作为一种可选的示例,可以判断上述目标文本信息中的字段是否满足上述隐私保护规则中的目标文本规则;如果上述目标文本信息中的字段满足上述隐私保护规则中的目标文本规则,则将上述待分享的目标屏幕画面确定为待隐私保护的屏幕画面。

在一个可选的示例中,上述目标事件(AccessibilityEvent)可以是直播终端的操作系统发送出来的页面视图事件,例如,按钮被点击或者被长按、文本内容被展示、编辑框出现并被聚焦、编辑框被重新编辑并确认、下拉菜单出现、通知栏的通知状态改变、触摸手势事件等。

作为一种可选的示例,还可以在S422和S424之前,先执行S420。以下对该方案进行详细描述。

S420,事件源路径规则匹配;

在上述目标事件的事件信息还包括目标事件对应的目标事件路径时,获取目标事件对应的目标事件路径,并将目标事件路径与预定的隐私保护规则进行匹配。并在目标事件路径满足隐私保护规则的情况下,再执行步骤S422或S424,即,在目标事件的事件信息表示直播终端(也可称为目标终端)上的通知栏发生变化时,执行步骤S422;在目标事件的事件信息表示直播终端上的窗口发生变化时,执行步骤S424。可选地,在目标事件路径不满足隐私保护规则的情况下,跳过步骤S422和S424,直接执行S426。

在一个可选的示例中,可以在获取到目标事件的事件信息之后,先将目标事件路径与预定的隐私保护规则进行匹配;然后,在目标事件路径满足隐私保护规则的情况下,再判断目标事件的事件信息表示的是直播终端(也可称为目标终端)上的通知栏发生变化,还是直播终端上的窗口发生变化。

通过上述先执行事件源路径规则匹配的方式,可以在部分情况下不需要将目标事件对应的目标文本信息与预先设置的隐私保护规则进行匹配,从而减少了匹配操作的执行数量,提高了整个方案的执行效率。

在一个可选的示例中,图5中的全局系统浮窗(顶层窗口)及回调函数(ActivityLifecycleCallback)是作为目标事件(AccessibilityEvent)的能力补充。这是由于并非所有隐私内容的判断都可以通过无障碍模式本身自带的事件来判断,如相册内容等。因此顶层窗口所具备的能力通过在创建Android系统进程时,在每个应用程序处理类中注册生命周期的回调函数。并通过回调函数的取值得到系统通知,从而获取回调函数的取值所指示的顶层窗口的名称信息。通过该项能力可以识别顶层窗口的应用是否为风险应用。

S426,判断是否继续对直播应用待分享的屏幕画面进行加密处理。

其中,当直播终端102中的目标直播应用仍处于运行状态时,则确定继续执行上述步骤S404~S424;如果直播终端102中的目标直播应用停止运行,则不再执行上述步骤S404~S424。

通过本申请提供的上述实施例,可以看出图4所示的屏幕隐私特征的提取与图5所示的基础能力之间存在绑定关系。换言之,本申请实施例中的隐私保护应用通过图5所示的基础能力,可以实现图4中所示的顶层窗口信息的获取、通知栏信息的获取等。

步骤S204,在确定出目标屏幕画面为待隐私保护的屏幕画面的情况下,对目标屏幕画面中的隐私信息进行加密处理,得到加密屏幕画面,其中,隐私信息在加密屏幕画面中处于不可见状态;

在一个可选的示例中,在对目标屏幕画面中的隐私信息进行加密处理后,得到加密屏幕画面,然后,将加密屏幕画面输出到如图12所示的屏幕内容缓存中,直播应用读取屏幕内容缓存中的加密屏幕画面,并将其推送至观看终端(例如,推送给目标观看帐号)。

步骤S206,将加密屏幕画面通过目标直播应用传输给目标观看账号进行显示。

作为一种可选的示例,如图6所示,假设目标屏幕画面中的信息为顶层窗口信息,通过如图4所示的屏幕特征提取流程,确定图6中的目标屏幕画面600中存在验证码“668955”,且该验证码的文本规则满足预定的隐私保护规则,则确定目标屏幕画面600中的验证码为隐私信息。

对目标屏幕画面600中的验证码所在的区域进行加密处理,例如,进行打码处理,得到如图6所示的加密屏幕画面602。从图6中可以直观地看出,验证码在加密屏幕画面602中处于不可见状态。那么将加密屏幕画面602分享(推送)给如图1所示的观看终端110后,则登录观看终端110的目标观看账号将无法观看到加密屏幕画面中的验证码“668955”。

可以理解的是,上述步骤S206是一种可选的示例,还可以通过其他方式将加密屏幕画面传输给目标观看账号进行显示,例如,隐私保护应用将加密屏幕画面传输给目标观看账号进行显示,而不通过直播应用将加密屏幕画面传输给目标观看账号进行显示。

通过本申请提供的上述实施例,在将直播终端的屏幕画面分享给目标观看账号的过程中,通过对目标屏幕画面中的隐私信息进行加密处理,使得隐私信息在加密屏幕画面中处于不可见状态。进而使得目标观看账号无法查看加密屏幕画面中的隐私信息,避免了直播账号的隐私信息的泄露,解决了屏幕画面分享过程中出现的隐私信息的安全性较低的技术问题,实现了提高隐私信息安全性的技术效果。

显然,容易理解的是,实现上述屏幕画面分享方法的关键在于如何确定目标终端(例如,直播终端102)的目标屏幕画面是否待隐私保护的屏幕画面(也可以被理解为目标屏幕画面中是否存在隐私信息),作为一种可选的实现方式,确定目标屏幕画面是否为待隐私保护的屏幕画面,包括以下至少一种:

在目标终端的屏幕上显示目标屏幕画面时,根据在目标终端中检测到的目标事件,确定目标屏幕画面是否为待隐私保护的屏幕画面,其中,目标屏幕画面是目标事件触发的屏幕画面;和/或

在目标终端的屏幕上显示目标屏幕画面时,根据目标终端的顶层窗口信息,确定目标屏幕画面是否为待隐私保护的屏幕画面,其中,顶层窗口信息用于指示在目标终端的顶层显示的目标窗口,目标窗口是目标应用的窗口。

下面结合具体的实施例对确定目标屏幕画面中是否存在隐私信息的实现过程进行详细描述。

作为一种可选的示例,在目标终端的屏幕上显示目标屏幕画面时,根据目标终端的顶窗口信息,确定目标屏幕画面是否为待隐私保护的屏幕画面,包括:

在目标终端的屏幕上显示目标屏幕画面时,获取目标终端的顶层窗口信息,并获取与顶层窗口信息对应的目标应用的特征信息,其中,顶层窗口信息用于指示在目标终端的顶层显示的目标窗口,目标窗口是目标应用的窗口;

将目标应用的特征信息与预定的隐私保护规则进行匹配;

在目标应用的特征信息满足隐私保护规则中的目标命名规则的情况下,将目标屏幕画面确定为待隐私保护的屏幕画面。

如图7所示,在直播终端102的直播过程中,假设从直播终端102的屏幕画面P

需要说明的是,顶层窗口信息可以但不限于在直播终端102的顶层显示的目标窗口,例如,如图7中所示,目标窗口的内容可以但不限于包括验证码“668955”、接收验证消息的日期以及其他信息等。

在一个可选的示例中,上述顶层窗口信息可以但不限于包括上述目标应用(例如,直播终端102中的顶层应用)的标识,或者,上述目标应用在目标终端中的安装路径,或者,上述安装路径的标识。进一步,在一个可选的示例中,根据预设的对应关系,获取与顶层窗口信息对应的目标应用的特征信息,其中,目标应用的特征信息可以但不限于包括以下至少之一:目标应用的应用名称、目标应用的安装路径、目标应用的描述信息、根据目标应用的应用名称提取的名称特征、根据目标应用的安装路径提取的路径特征、根据目标应用的描述信息提取的描述特征。

在一个可选的示例中,将目标应用的特征信息与预定的隐私保护规则进行匹配,可以但不限于包括:确定目标应用的特征信息是否满足隐私保护规则中对应的规则,如果目标应用的特征信息满足隐私保护规则中对应的规则(例如,目标命名规则),则确定出目标应用的特征信息与隐私保护规则匹配。以目标应用的特征信息包括目标应用的应用名称为例,将目标应用的特征信息与预定的隐私保护规则进行匹配,可以包括:确定目标应用的应用名称是否包括隐私保护规则中的目标命名规则中的预设字段,若上述应用名称包括上述预设字段,则确定出目标应用的特征信息满足隐私保护规则中的目标命名规则,即,目标应用的特征信息与隐私保护规则匹配。

作为另一种示例,以目标应用的特征信息包括根据目标应用的应用名称提取的名称特征(例如,应用名称的命名规则)为例,将目标应用的特征信息与预定的隐私保护规则进行匹配,可以包括:确定目标应用的应用名称的命名规则是否与隐私保护规则中对应的规则(例如,目标命名规则)相同,若目标应用的应用名称的命名规则与隐私保护规则中的目标命名规则相同,则确定出目标应用的特征信息满足隐私保护规则中的目标命名规则,即,目标应用的特征信息与隐私保护规则匹配。

可以理解的是,确定目标应用的特征信息是否满足隐私保护规则中的目标命名规则,这只是一种示例,还可以采用其他的方式,例如,确定目标应用的特征信息是否满足隐私保护规则中的目标路径规则,本申请实施例中对此不作限定。

作为一种可选的实现方式,上述在目标终端的屏幕上显示目标屏幕画面时,根据目标终端的顶层窗口信息,确定目标屏幕画面是否为待隐私保护的屏幕画面,包括:

在目标终端的屏幕上显示目标屏幕画面时,获取与顶层窗口信息对应的目标应用的特征信息,并根据目标应用的特征信息,确定目标屏幕画面是否为待隐私保护的屏幕画面。

作为一种可选的示例,上述获取目标终端的顶层窗口信息,并获取与顶层窗口信息对应的目标应用的特征信息,包括:

通过预先注册的生命周期回调函数,获取目标终端的操作系统发送的系统通知消息,其中,系统通知消息用于指示目标终端的顶层窗口信息以及目标应用的特征信息,生命周期回调函数是在创建操作系统的系统进程时注册的函数;

获取系统通知消息指示的目标终端的顶层窗口信息以及目标应用的特征信息。

如图7所示,在目标终端(直播终端102)的目标直播应用运行的过程中,目标终端的操作系统(例如,安卓系统)会实时发送系统通知消息,通过如图5所示的基础能力中的回调函数(ActivityLifecyclerCallback函数,也称为,生命周期回调函数),获取系统通知消息所指示的顶层窗口信息。作为一种可选的示例,上述系统通知消息还可以指示目标应用的特征信息。

需要说明的是,在创建目标终端的操作系统(例如,安卓系统)的进程时,会在目标终端中的每个应用的处理类中预先注册对应的生命周期回调函数,并通过生命周期回调函数得到系统消息,进而确定顶层窗口信息对应的目标应用的文件名称。

采用本申请实施例中的技术方案,可以通过目标终端的操作系统实时发送的系统消息,获取顶层窗口信息以及与顶层窗口信息对应的目标应用的特征信息,从而确定目标应用是否风险应用,进一步地确定目标屏幕画面是否为待隐私保护的屏幕画面。通过该方式,可以快速地判断目标屏幕画面是否为待隐私保护的屏幕画面,实现了提高屏幕画面的隐私信息的检测效果。

结合上述实施例中对图4的描述可知,在目标屏幕画面为顶层窗口信息时,判定与顶层窗口信息对应的目标应用是否为风险应用的方式包括但不限于以下两种:

(1)获取目标应用的特征信息,并将目标应用的特征信息与预先设置的隐私保护规则进行匹配,如图4中所示的步骤S406~S410;

(2)获取目标应用的特征信息,并将目标应用的特征信息与预先设置的隐私保护规则进行匹配,得到匹配结果,然后根据目标应用的应用数据统计,对上述匹配结果进行校正,如图4中所示的步骤S406~S416。

对于上述方式(2),具体的实现过程包括:

在目标终端的屏幕上显示目标屏幕画面时,获取目标终端的顶层窗口信息,并获取与顶层窗口信息对应的目标应用的特征信息,其中,顶层窗口信息用于指示在目标终端的顶层显示的目标窗口,目标窗口是目标应用的窗口;

将目标应用的特征信息与预定的隐私保护规则进行匹配;

在目标应用的特征信息满足隐私保护规则中的目标命名规则的情况下,获取在目标应用中驻留的驻留时长,在驻留时长小于或等于预设的第一时长阈值的情况下,将目标屏幕画面确定为待隐私保护的屏幕画面;或者,在目标应用的特征信息满足隐私保护规则中的目标命名规则的情况下,获取在目标应用中执行目标操作的持续时长,在持续时长小于或等于预设的第二时长阈值的情况下,将目标屏幕画面确定为待隐私保护的屏幕画面。

在本实施例中,对于目标应用的特征信息与预定的隐私保护规则进行匹配的过程可参考如图7所示的示意图,在直播终端102的直播过程中,假设从直播终端102的屏幕画面P

在一个可选的示例中,依据上述目标应用A的名称信息来确定其是否为风险应用,可能存在判定不准确的问题。例如,在将上述目标应用A的名称信息与隐私保护规则中的目标命名规则进行匹配后,初步确定目标应用A为风险应用,则对目标应用A的画面中的隐私信息进行打码。在检测到对目标应用A的画面进行打码后,目标账号仍在使用该风险应用,则可能意味着将目标应用A确定为风险应用的判定过程存在误判的可能。

需要说明的是,造成误判的原因可以但不限于通过应用层300自定义的隐私保护规则不准确或者不合理等。那么此时就需要通过自动统计的方式去校验判定可能不准确的情况。

作为一种可选的示例,根据目标应用A的统计数据执行风险规则匹配的具体方式包括:

(1)在目标应用A的名称信息满足隐私保护规则中的目标命名规则的情况下,如果目标账号持续停留在目标应用A中,则获取目标账号在目标应用A中驻留的时长;并通过比较驻留的时长与风险规则中预设的第一时长阈值,进一步确定目标应用A是否为风险应用;

(2)在目标应用A的名称信息满足隐私保护规则中的目标命名规则的情况下,获取目标账号在目标应用A中执行目标操作的持续时长,并通过比较持续时长与风险规则中预设的第二时长阈值,进一步确定目标应用A是否为风险应用;其中,目标账号在目标应用A中执行目标操作可以但不限于在目标应用A中持续输入文本内容、持续改变目标应用A的页面中的布局等。

通过上述方式(1)或(2)获取在目标应用A中驻留的驻留时长或执行目标操作的持续时长,并将驻留时长或持续时长与风险规则进行匹配,并根据匹配结果,进一步确定目标应用A是否为风险应用,从而确定目标屏幕画面是否为待隐私保护的屏幕画面。避免了仅根据目标应用A的名称信息确定其为风险应用造成的误判,提高了对待隐私保护画面进行判定的准确性。

结合上述实施例中对图4的描述可知,屏幕隐私特征的提取过程中,除了顶层窗口信息的特征之外,还需要对处理事件(目标事件)信息进行特征提取。

作为一种可选的实现方式,在上述目标终端的屏幕上显示目标屏幕画面时,根据在目标终端中检测到的目标事件,确定目标屏幕画面是否为待隐私保护的屏幕画面,包括:

在目标终端的屏幕上显示目标屏幕画面时,根据目标事件对应的目标文本信息,确定目标屏幕画面是否为待隐私保护的屏幕画面。

作为一种可选的示例,参考图4中的步骤S418、S422和S424可知,对处理事件(目标事件)信息进行屏幕特征提取,包括如下方式1:

在目标终端的屏幕上显示目标屏幕画面、且目标屏幕画面是目标事件触发的屏幕画面时,获取目标事件对应的目标文本信息,其中,目标事件是在目标终端中检测到的事件;

将目标文本信息与预定的隐私保护规则进行匹配;

在目标文本信息中的字段满足隐私保护规则中的目标文本规则的情况下,将目标屏幕画面确定为待隐私保护的屏幕画面。

作为一种可选的示例,上述获取目标事件对应的目标文本信息,包括:

在目标事件用于表示目标终端上的通知栏发生变化的情况下,获取目标终端上变化后的通知栏中的信息,其中,目标文本信息包括变化后的通知栏中的信息;和/或

在目标事件用于表示目标终端上的窗口发生变化的情况下,获取目标终端上变化后的窗口中的信息,其中,目标文本信息包括变化后的窗口中的信息。

下面结合具体实施例分别针对两种不同形式的目标文本信息进行解释说明。

(一)在目标事件用于表示目标终端上的通知栏发生变化的情况下,上述将目标文本信息与预定的隐私保护规则进行匹配的过程如图8所示。

在直播终端102的直播过程中,假设从直播终端102的屏幕画面P

将变化后的通知栏中的信息与预定的隐私保护规则中的目标文本规则进行匹配,在变化后的通知栏中的信息中的字段满足目标文本规则的情况下,将目标屏幕画面P

举例来说,预定的隐私保护规则可以但不限于包括:当终端的屏幕画面中出现变化后的通知栏、且变化后的通知栏中包括验证码类型的文本、且该文本中连续出现6位数字时,确定该屏幕画面为待隐私保护的屏幕画面,该文本中连续出现的6位数字为隐私信息,且对上述隐私信息进行加密处理的方式为对上述隐私信息进行打码处理,以使得打码后上述隐私信息处于不可见状态。如果数字不足6位,则表示上述变化后的通知栏中的信息没有命中隐私保护规则;如果上述文本没有包括“验证码”字段,则表示该文本的类型不是验证码类型,即,表示上述变化后的通知栏中的信息没有命中隐私保护规则。

在代码实现上,在用户选择目标事件对应的通知栏中的信息时,生成正则表达式,然后通过代码去匹配通知栏中的信息是否满足目标文本规则。

(二)在目标事件用于表示目标终端上的窗口发生变化的情况下,上述将目标文本信息与预定的隐私保护规则进行匹配的过程如图9所示。

在直播终端102的直播过程中,假设从直播终端102的屏幕画面P

将变化后的窗口中的信息与预定的隐私保护规则中的目标文本规则进行匹配,在变化后的窗口中的信息所包含的字段满足目标文本规则的情况下,将目标屏幕画面P

需要说明的是,上述变化后的窗口中的信息可以但不限于被理解为目标屏幕画面P

对于变化后的窗口中的信息与预定的隐私保护规则进行匹配的方式可以参考上述变化后的通知栏中的信息的匹配过程。此处不再赘述。

此外,图9所示的悬浮窗所对应的目标事件可以但不限于目标账号对当前屏幕画面执行目标应用的切换、隐藏等操作后,将悬浮窗显示在目标屏幕画面P

作为一种可选的示例,上述获取目标事件对应的目标文本信息,包括:

通过目标终端上运行的目标进程,获取目标事件对应的目标文本信息,其中,目标进程是目标终端的操作系统中的目标能力层的事件分发出口。

在本实施例中,上述通知栏或窗口的变化状态可以但不限于通过如图5所示的基础能力中的目标事件(AccessibilityEvent)来得到。其中,目标事件(AccessibilityEvent)作为能力层(AccessibilityService)的事件分发出口,负责转发通知栏或窗口中是否包含隐私信息(例如,密码、验证码等)。

作为另一种可选的实现方式,在上述目标终端的屏幕上显示目标屏幕画面时,根据在目标终端中检测到的目标事件,确定目标屏幕画面是否为待隐私保护的屏幕画面,还包括:

在目标终端的屏幕上显示目标屏幕画面时,根据目标事件对应的目标事件路径和目标事件对应的目标文本信息,确定目标屏幕画面是否为待隐私保护的屏幕画面。

作为另一种可选的示例,参考图4中的步骤S418-S424可知,对处理事件(目标事件)信息进行屏幕特征提取,包括如下方式2:

在目标终端的屏幕上显示目标屏幕画面、且目标屏幕画面是目标事件触发的屏幕画面时,获取目标事件对应的目标事件路径,其中,目标事件是在目标终端中检测到的事件;

将目标事件路径与预定的隐私保护规则进行匹配;

在目标事件路径满足隐私保护规则中的目标路径规则的情况下,获取目标事件对应的目标文本信息,并将目标文本信息与预定的隐私保护规则进行匹配;

在目标文本信息中的字段满足隐私保护规则中的目标文本规则的情况下,将目标屏幕画面确定为待隐私保护的屏幕画面。

在本实施例中,目标事件路径可以但不限于用于表示如图8或图9中所展示的通知栏或悬浮窗中的目标文本信息的内容来源,例如,短信界面的路径可以表示为:com.android.mms.ui.conversation.ConversationActivity。通过对目标事件路径的匹配,可以初步确定目标屏幕画面是否为待隐私保护的屏幕画面。

为了提高屏幕特征提取的效率,通常可以先根据目标事件路径与预定的隐私保护规则进行匹配的结果,确定是否继续执行如图4所示的步骤S422和S424中的事件源文本规则匹配,即,将目标文本信息与预定的隐私保护规则进行匹配。

在一个可选的示例中,在目标事件路径满足隐私保护规则中的目标路径规则的时,进一步获取目标事件对应的目标文本信息,例如,上述图8或图9中变化后的通知栏或变化后的窗口中的信息。在目标事件路径满足目标路径规则、且目标事件对应的目标文本信息中的字段满足目标文本规则的情况下,将目标屏幕画面确定为待隐私保护的屏幕画面。

在一个可选的示例中,针对上述根据处理事件信息进行屏幕特征提取,来判断目标屏幕画面是否为待隐私保护的屏幕画面的两种实现方式,各自的优点在于:采用方式1中所示的方案,仅依据目标事件对应的目标文本信息来确定待隐私保护的屏幕画面,可以简化确定待隐私保护的屏幕画面的流程;采用方式2中所示的方案,依据目标事件路径及目标事件对应的目标文本信息来共同确定待隐私保护的屏幕画面,则可以提高确定待隐私保护的屏幕画面的准确性。

在实际应用过程中,可以根据需要选择上述两种方式中的任意一种来确定处理事件信息中是否存在隐私信息,进一步确定目标屏幕画面是否为待隐私保护的屏幕画面,实现了提高屏幕画面分享方法的适用性的技术效果。

为了提高判定目标屏幕画面中是否为待隐私的屏幕画面的准确性,还可以采用下述多路并行的方式来检测目标屏幕画面中是否存在隐私信息,具体地,包括:

以并行的方式执行以下步骤,以确定目标屏幕画面是否为待隐私保护的屏幕画面:

在目标终端的屏幕上显示目标屏幕画面时,获取目标终端的顶层窗口信息,并获取与顶层窗口信息对应的目标应用的特征信息,其中,顶层窗口信息用于指示在目标终端的顶层显示的目标窗口,目标窗口是目标应用的窗口;将目标应用的特征信息与预定的隐私保护规则进行匹配;根据匹配的结果,确定目标屏幕画面是否为待隐私保护的屏幕画面;

在目标终端的屏幕上显示目标屏幕画面、且目标屏幕画面是目标事件触发的屏幕画面时,获取目标事件对应的目标文本信息,其中,目标事件是在目标终端中检测到的事件;将目标文本信息与预定的隐私保护规则进行匹配;根据匹配的结果,确定目标屏幕画面是否为待隐私保护的屏幕画面。

对于顶层窗口信息对应的目标应用的特征信息与隐私保护规则的匹配、以及目标文本信息与隐私保护规则的匹配,在上述实施例中均有详细描述,此处不再赘述。

通过采用本实施例中多路并行的方式,分别从目标屏幕画面中的顶层窗口信息以及目标事件对应的目标文本信息等多个不同得维度对目标屏幕画面中的隐私特征进行提取,避免了单路检测方式无法覆盖完整地场景,提高了确定待隐私保护的屏幕画面的准确性,提升了屏幕画面分享方法的适用性。

通过上述各实施例中,可以看出,无论是顶层窗口信息对应的目标应用的特征信息与隐私保护规则的匹配,还是目标文本信息与隐私保护规则的匹配,均涉及预定的隐私保护规则,下面结合具体的示例对其进行详细描述。

作为一种可选的示例,上述方法还包括:

获取隐私保护规则,并将隐私保护规则保存在目标终端的操作系统中的本地文件中,其中,本地文件与在目标直播应用的文件不同,隐私保护规则被设置于允许被目标终端上的多个直播应用调用,多个直播应用包括目标直播应用。

具体地,如图10所示,假设目标终端中存在直播应用A和直播应用B,而隐私保护规则保存在目标终端的操作系统中的一个本地文件中,即,隐私保护规则所在的文件是操作系统中的文件,与直播应用A和直播应用B的应用文件不同。在执行本申请实施例中的屏幕画面分享方法时,如果当前的直播应用为直播应用A,则在确定目标屏幕画面是否为待隐私保护的屏幕画面时,直播应用A直接调用隐私保护规则,然后执行如图4所示的文本规则/名称规则/风险规则的匹配流程。

基于相同的原理,假设当前的直播应用为直播应用B,如果想要为直播应用B设置与直播应用A相同的隐私保护规则时,只需要将隐私保护规则设置为直播应用B可以直接调用的,即可执行如图4所示的文本规则/名称规则/风险规则的匹配流程。

需要说明的是,隐私保护规则所在的本地文件与目标应用A和目标应用B所在的文件均不同。换言之,隐私保护规则内置在目标终端的操作系统中的一个本地文件中,并且可以被多个直播应用调用。

显然,容易理解的是,上述多个直播应用的数量不做限定,例如,可以是如图10所示的两个,也可以是两个以上的任意数量。

为了更好地理解隐私保护规则,下面结合图11,从如图3中所示的应用层300的维度对其进行进一步的解释。

如图11所示,通过应用层300,可以自定义隐私保护规则,具体的流程包括:

S1102,判断是否开启屏幕隐私保护;

在一个可选的示例中,可以在直播应用中开启直播时,自动触发开启屏幕隐私保护。当然,也可以由用户(例如,直播帐号)手动开启和关闭屏幕隐私保护。

S1104,在确定开启屏幕隐私保护的情况下,调用目标终端的操作系统中的隐私保护规则生成器;

在一个可选的示例中,上述隐私保护规则生成器可以但不限于用于在不对隐私保护规则进行自定义的情况下,自动生成对应的隐私保护规则;在对隐私保护规则进行自定义的情况下,根据输入的自定义指令,生成对应的隐私保护规则。

S1106,判断是否自定义隐私保护规则;如果对隐私保护规则进行自定义,则执行步骤S1108;如果不对隐私保护规则进行自定义,则执行步骤S1120。

在一个可选的示例中,可以在直播应用中弹出选项框,该选项框众显示有“自定义隐私保护规则”的选项和“不自定义隐私保护规则”的选项。作为另一种可选的方式,还可以在直播应用的设置界面上或者直播终端的设置界面上显示“自定义隐私保护规则”的选项和“不自定义隐私保护规则”的选项。

在一个可选的示例中,“不自定义隐私保护规则”的选项也可以被理解为“使用默认的隐私保护规则”,或者,“由系统自动配置隐私保护规则”。

S1108,在确定自定义隐私保护规则的情况下,设置隐私保护规则;

在一个可选的示例中,可以在直播应用的设置界面上或者直播终端的设置界面上,响应于接收到的设置指令,设置对应的隐私保护规则。可选地,可以预先设置不同的隐私保护规则的模板,使得可以根据不同的模板来设置对应的隐私保护规则,其中,上述模板可以但不限于用于设置文本规则、选择对应的应用、设置应用使用时长限制等。

S1110,在对隐私保护规则中的文本规则进行设置时,可以响应于接收到的设置指令,设置文本规则中的自定义关键字或自定义关键词,这样,文本规则可以但不限于包括:当目标屏幕画面对应的信息(例如,目标事件对应的目标文本信息,或者,与顶层窗口信息对应的目标应用的特征信息)中包含了上述自定义关键字或自定义关键词时,将目标屏幕画面确定为待隐私保护的屏幕画面;

S1112,可以进一步在文本规则中设置文本类型,例如,可以但不限于在文本规则中设置文本类型为验证码类型或密码类型。这样,上述文本规则可以但不限于包括:当目标屏幕画面对应的信息(例如,目标事件对应的目标文本信息,或者,与顶层窗口信息对应的目标应用的特征信息)中包含了上述自定义关键字或自定义关键词、且上述自定义关键字或自定义关键词所在的文本的文本类型为验证码类型或密码类型时,将目标屏幕画面确定为待隐私保护的屏幕画面。

在一个可选的示例中,当接收到的设置指令用于指示根据指定的图片文件来设置对应的文本规则时,如果图片文件包含图片描述(image description)字段,也可以从图片描述字段中获取对应的信息,来设置对应的文本规则,例如,将上述图片描述字段中的关键词设置为文本规则中的自定义关键词。

在一个可选的示例中,上述隐私保护规则中的文本规则可以用于与图4所示的变化后的通知栏中的信息,或者变化后的窗口中的信息进行匹配。

S1114,选择隐私保护规则对应的应用;

在一个可选的示例中,通过调用应用选择器,在直播应用的设置界面上或者直播终端的设置界面上显示对应的应用列表,并响应于接收到的设置指令,从应用列表中选中隐私保护规则对应的隐私应用,作为需要进行隐私保护的应用,上述隐私应用可以但不限于包括以下至少之一:银行类、社交聊天类、相册等等自定义应用。

在一个可选的示例中,还可以在直播应用的设置界面上或者直播终端的设置界面上选中上述隐私应用中的部分页面,将这些页面设置为需要进行隐私保护的页面。

在一个可选的示例中,上述设置的隐私保护规则可以但不限于与如图4所示的顶层窗口信息对应的目标应用的特征信息进行匹配。

S1116,设置应用使用时长限制;

在一个可选的示例中,可以在直播应用的设置界面上或者直播终端的设置界面上,响应于接收到的设置指令,设置应用使用时长限制,例如,一个或多个应用的使用时长阈值以及为上述一个或多个应用设置的隐私保护规则。这样,如果上述一个或多个应用的累计使用时长小于预设的使用时长阈值,则上述为上述一个或多个应用设置的隐私保护规则处于不生效状态,即,不使用为上述一个或多个应用设置的隐私保护规则进行隐私保护。如果上述一个或多个应用的累计使用时长大于或等于预设的使用时长阈值,则将上述为上述一个或多个应用设置的隐私保护规则设置为生效状态,即,使用为上述一个或多个应用设置的隐私保护规则进行隐私保护。

可选的,可以参考图4中执行处理应用统计数据的过程中使用到的风险规则匹配,例如,与目标账号驻留在风险应用的驻留时长相对应的第一时长阈值,或者,与目标账号在目标应用中执行目标操作的持续时长对应的第二时长阈值等。

S1118,判断自定义隐私保护规则的进程是否继续;如果是,则执行步骤S1108,如果否,则结束当前流程。

其中,主要依据目标直播应用是否处于运行状态,如果是,则继续自定义隐私保护规则的进程;反之,则结束。

S1120,在根据当前目标直播应用的屏幕画面的内容,判断不需要自定义隐私保护规则的情况下,则创建智能规则。

智能规则自动生成,是基于已有的经验结论生成。这里的经验结论包含上述自定义规则中的结论就作为基本原则,另外再补充用户上一次的自定义规则用于二次保障。

采用上述自定义的隐私保护规则,可以灵活地设置与目标屏幕画面中隐私信息相对应的目标文本规则或目标路径规则等,从而确定目标屏幕画面是否为待隐私保护的屏幕画面,提高了设置隐私保护规则的灵活性,提升了隐私信息的安全性。

作为一种可选的示例,上述对目标屏幕画面中的隐私信息进行加密处理,得到加密屏幕画面,包括:

获取目标屏幕画面中隐私信息所在的目标区域;

将与目标区域对应的隐私保护画面叠加在目标屏幕画面的上面,得到加密屏幕画面,其中,隐私保护画面用于遮挡目标区域上的隐私信息。

具体地,可参考图6,当根据上述隐私保护规则确定目标屏幕画面600中的验证码“668955”为隐私信息的情况下,对字符串“668955”所在的区域进行加密处理。

在一个可选的示例中,加密处理的形式可以但不限于将隐私保护画面叠加在目标屏幕画面的目标区域上,例如,在目标屏幕画面600中“668955”所在的区域的上层叠加打码处理后的画面,得到加密屏幕画面602中所示的画面,其中,字符串“668955”在加密屏幕画面602处于不可见状态“668955”。

显然,上述对验证信息进行打码处理的方式仅为隐私保护画面的一种示例,并不对此进行限定。例如,还可以是其他任意形式的自定义涂鸦画面等。

需要说明的是,对目标屏幕画面中的隐私信息进行加密处理的方式仅仅是对隐私信息所在区域进行打码处理,但并没有修改目标屏幕画面(例如,短信、通知栏、其他风险应用的内容)的原始内容。在对隐私信息所在的区域执行目标操作(例如,点击、滚动、拖动、长按)后,直播终端的Android系统会通过打码区域所在的层将目标操作转发到下层界面上。换言之,上述屏幕隐私保护系统具备保证用户点击事件穿透的能力。

为了更好地理解上述屏幕画面分享方法,下面结合如图12所示的整体流程图进一步进行描述。在一个可选的示例中,图12中的步骤S1202-S1218可以由本申请实施例中的隐私保护应用执行,具体地,包括如下步骤:

S1202,启动屏幕隐私保护;

在一个可选的示例中,在直播应用中开始直播时,自动触发启动屏幕隐私保护。当然,也可以由用户(例如,直播帐号)手动开启和关闭屏幕隐私保护。

S1204,通过系统API接口,申请系统权限;

在一个可选的示例中,隐私保护应用可以通过直播终端的操作系统的系统AIP接口向操作系统申请系统权限。或者,隐私保护应用可以通过预先为直播应用分配的系统API接口向操作系统申请系统权限。

如图12所示,系统权限包括但不限于悬浮窗权限、屏幕录制权限、应用使用情况权限等。

S1206,判断授权是否通过;

在授权通过的情况下,执行步骤S1208~S1210,以便提取实时屏幕特征,即,获取目标屏幕画面对应的信息(例如,目标事件对应的目标文本信息,或者,与顶层窗口信息对应的目标应用的特征信息),具体流程可参考上述实施例中对图4的描述。

S1212,根据获取到的屏幕特征,判断目标屏幕画面是否为待隐私保护的屏幕画面,即,判定是否存在隐私信息;

例如,对顶层窗口信息中是否存在隐私信息的判定,可参考如图4中步骤S406~S410,具体地,参考与顶层窗口信息对应的目标应用的特征信息进行名称规则匹配的实现方式,此处不再赘述。

S1214~S1216,对目标屏幕画面中的隐私信息进行打码,得到加密屏幕画面(如图6所示的加密屏幕画面602),将加密屏幕画面写入屏幕内容缓存(buffer)。

S1218,判断对目标屏幕画面进行加密处理的进程是否结束;

在判断结果为未结束的情况下,重复执行步骤S1210~S1214;反之,则结束流程。

需要说明的是,屏幕内容缓存(buffer)可以但不限于是直播终端102的操作系统中的一个本地缓存,在通过步骤S1220~S1224,启动屏幕分享直播推流,并开始屏幕录制之后,目标直播应用可以直接读取预先写入屏幕内容缓存(buffer)中的加密屏幕画面,如步骤S1226。目标直播应用将读取到的加密屏幕画面分享给观看终端110,其中,加密屏幕画面中的隐私信息为不可见状态。

基于上述分析可知,步骤S1202~S1214与步骤S1220~S1226为并行处理的两个独立流程,也就意味着,在采用现有的直播应用实现屏幕画面的分享的过程中,不需要通过后台修改直播应用本身的程序代码,就可以支持对屏幕画面中的隐私信息进行加密处理,不仅保证了直播应用本身的运行效率,而且提高了直播推流系统的兼容性。

通过本申请提供的上述实施例,在将直播终端的屏幕画面分享给目标观看账号的过程中,通过对目标屏幕画面中的隐私信息进行加密处理,使得隐私信息在加密屏幕画面中处于不可见状态。进而使得目标观看账号无法查看加密屏幕画面中的隐私信息,避免了直播账号的隐私信息的泄露,解决了屏幕画面分享过程中出现的隐私信息的安全性较低的技术问题,实现了提高隐私信息安全性的技术效果。

需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。

根据本发明实施例的另一个方面,还提供了如图13所示的一种屏幕画面分享装置,该装置包括:

第一处理单元1302,用于账号在目标终端的屏幕上显示目标屏幕画面时,确定目标屏幕画面是否为待隐私保护的屏幕画面,其中,目标屏幕画面是目标直播应用待分享给目标观看账号的屏幕画面,目标直播应用运行在目标终端上,目标观看账号是目标直播应用进行当前直播时的观看账号;

为了更好地理解上述屏幕画面分享方法的实现过程,下面首先结合图3所示的系统架构图对执行上述屏幕画面分享方法所应用到的各个层进行解释。

如图3所示,实现上述屏幕画面分享方法的系统框架主要包括应用层300、屏幕特征提取层302、基础能力层304等。下面针对各个部分进行描述。

(3)应用层300:用于对隐私保护规则进行设置。如图3所示,应用层300可以对隐私保护规则进行自动生成,或者,对隐私保护规则进行自定义。此外,如图3所示,应用层300还可以实现用户交互,例如,在直播的过程中显示悬浮窗,或者,对隐私区域进行屏幕渲染等。

作为一种可选的示例,上述设置的隐私保护规则可以但不限于包括:当终端的屏幕画面中出现验证码类型的文本、且该文本中连续出现6位数字时,确定该屏幕画面为待隐私保护的屏幕画面。

进一步,上述隐私保护规则还可以包括确定待隐私保护的屏幕画面中的隐私信息的规则,例如,上述隐私保护规则可以但不限于包括:当终端的屏幕画面中出现验证码类型的文本、且该文本中连续出现6位数字时,确定该屏幕画面为待隐私保护的屏幕画面,且该文本中连续出现的6位数字为隐私信息。

进一步,上述隐私保护规则还可以包括对隐私信息进行加密处理的方式,例如,上述隐私保护规则可以但不限于包括:当终端的屏幕画面中出现验证码类型的文本、且该文本中连续出现6位数字时,确定该屏幕画面为待隐私保护的屏幕画面,该文本中连续出现的6位数字为隐私信息,且对上述隐私信息进行加密处理的方式为对上述隐私信息进行打码处理,以使得打码后上述隐私信息处于不可见状态。可选地,上述打码处理可以但不限于为对上述隐私信息所在的屏幕区域覆盖上马赛克。

进一步,上述隐私保护规则还可以包括对隐私信息进行打码处理的方式,例如,上述隐私保护规则可以但不限于包括:当终端的屏幕画面中出现验证码类型的文本、且该文本中连续出现6位数字时,确定该屏幕画面为待隐私保护的屏幕画面,该文本中连续出现的6位数字为隐私信息,对上述隐私信息进行加密处理的方式为对上述隐私信息进行打码处理,以使得打码后上述隐私信息处于不可见状态,其中,上述打码处理可以但不限于为对上述隐私信息所在的屏幕区域覆盖上马赛克,或者,为悬浮窗打码,这里,悬浮窗打码是在上述隐私信息所在的屏幕区域上覆盖一个悬浮可移动的窗口,通过该悬浮窗口使得屏幕画面中的隐私信息为不可见状态。

(4)屏幕特征提取层302:用于提取屏幕画面对应的特征,例如,可以实时地提取屏幕画面对应的特征。作为一种可选的示例,根据上述应用层300中自定义的隐私保护规则,提取直播终端102的屏幕画面对应的特征。如图3所示,提取的特征包括但不限于以下几种情况:

3)顶层应用特征(或称为顶层App特征)

以直播终端102的屏幕画面为例,假设当前的屏幕画面为直播应用的直播画面,如果将直播画面切换为聊天应用的消息页面(可以视为聊天应用的当前页面),则直播终端102的顶层应用由直播应用变为聊天应用,这样,提取的顶层应用特征可以但不限于包括上述聊天应用的当前页面对应的路径信息,其中,上述路径信息可以但不限于包括聊天应用的安装包名称(以下为了描述方便,统一简称为“包名”)和当前页面的相对路径。换句话说,上述顶层应用特征可以但不限于包括提取到的聊天应用的包名和/或上述相对路径。然后,根据应用层300中设置的隐私保护规则,对顶层应用特征与隐私保护规则进行匹配,以确定上述聊天应用是否为风险应用,即,待隐私保护的应用。可选地,上述顶层应用特征可以被称为顶层应用的特征信息,本申请的实施例对此不作限定。

作为一种可选的示例,上述顶层应用特征可以但不限于包括以下至少之一:顶层应用的包名、顶层应用的当前页面的相对路径、当前页面中视图控件的文本信息(如编辑框提醒文本、图片的文字描述等)、当前页面中视图控件的类型(如编辑框是否是密码类型、输入法是否是验证码模式等)。

为了便于理解上述当前页面的相对路径,下面结合具体示例对其进行说明。

在一个实施例中,上述顶层应用是可以实现短信内容的编辑、修改、发送和接收等功能的应用,该应用的包名为com.android.mms.。上述顶层应用中的各个页面的路径均由应用的包名和相对路径组成,例如,短信列表页面的路径为com.android.mms.ui.ConversationList,短信详情页的路径为com.android.mms.ui.conversation.ConversationActivity,这样,短信列表页面和短信详情页面的相对路径则分别为在上述路径中去掉应用的包名所得到的相对路径,即,分别为ui.ConversationList、ui.conversation.ConversationActivity。

4)无障碍模式特征

通过无障碍模式,可以但不限于获取页面中的文本信息、图片描述信息、UI展示事件等。

例如,当系统提醒消息为“此时出现了一个通知栏”,且通知栏内容为“您收到一条短信,验证码为009112,五分钟内有效”,那么通知栏内容可以被理解为页面中的文本信息。

又例如,当收到系统通知为“你当前在密码类型的编辑框输入文本”、“你当前在拨打电话,正在输入139...”,那么系统通知可以被理解为UI展示事件。

此外,采用无障碍模式可以对页面中的文本信息、图片描述信息、UI展示事件进行特征提取(所提取的特征可以被称为无障碍模式特征),并依据所提取的特征对隐私信息进行加密处理等。

3)应用统计特征

上述应用统计特征可以但不限于用于提供直播过程中的数据警示能力,例如,根据应用统计特征校正上述应用层中定义或判定不准确的事项。

举例来说,对于应用层中自定义的隐私保护规则可能存在不准确的问题,通过应用统计特征,可以实现对不准确的隐私保护规则进行校正提醒。又例如,在直播过程中,如果主播长期停留在某个风险应用内、或者长期进行文本输入等,则统计主播使用该风险应用的时长或者统计输入文本的字符数等,进一步确定对该风险应用的判定是否准确。

需要说明的是,上述校正提醒的实现方式可以但不限于如下方式之一:

a)当用户需要完善隐私保护规则时,则会提醒一些应用页面出现过密码输入,是否继续为上述应用页面补充对应的隐私保护规则;

b)当用户在前一个版本的应用中添加应用页面路径规则时,由于更新版本后的应用页面的相对路径会发生变化,则会提醒是否在隐私保护规则中更新或补充与变化后的相对路径对应的规则。

显然,通过屏幕特征提取层302所提取到的上述三种特征是确定目标屏幕画面中是否存在隐私信息的关键因素,也是实现本申请实施例中屏幕画面分享方法的过程中较为重要的一个方面,因此,下面会结合具体实施例进行详细描述。

(3)基础能力层304:是为了构建本申请实施例中对目标屏幕画面中的隐私信息进行加密处理所具备的能力。

在对基础能力层304进行描述之前,首先对实现本申请实施例中的屏幕画面分享方法所用到的直播推流技术进行简单介绍。所谓直播推流指的是:在直播过程中,主播将本地客户端采集编码后的视频数据分发(又称为推流)到观看客户端的过程。

本申请实施例中的屏幕画面分享方法,是在相关技术中的直播推流方案中结合隐私保护方案来实现对目标屏幕画面中的隐私信息进行保护。作为一种可选的实现方式,上述隐私保护方案可以以独立应用的形式存在,也可以是以软件包SDK或插件的形式存在。也就是说,可以在一个应用(与直播应用不同的应用)中实现本申请实施例中的屏幕画面分享方法,或者,在软件包SDK或插件中实现本申请实施例中的屏幕画面分享方法。

当以独立应用(例如,隐私保护应用)的形式存在时,本申请实施例中的直播推流的实现方式包括但不限于以下三种方式:

(a)利用隐私保护应用来实现屏幕画面的推流

在直播应用待分享的目标屏幕画面中不存在隐私信息的情况下,隐私保护应用或者直播应用直接将目标屏幕画面写入如图12所示的屏幕内容缓存(buffer)中,然后读取屏幕内容缓存中的目标屏幕画面,并将读取到的目标屏幕画面推送至观看终端;

在直播应用待分享的目标屏幕画面中存在隐私信息的情况下,利用隐私保护应用对待分享的目标屏幕画面中的隐私信息进行加密处理,然后将加密后的屏幕画面(为了描述方便,简称为“加密屏幕画面”)写入如图12所示的屏幕内容缓存中;最后,隐私保护应用将屏幕内容缓存中的加密屏幕画面推送至观看终端。

(b)利用直播应用来实现屏幕画面的推流

在直播应用待分享的目标屏幕画面中不存在隐私信息的情况下,隐私保护应用或者直播应用直接将目标屏幕画面写入如图12所示的屏幕内容缓存(buffer)中;直播应用读取屏幕内容缓存中的目标屏幕画面,并将目标屏幕画面推送至观看终端;

在直播应用待分享的目标屏幕画面中存在隐私信息的情况下,利用隐私保护应用对待分享的目标屏幕画面中的隐私信息进行加密处理,然后将加密屏幕画面写入如图12所示的屏幕内容缓存(buffer)中;直播应用读取屏幕内容缓存中的加密屏幕画面,然后将加密屏幕画面推送至观看终端。

(c)直播应用和隐私保护应用共同实现屏幕画面的推流

在直播应用待分享的目标屏幕画面中不存在隐私信息的情况下,隐私保护应用或者直播应用直接将目标屏幕画面写入如图12所示的屏幕内容缓存(buffer)中,直播应用读取屏幕内容缓存中的目标屏幕画面,然后将目标屏幕画面推送至观看终端。

在直播应用待分享的目标屏幕画面中存在隐私信息的情况下,利用隐私保护应用对待分享的目标屏幕画面中的隐私信息进行加密处理,得到加密屏幕画面,然后将加密屏幕画面写入如图12所示的屏幕内容缓存(buffer)中;隐私保护应用读取屏幕内容缓存中的加密屏幕画面,然后将加密屏幕画面推送至观看终端。

通过上述分析可知,在本申请实施例中的屏幕画面分享方法中,屏幕画面的推送可以由直播推流应用来完成,也可以由隐私保护应用来完成。

作为一种可选的示例,在上述屏幕画面分享方法以隐私保护应用的形式存在时,通过上述基础能力,可以实现如下目标:

1)隐私保护应用具备不易被系统强行退出的能力。

其中,隐私保护应用可以被理解为对目标屏幕画面进行加密处理的应用。上述系统可以但不限于被理解为是直播终端102的操作系统(例如,Android系统)等。

在一个可选的示例中,上述隐私保护应用不易被系统强行退出,可以但不限于以下两个层面的理解:

(2)实现方式:可以结合直播终端102的操作系统的悬浮窗实现,并创建系统前台服务(ForegroundService),能降低直播终端102的操作系统强行将隐私保护应用退出的优先级,以确保隐私保护应用可以在后台正常运行。

可选地,在结合悬浮窗实现的过程中,可以采用以下方式来确定打码区域的尺寸或者悬浮窗的尺寸:

c)在对隐私信息进行打码的场景中,根据悬浮窗的尺寸确定打码区域的尺寸;

d)在非隐私信息的场景中,不需要对屏幕画面进行打码,悬浮窗的尺寸设定为单个像素的尺寸,以保证用户无法感知。

(2)悬浮窗机制:保证了对屏幕画面中的隐私信息进行打码的真实性,因此,隐私保护应用会将打码后的加密屏幕画面传输给后台。

需要说明的是,直播终端102中包括上述隐私保护应用、直播应用及Android系统,在直播应用执行目标直播事件的过程中,隐私保护应用会循环执行如下操作:

S1,在目标终端的屏幕上显示目标屏幕画面时,确定目标屏幕画面是否为待隐私保护的屏幕画面;

作为一种可选的示例,目标屏幕画面可以但不限于直播应用的直播画面,例如,还可以是直播终端102中的其他应用的显示画面,或者直播终端102的操作系统推送的通知类消息的画面等。换言之,在一个可选的示例中,目标屏幕画面可以但不限于包括直播终端102上显示的所有画面。

S2,在确定出目标屏幕画面为待隐私保护的屏幕画面的情况下,对目标屏幕画面中的隐私信息进行加密处理,得到加密屏幕画面,其中,所述隐私信息在加密屏幕画面中处于不可见状态;

在一个可选的示例中,在确定出目标屏幕画面为待隐私保护的屏幕画面的情况下,上述隐私保护应用才会获取目标屏幕画面,然后对获取到的目标屏幕画面进行加密处理,而不需要通过图像处理的方式实时获取目标屏幕画面。

可选的,步骤S1中确定目标屏幕画面是否为待隐私保护的屏幕画面的方式可以但不限于包括:

i)在直播终端中检测到目标事件的情况下,将目标事件对应的目标文本信息与预设的隐私保护规则进行匹配,和/或,将目标事件对应的目标事件路径与预设的隐私保护规则进行匹配;根据匹配的结果,确定目标屏幕画面是否为待隐私保护的屏幕画面。

可选的,可以通过直播终端上的操作系统发送的系统通知,判断是否检测到上述目标事件。作为一种可选的示例,上述目标事件可以但不限于包括:用于表示直播终端(也可称为目标终端)上的通知栏发生变化的事件,或者,用于表示直播终端上的窗口发生变化的事件。可选的,上述目标屏幕画面是目标事件触发的屏幕画面,例如,上述目标屏幕画面是直播终端上出现了通知栏所形成的画面,或者,是直播终端上出现了新的窗口所形成的画面。

ii)将上述直播终端的顶层窗口信息与预设的隐私保护规则进行匹配;根据匹配的结果,确定目标屏幕画面是否为待隐私保护的屏幕画面。

S3,在得到加密屏幕画面的情况下,将加密屏幕画面写入屏幕内容缓存(buffer)中。

2)隐私保护悬浮窗不影响隐私保护应用分享直播推流的交互体验,不改变屏幕本身的UI(User Interface,用户界面)。

其中,隐私保护悬浮窗可以被理解为对待分享的屏幕画面中的隐私信息所在的区域进行打码所创建的悬浮窗,也是实现对屏幕画面中的隐私信息进行加密处理所利用到的悬浮窗机制,具体可参考上述实施例中的说明。

为了更好地理解上述直播推流的实现过程,下面对直播应用和隐私保护应用进行进一步描述。

假设直播终端102的系统为安卓系统,上述直播推流的过程是在直播应用上实现的。当预先设置了隐私保护规则时,在待分享的目标屏幕画面为待隐私保护的屏幕画面的情况下,隐私保护应用会将待分享的屏幕画面中的隐私信息进行打码,得到加密屏幕画面,并将加密屏幕画面输出到预先创建的虚拟显示器(如图5所示的VirtualDisplay),其中,上述虚拟显示器可以但不限于用于获取屏幕画面内容。这样,直播应用推流的屏幕画面为打码后的加密屏幕画面。

可选地,上述过程可以描述成以下具体步骤:

S11,用户自定义隐私保护规则,例如,通过对默认规则进行选择、添加等;

S12,直播终端102中的直播应用开始直播;

S13,在直播过程中,在检测到直播终端102的屏幕画面中有通知栏、短信、相册、密码等隐私信息时,启动悬浮窗机制,对屏幕中的隐私信息所在的区域进行打码,得到加密屏幕画面,并将加密屏幕画面写入上述虚拟显示器对应的缓存中;

S14,直播应用读取上述虚拟显示器对应的缓存中的加密屏幕画面,并将加密屏幕画面推送到观看终端。

可以理解的是,由于隐私保护应用与直播应用为直播终端102中两个独立运行的应用,在上述加密处理过程中,直播应用不需要做任何修改,直播终端的目标屏幕画面本身也并没有发生改变,执行上述打码处理的主体仅为隐私保护应用。

3)保证用户操作事件具有穿透能力

结合上述分析可知,对目标屏幕画面中的隐私信息进行加密处理的方式是指对隐私信息所在区域进行打码处理,但并没有修改目标屏幕画面的原始内容(例如,直播、短信、通知栏、或者预设风险应用中显示的内容)。在对隐私信息所在的区域执行目标操作(例如,点击、滚动、拖动、长按)时,该目标操作会先到达打码画面(例如,马赛克)所在的层,这是直播终端的安卓系统会将上述目标操作形成的操作事件转发到下层界面上(例如,转发到隐私信息所在的层),使得可以上述目标操作可以作用在隐私信息所在的层上,即,保证用户操作事件具有穿透能力。

需要说明的是,上述对隐私信息所在的区域执行目标操作可以被理解为主播对该区域的点击、拖动、滚动等操作,并且悬浮窗打码的隐私信息相对于主播来说是可见的,这是由于隐私信息本身的内容并没有改变,只是将打码后的隐私信息所在的区域发送至缓存区,并将打码后的隐私信息所在的区域推流出去,以确保观看终端无法观看屏幕画面中的隐私信息。

4)具备在全局系统屏幕窗口上绘制视图(View)的能力

在一种可选的示例中,在全局系统屏幕窗口上绘制视图的能力是指:使用系统级悬浮窗对屏幕画面中的隐私信息进行打码处理,即,将系统级悬浮窗覆盖在屏幕画面中的隐私信息之上,其中,上述系统级悬浮窗是在直播终端的顶层应用是任何应用时都可以存在的悬浮窗,从而可以在直播终端的顶层应用是任何应用时,都可以使用系统级悬浮窗对屏幕画面中的隐私信息进行打码处理,这样就是具备了在全局系统屏幕窗口上绘制视图的能力。

在一种可选的示例中,上述绘制视图的步骤包括:通过系统级悬浮窗把打码画面(例如,马赛克)绘制到任意应用的任意位置做个浮层,而不用改应用的内容。

加密单元1304,用于在确定出目标屏幕画面为待隐私保护的屏幕画面的情况下,对目标屏幕画面中的隐私信息进行加密处理,得到加密屏幕画面,其中,隐私信息在加密屏幕画面中处于不可见状态;

在一个可选的示例中,在对目标屏幕画面中的隐私信息进行加密处理后,得到加密屏幕画面,然后,将加密屏幕画面输出到如图12所示的屏幕内容缓存中,直播应用读取屏幕内容缓存中的加密屏幕画面,并将其推送至观看终端(例如,推送给目标观看帐号)。

第一传输单元1306,用于将加密屏幕画面通过目标直播应用传输给目标观看账号进行显示。

作为一种可选的示例,如图6所示,假设目标屏幕画面中的信息为顶层窗口信息,通过如图4所示的屏幕特征提取流程,确定图6中的目标屏幕画面600中存在验证码“668955”,且该验证码的文本规则满足预定的隐私保护规则,则确定目标屏幕画面600中的验证码为隐私信息。

对目标屏幕画面600中的验证码所在的区域进行加密处理,例如,进行打码处理,得到如图6所示的加密屏幕画面602。从图6中可以直观地看出,验证码在加密屏幕画面602中处于不可见状态。那么将加密屏幕画面602分享(推送)给如图1所示的观看终端110后,则登录观看终端110的目标观看账号将无法观看到加密屏幕画面中的验证码“668955”。

通过本申请提供的实施例应用于上述屏幕画面分享装置,在将直播终端的屏幕画面分享给目标观看账号的过程中,通过对目标屏幕画面中的隐私信息进行加密处理,使得隐私信息在加密屏幕画面中处于不可见状态。进而使得目标观看账号无法查看加密屏幕画面中的隐私信息,避免了直播账号的隐私信息的泄露,解决了屏幕画面分享过程中出现的隐私信息的安全性较低的技术问题,实现了提高隐私信息安全性的技术效果。

可选地,上述第一处理单元1302,包括:

第一处理模块,用于在目标终端的屏幕上显示目标屏幕画面时,根据在目标终端中检测到的目标事件,确定目标屏幕画面是否为待隐私保护的屏幕画面,其中,目标屏幕画面是目标事件触发的屏幕画面;和/或

在目标终端的屏幕上显示目标屏幕画面时,根据目标终端的顶层窗口信息,确定目标屏幕画面是否为待隐私保护的屏幕画面,其中,顶层窗口信息用于指示在目标终端的顶层显示的目标窗口,目标窗口是目标应用的窗口。

可选地,上述第一处理单元,包括:

第一获取模块,用于在目标终端的屏幕上显示目标屏幕画面时,获取目标终端的顶层窗口信息,并获取与顶层窗口信息对应的目标应用的特征信息,其中,顶层窗口信息用于指示在目标终端的顶层显示的目标窗口,目标窗口是目标应用的窗口;

第二处理模块,用于将目标应用的特征信息与预定的隐私保护规则进行匹配;

第三处理模块,用于在目标应用的特征信息满足隐私保护规则中的目标命名规则的情况下,将目标屏幕画面确定为待隐私保护的屏幕画面。

可选地,上述第一获取模块还包括:

第一获取子模块,用于通过预先注册的生命周期回调函数,获取目标终端的操作系统发送的系统通知消息,其中,系统通知消息用于指示目标终端的顶层窗口信息以及目标应用的特征信息,生命周期回调函数是在创建操作系统的系统进程时注册的函数;

第二获取子模块,用于获取系统通知消息指示的目标终端的顶层窗口信息以及目标应用的特征信息。

可选地,上述第一处理模块,包括:

第三获取子模块,用于在目标终端的屏幕上显示目标屏幕画面、且目标屏幕画面是目标事件触发的屏幕画面时,获取目标事件对应的目标文本信息,其中,目标事件是在目标终端中检测到的事件;

第一处理子模块,用于将目标文本信息与预定的隐私保护规则进行匹配;

第二处理子模块,用于在目标文本信息中的字段满足隐私保护规则中的目标文本规则的情况下,将目标屏幕画面确定为待隐私保护的屏幕画面。

可选地,上述第一处理模块还包括:

第四获取子模块,用于在目标终端的屏幕上显示目标屏幕画面、且目标屏幕画面是目标事件触发的屏幕画面时,获取目标事件对应的目标事件路径,其中,目标事件是在目标终端中检测到的事件;

第三处理子模块,用于将目标事件路径与预定的隐私保护规则进行匹配;

第四处理子模块,用于在目标事件路径满足隐私保护规则中的目标路径规则的情况下,获取目标事件对应的目标文本信息,并将目标文本信息与预定的隐私保护规则进行匹配;

第五处理子模块,用于在目标文本信息中的字段满足隐私保护规则中的目标文本规则的情况下,将目标屏幕画面确定为待隐私保护的屏幕画面。

可选地,上述第一处理模块,还包括以下至少一种:

第六处理子模块,用于在目标事件用于表示目标终端上的通知栏发生变化的情况下,获取目标终端上变化后的通知栏中的信息,其中,目标文本信息包括变化后的通知栏中的信息;

第五获取子模块,用于在目标事件用于表示目标终端上的窗口发生变化的情况下,获取目标终端上变化后的窗口中的信息,其中,目标文本信息包括变化后的窗口中的信息。

可选地,上述第一处理模块,还包括:

第六获取子模块,用于通过目标终端上运行的目标进程,获取目标事件对应的目标文本信息,其中,目标进程是目标终端的操作系统中的目标能力层的事件分发出口。

可选地,上述第一处理模块,还包括:

第七获取子模块,用于在目标终端的屏幕上显示目标屏幕画面时,获取目标终端的顶层窗口信息,并获取与顶层窗口信息对应的目标应用的特征信息,其中,顶层窗口信息用于指示在目标终端的顶层显示的目标窗口,目标窗口是目标应用的窗口;

第七处理子模块,用于将目标应用的特征信息与预定的隐私保护规则进行匹配;

第八处理子模块,用于在目标应用的特征信息满足隐私保护规则中的目标命名规则的情况下,获取在目标应用中驻留的驻留时长,在驻留时长小于或等于预设的第一时长阈值的情况下,将目标屏幕画面确定为待隐私保护的屏幕画面;或者,在目标应用的特征信息满足隐私保护规则中的目标命名规则的情况下,获取在目标应用中执行目标操作的持续时长,在持续时长小于或等于预设的第二时长阈值的情况下,将目标屏幕画面确定为待隐私保护的屏幕画面。

可选地,上述装置还包括:

第九处理子模块,用于以并行的方式执行以下步骤,以确定目标屏幕画面是否为待隐私保护的屏幕画面:

在目标终端的屏幕上显示目标屏幕画面时,获取目标终端的顶层窗口信息,并获取与顶层窗口信息对应的目标应用的特征信息,其中,顶层窗口信息用于指示在目标终端的顶层显示的目标窗口,目标窗口是目标应用的窗口;

将目标应用的特征信息与预定的隐私保护规则进行匹配;根据匹配的结果,确定目标屏幕画面是否为待隐私保护的屏幕画面;

在目标终端的屏幕上显示目标屏幕画面、且目标屏幕画面是目标事件触发的屏幕画面时,获取目标事件对应的目标文本信息,其中,目标事件是在目标终端中检测到的事件;

将目标文本信息与预定的隐私保护规则进行匹配;根据匹配的结果,确定目标屏幕画面是否为待隐私保护的屏幕画面。

可选地,上述装置还包括:

第十处理子模块,用于获取隐私保护规则,并将隐私保护规则保存在目标终端的操作系统中的本地文件中,其中,本地文件与在目标直播应用的文件不同,隐私保护规则被设置于允许被目标终端上的多个直播应用调用,多个直播应用包括目标直播应用。

可选地,上述装置还包括:

第八获取子模块,用于获取目标屏幕画面中隐私信息所在的目标区域;

第十一处理子模块,用于将与目标区域对应的隐私保护画面叠加在目标屏幕画面的上面,得到加密屏幕画面,其中,隐私保护画面用于遮挡目标区域上的隐私信息。

通过将上述装置应用于将上述屏幕画面的分享,使得在将直播终端的屏幕画面分享给目标观看账号的过程中,对目标屏幕画面中的隐私信息进行加密处理。进而使得目标观看账号无法查看加密屏幕画面中的隐私信息,避免了直播账号的隐私信息的泄露,解决了屏幕画面分享过程中出现的隐私信息的安全性较低的技术问题,实现了提高隐私信息安全性的技术效果。

需要说明的是,这里的屏幕画面分享装置的实施例可以参考上述屏幕画面分享方法的实施例,这里不再赘述。

根据本申请实施例的又一个方面,还提供了一种用于实施上述屏幕画面分享方法的电子设备,该电子设备可以是图14所示的终端设备。本实施例以该电子设备为后台设备为例来说明。如图14所示,该电子设备包括存储器1402和处理器1404,该存储器1402中存储有计算机程序,该处理器1404被设置为通过计算机程序执行上述任一项方法实施例中的步骤。

可选地,在本实施例中,上述电子设备可以位于计算机网络的多个网络设备中的至少一个网络设备。

可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:

S1,账号在目标终端的屏幕上显示目标屏幕画面时,确定目标屏幕画面是否为待隐私保护的屏幕画面,其中,目标屏幕画面是目标直播应用待分享给目标观看账号的屏幕画面,目标直播应用运行在目标终端上,目标观看账号是目标直播应用进行当前直播时的观看账号;

S2,在确定出目标屏幕画面为待隐私保护的屏幕画面的情况下,对目标屏幕画面中的隐私信息进行加密处理,得到加密屏幕画面,其中,隐私信息在加密屏幕画面中处于不可见状态;

S3,将加密屏幕画面通过目标直播应用传输给目标观看账号进行显示。

可选地,本领域普通技术人员可以理解,图14所示的结构仅为示意,电子装置电子设备也可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌上电脑以及移动互联网设备(Mobile Internet Devices,MID)、PAD等目标终端。图14其并不对上述电子装置电子设备的结构造成限定。例如,电子装置电子设备还可包括比图14中所示更多或者更少的组件(如网络接口等),或者具有与图14所示不同的配置。

其中,存储器1402可用于存储软件程序以及模块,如本申请实施例中的屏幕画面分享方法和装置对应的程序指令/模块,处理器1404通过运行存储在存储器1402内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的屏幕画面分享方法。存储器1402可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器1402可进一步包括相对于处理器1404远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。其中,存储器1402具体可以但不限于用于存储隐私信息保护规则、加密屏幕画面等。作为一种示例,如图14所示,上述存储器1402中可以但不限于包括上述屏幕画面分享装置中的第一处理单元1302、加密单元1304、第一传输单元1306。此外,还可以包括但不限于上述屏幕画面分享装置中的其他模块单元,本示例中不再赘述。

可选地,上述的传输装置1406用于经由一个网络接收或者发送数据。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置1406包括一个网络适配器(Network Interface Controller,NIC),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置1406为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。

此外,上述电子设备还包括:显示器1408,用于显示上述允许推送的媒体资源;和连接总线1410,用于连接上述电子设备中的各个模块部件。

在其他实施例中,上述目标终端或者服务器可以是一个分布式系统中的一个节点,其中,该分布式系统可以为区块链系统,该区块链系统可以是由该多个节点通过网络通信的形式连接形成的分布式系统。其中,节点之间可以组成点对点(P2P,Peer To Peer)网络,任意形式的计算设备,比如服务器、终端等电子设备都可以通过加入该点对点网络而成为该区块链系统中的一个节点。

根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述服务器校验处理等方面各种可选实现方式中提供的屏幕画面分享方法,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。

可选地,在本实施例中,上述计算机可读的存储介质可以被设置为存储用于执行以下步骤的计算机程序:

S1,在目标终端的屏幕上显示目标屏幕画面时,确定目标屏幕画面是否为待隐私保护的屏幕画面,其中,目标屏幕画面是目标直播应用待分享给目标观看账号的屏幕画面,目标直播应用运行在目标终端上,目标观看账号是目标直播应用进行当前直播时的观看账号;

S2,在确定出目标屏幕画面为待隐私保护的屏幕画面的情况下,对目标屏幕画面中的隐私信息进行加密处理,得到加密屏幕画面,其中,隐私信息在加密屏幕画面中处于不可见状态;

S3,将加密屏幕画面通过目标直播应用传输给目标观看账号进行显示。

可选地,在本实施例中,本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令目标终端相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(Random Access Memory,RAM)、磁盘或光盘等。

上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。

上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。

在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。

作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

以上仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

相关技术
  • 屏幕布局数据处理方法、装置、电子设备及存储介质
  • 屏幕亮度调节方法、装置、存储介质及电子设备
  • 屏幕显示的调节方法及装置、电子设备、存储介质
  • 电子设备的显示控制方法、装置、电子设备和存储介质
  • 电子设备控制方法及装置、电子设备及存储介质
  • 基于手势的屏幕分享方法、装置、电子设备和存储介质
  • 一种多屏幕内容分享方法、装置、电子设备及存储介质
技术分类

06120116513177