投屏方法、装置、存储介质及电子设备与流程

文档序号:33036571发布日期:2023-01-24 20:07阅读:40来源:国知局
投屏方法、装置、存储介质及电子设备与流程

1.本技术涉及通信领域,尤其涉及一种投屏方法、装置、存储介质及电子设备。


背景技术:

2.投屏,指将一台设备(发送端)中的内容投放到另一台设备(接收端)进行显示,例如,将手机中的内容投放到电视屏幕上进行显示等。
3.相关技术,在进行投屏时,一般需要经过在发送端打开投屏软件,再打开需要进行投屏的应用软件,再输入投屏码与接收端设备进行连接,等一系列操作才能开始投屏。步骤繁多,操作效率较低。


技术实现要素:

4.本技术实施例提供了一种投屏方法、装置、存储介质及电子设备,可以减少投屏过程中用户的操作步骤,提高操作效率,可以解决开始投屏前操作复杂的问题。所述技术方案如下:
5.第一方面,本技术实施例提供了一种投屏方法,应用于发送端,所述方法包括:
6.通过投屏软件打开目标应用,所述投屏软件在安装过程中已与所述目标应用进行关联;
7.搜索接收端发布的服务信息,所述服务信息包括所述接收端的地址;
8.若搜索到目标接收端发布的服务信息,则对所述目标接收端发布的服务信息进行解析,得到所述目标接收端的地址;
9.根据所述目标接收端的地址,将所述目标应用的数据发送到所述目标接收端,以使所述目标接收端对所述目标应用的数据进行显示。
10.可选的,所述接收端发布的服务信息还包括所述接收端的加密密码;
11.所述对所述目标接收端发布的服务信息进行解析,得到所述目标接收端的地址,包括:
12.对所述目标接收端发布的服务信息进行解析,得到所述目标接收端的地址和所述目标接收端的加密密码;
13.所述方法还包括:
14.显示所述目标接收端的加密密码,以使所述目标接收端对用户输入的所述发送端显示的加密密码进行验证,并在验证通过后对所述目标应用的数据进行显示。
15.可选的,所述方法还包括:
16.安装所述投屏软件;
17.将所述投屏软件与指定应用进行关联,所述指定应用中包括所述目标应用。
18.可选的,所述将所述投屏软件与指定应用进行关联,包括:
19.调用regcreatekeyex函数和regsetvalueex函数,对所述投屏软件的注册表进行操作,以将所述投屏软件与指定应用的右键菜单进行关联;
20.所述通过投屏软件打开目标应用,包括:
21.打开目标应用的右键菜单,基于所述投屏软件与所述右键菜单的关联关系,通过所述投屏软件打开所述目标应用。
22.可选的,所述服务信息是所述接收端基于多播域名系统协议和简单服务发现协议发布的。
23.可选的,所述若搜索到目标接收端发布的服务信息,则对所述目标接收端发布的服务信息进行解析,包括:
24.若搜索到多个接收端发布的服务信息,则显示所述多个接收端发布的服务信息;
25.接收用户输入的目标接收端选择指令,所述目标接收端选择指令对应所述多个接收端发布的服务信息中的一个;
26.根据所述目标接收端选择指令,确定目标接收端发布的服务信息;
27.对所述目标接收端发布的服务信息进行解析。
28.可选的,所述方法还包括:
29.若未搜索到目标接收端发布的服务信息,则显示pin码输入界面;
30.接收用户输入的pin码,所述pin码用于指示所述目标接收端的地址;
31.对pin码进行解析,得到所述目标接收端的地址。
32.可选的,所述将所述目标应用的数据发送到所述目标接收端,以使所述目标接收端对所述目标应用的数据进行显示,包括:
33.将所述目标应用对应的窗口数据发送到所述目标接收端,以使所述目标接收端对所述目标应用进行窗体投屏;
34.和/或,
35.若所述目标应用对应的窗口在当前桌面的最顶层,则将所述目标应用对应的窗口对应的桌面位置的数据发送到所述目标接收端,以使所述目标接收端对所述目标应用进行区域投屏。
36.第二方面,本技术实施例提供了一种投屏方法,应用于目标接收端,所述方法包括:
37.发布服务信息,所述服务信息包括所述目标接收端的地址;
38.接收发送端发送的目标应用的数据;所述目标应用的数据是所述发送端通过投屏软件打开目标应用,搜索接收端发布的服务信息,并在搜索到所述目标接收端发布的服务信息,对所述目标接收端发布的服务信息进行解析,得到所述目标接收端的地址后,根据所述目标接收端的地址发送的;其中,所述投屏软件在安装过程中已与所述目标应用进行关联,所述服务信息包括所述接收端的地址;
39.显示所述目标应用的数据。
40.可选的,所述服务信息还包括所述目标接收端的加密密码;
41.所述显示所述目标应用的数据,包括:
42.显示密码输入界面;
43.接收用户输入的加密密码;所述加密密码是所述发送端在搜索到目标接收端发布的服务信息,对所述目标接收端发布的服务信息进行解析得到的;
44.对所述加密密码进行验证,并在验证通过后显示所述目标应用的数据。
45.可选的,所述发布服务信息,包括:
46.基于多播域名系统协议和简单服务发现协议发布服务信息。
47.可选的,所述方法还包括:
48.显示pin码,所述pin码用于指示所述目标接收端的地址。
49.可选的,所述接收发送端发送的目标应用的数据,包括:
50.接收发送端发送的所述目标应用对应的窗口数据;
51.所述显示所述目标应用的数据,包括:
52.对所述目标应用进行窗体投屏。
53.可选的,所述接收发送端发送的目标应用的数据,包括:
54.接收发送端发送的所述目标应用对应的窗口对应的桌面位置的数据;
55.所述显示所述目标应用的数据,包括:
56.对所述目标应用进行区域投屏。
57.第三方面,本技术实施例提供了一种投屏装置,包括:
58.投屏应用开启模块,用于通过投屏软件打开目标应用,所述投屏软件在安装过程中已与所述目标应用进行关联;
59.服务信息搜索模块,用于搜索接收端发布的服务信息,所述服务信息包括所述接收端的地址;
60.服务信息解析模块,用于若搜索到目标接收端发布的服务信息,则对所述目标接收端发布的服务信息进行解析,得到所述目标接收端的地址;
61.数据发送模块,用于根据所述目标接收端的地址,将所述目标应用的数据发送到所述目标接收端,以使所述目标接收端对所述目标应用的数据进行显示。
62.可选的,所述接收端发布的服务信息还包括所述接收端的加密密码;
63.所述服务信息解析模块在对所述目标接收端发布的服务信息进行解析,得到所述目标接收端的地址时,具体用于:
64.对所述目标接收端发布的服务信息进行解析,得到所述目标接收端的地址和所述目标接收端的加密密码;
65.所述投屏装置还包括:
66.显示模块,用于显示所述目标接收端的加密密码,以使所述目标接收端对用户输入的所述发送端显示的加密密码进行验证,并在验证通过后对所述目标应用的数据进行显示。
67.可选的,所述投屏装置还包括:
68.软件安装模块,用于安装所述投屏软件;
69.应用关联模块,用于将所述投屏软件与指定应用进行关联,所述指定应用中包括所述目标应用。
70.可选的,所述应用关联模块在将所述投屏软件与指定应用进行关联时,具体用于:
71.调用regcreatekeyex函数和regsetvalueex函数,对所述投屏软件的注册表进行操作,以将所述投屏软件与指定应用的右键菜单进行关联;
72.所述投屏应用开启模块在通过投屏软件打开目标应用时,具体用于:
73.打开目标应用的右键菜单,基于所述投屏软件与所述右键菜单的关联关系,通过
所述投屏软件打开所述目标应用。
74.可选的,所述服务信息是所述接收端基于多播域名系统协议和简单服务发现协议发布的。
75.可选的,所述服务信息解析模块具体用于:
76.若搜索到多个接收端发布的服务信息,则显示所述多个接收端发布的服务信息;
77.接收用户输入的目标接收端选择指令,所述目标接收端选择指令对应所述多个接收端发布的服务信息中的一个;
78.根据所述目标接收端选择指令,确定目标接收端发布的服务信息;
79.对所述目标接收端发布的服务信息进行解析。
80.可选的,所述显示模块,还用于在未搜索到目标接收端发布的服务信息时,显示pin码输入界面;
81.所述装置还包括:
82.接收模块,用于接收用户输入的pin码,所述pin码用于指示所述目标接收端的地址;
83.pin码解析模块,用于对pin码进行解析,得到所述目标接收端的地址。
84.可选的,所述数据发送模块,具体用于:
85.将所述目标应用对应的窗口数据发送到所述目标接收端,以使所述目标接收端对所述目标应用进行窗体投屏;
86.和/或,
87.若所述目标应用对应的窗口在当前桌面的最顶层,则将所述目标应用对应的窗口对应的桌面位置的数据发送到所述目标接收端,以使所述目标接收端对所述目标应用进行区域投屏。
88.第四方面,本技术实施例提供了一种投屏装置,包括:
89.服务信息发布模块,用于发布服务信息,所述服务信息包括所述目标接收端的地址;
90.数据接收模块,用于接收发送端发送的目标应用的数据;所述目标应用的数据是所述发送端通过投屏软件打开目标应用,搜索接收端发布的服务信息,并在搜索到所述目标接收端发布的服务信息,对所述目标接收端发布的服务信息进行解析,得到所述目标接收端的地址后,根据所述目标接收端的地址发送的;其中,所述投屏软件在安装过程中已与所述目标应用进行关联,所述服务信息包括所述接收端的地址;
91.数据显示模块,用于显示所述目标应用的数据。
92.可选的,所述服务信息还包括所述目标接收端的加密密码;
93.所述数据显示模块,还用于显示密码输入界面;
94.所述数据接收模块,还用于接收用户输入的加密密码;所述加密密码是所述发送端在搜索到目标接收端发布的服务信息,对所述目标接收端发布的服务信息进行解析得到的;
95.所述装置还包括密码验证模块,用于对所述加密密码进行验证,并在验证通过后显示所述目标应用的数据。
96.可选的,所述服务信息发布模块,具体用于:
97.基于多播域名系统协议和简单服务发现协议发布服务信息。
98.可选的,所述数据显示模块,还用于:
99.显示pin码,所述pin码用于指示所述目标接收端的地址。
100.可选的,所述接收发送端发送的目标应用的数据,包括:
101.接收发送端发送的所述目标应用对应的窗口数据;
102.所述显示所述目标应用的数据,包括:
103.对所述目标应用进行窗体投屏。
104.可选的,所述数据接收模块,具体用于:
105.接收发送端发送的所述目标应用对应的窗口对应的桌面位置的数据;
106.所述数据显示模块,具体用于:
107.对所述目标应用进行区域投屏。
108.第五方面,本技术实施例提供一种计算机存储介质,所述计算机存储介质存储有多条指令,所述指令适于由处理器加载并执行如第一方面或第二方面任意一项的方法步骤。
109.第六方面,本技术实施例提供一种电子设备,包括:处理器和存储器;其中,所述存储器存储有计算机程序,所述计算机程序适于由所述处理器加载并执行如第一方面任意一项的方法步骤。
110.第七方面,本技术实施例提供一种电子设备,包括:处理器和存储器;其中,所述存储器存储有计算机程序,所述计算机程序适于由所述处理器加载并执行如第二方面任意一项的方法步骤。
111.第八方面,本技术实施例提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现第一方面或第二方面任意一项所述的方法步骤。
112.本技术实施例提供了一种投屏方法、装置、存储介质及电子设备。其中,投屏方法可应用于发送端,包括:通过投屏软件打开目标应用,所述投屏软件在安装过程中已与所述目标应用进行关联;搜索接收端发布的服务信息,所述服务信息包括所述接收端的地址;若搜索到目标接收端发布的服务信息,则对所述目标接收端发布的服务信息进行解析,得到所述目标接收端的地址;根据所述目标接收端的地址,将所述目标应用的数据发送到所述目标接收端,以使所述目标接收端对所述目标应用的数据进行显示。本技术的方案通过投屏软件开启目标应用,自动触发投屏过程,使发送端开始搜索接收端的服务信息,一旦搜索到目标接收端发布的服务信息即可与目标接收端进行连接,并发送需要投屏的目标应用的数据到目标接收端,开始投屏。整个过程中只需要用户输入选择需要进行投屏的目标应用即可,后续的连接和数据传输过程都是设备间自动进行的,无需像现有技术中由用户进行多次操作,极大简化操作流程,提高投屏效率。
附图说明
113.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
114.图1为本技术实施例提供的一种应用场景示意图;
115.图2为本技术实施例公开的一种投屏方法的流程图;
116.图3a为本技术实施例公开的一种基于窗口投屏的投屏界面示意图;
117.图3b为本技术实施例公开的另一种基于窗口投屏的投屏界面示意图;
118.图3c为本技术实施例公开的一种基于区域投屏的投屏界面示意图;
119.图3d为本技术实施例公开的另一种基于区域投屏的投屏界面示意图;
120.图4为本技术实施例公开的另一种投屏方法的流程图;
121.图5为本技术实施例公开的又一种投屏方法的流程图;
122.图6为本技术实施例公开的一种投屏装置的结构示意图;
123.图7为本技术实施例公开的另一种投屏装置的结构示意图;
124.图8为本技术实施例公开的一种电子设备的结构示意图。
具体实施方式
125.为使本技术的目的、技术方案和优点更加清楚,下面将结合附图对本技术实施例方式作进一步地详细描述。
126.应当明确,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本技术保护的范围。
127.下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是如所附权利要求书中所详述的、本技术的一些方面相一致的装置和方法的例子。
128.在本技术的描述中,需要理解的是,术语“第一”、“第二”、“第三”等仅用于区别类似的对象,而不必用于描述特定的顺序或先后次序,也不能理解为指示或暗示相对重要性。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本技术中的具体含义。此外,在本技术的描述中,除非另有说明,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
129.投屏,是指将一台设备的画面,声音等信息通过网络传输的方式传输到另一台设备上并实时显示出来的技术。目前最常见的无线投屏场景是将用户电脑或手机(本技术中称为发送端)的画面和/或声音传到交互平板(本技术中称为接收端)。发送端设备上一般会运行一个软件(本技术中称为投屏软件),用于捕获发送端的画面等信息并传输给接收端,接收端则会运行投屏接收端软件用于接收并显示这些信息。
130.在很多场景中,用户都可能会使用到投屏进行信息共享。基于上述的投屏的软硬件基础,在成功投屏(发送端传输数据到接收端)之前,用户需要执行繁琐的步骤开启投屏过程。首先,用户需要打开发送端的投屏软件;再打开需要进行投屏的目标应用;最后,需要输入投屏码才能与接收端的设备进行连接。当然,前两步的顺序也可以交换。总之,需要用户做多次点击、输入的操作,较为繁琐。
131.因此,本技术实施例欲提出一种投屏方法、装置、存储介质及电子设备,为用户提
供一种操作更为简便的投屏方法,可以减少开启投屏过程时用户的操作步骤,提高操作效率,以解决开始投屏前操作复杂的问题。
132.图1为本技术实施例提供的一种应用场景示意图。如图1所示的,发送端的设备为手机,接收端的设备为交互平板设备。基于本技术的方法,用户只需在手机上通过投屏软件开启目标应用,即可快速开启投屏过程。投屏过程开启后,手机与交互平板设备通信连接,通过投屏功能,手机中目标应用的界面会被传输并显示在交互平板设备上。
133.其中,交互平板的硬件部分由触控显示模组、智能处理系统(包括控制器)等部分所构成,由整体结构件结合到一起,同时也由专用的软件系统作为支撑,其中触控显示模组包括显示屏、触控组件和背光灯组件,背光灯组件用于为显示屏提供背光光源,显示屏一般采用液晶显示装置,用于进行画面展示,触控组件设置在显示屏上或者设置在显示屏前端,用于采集用户的触控操作数据,并将采集的触控操作数据发送到智能处理系统进行处理。
134.在实际使用中,交互平板的显示屏上显示画面数据,当用户通过手指或者触控笔等触控物体点击显示屏上显示的内容,例如点击显示屏上显示的图形按钮时,交互平板的触控组件将采集到触控数据,从而触控组件将该触控数据转换为触控点的坐标数据后发送到智能处理系统,或者发送到智能处理系统处由智能处理系统转换为触控点的坐标数据,智能处理系统获得触控点的坐标数据后,根据预先设定的程序实现相应的控制操作,驱动显示屏显示内容发生变化,实现多样化的显示、操作效果。
135.从技术原理来区别触摸组件,可以分为五个基本种类;矢量压力传感技术触摸组件、电阻技术触摸组件、电容技术触摸组件、电磁技术触摸屏、红外线技术触摸组件、表面声波技术触摸组件。按照触摸组件的工作原理和传输信息的介质,可以把触摸组件分为四个种类:电阻式、电容感应式、电磁感应式、红外线式以及表面声波式。
136.当用户用手指或笔触摸显示屏时,触摸组件可以采集触控点的数据并发送到智能处理系统,然后随着智能处理系统内置的软件来实现不同的功能应用,从而实现对智能处理系统的触控控制。
137.在本技术中所提到的“屏幕”、“大屏”均指交互平板的显示屏;交互平板显示某个界面是指交互平板的显示屏显示该界面。
138.以下将对本技术实施例的实现方式进行说明。需要注意的是,由于篇幅所限,本技术说明书没有穷举所有可选的实施方式,本领域技术人员在阅读本技术说明书后,应该能够想到,只要技术特征不互相矛盾,那么技术特征的任意组合均可以构成可选的实施方式。记载在不同实施例中的不互相矛盾的技术特征也可以任意组合,构成可选的实施方式。
139.本技术实施例公开了投屏方法,该方法应用于投屏的发送端。
140.请参见图2,为本技术实施例公开的一种投屏方法的流程图。该方法应用于发送端,该方法包括以下步骤:
141.s201,通过投屏软件打开目标应用,投屏软件在安装过程中已与目标应用进行关联。
142.用户通过对发送端的设备进行点击等操作,输入通过投屏软件打开目标应用的指令,发送端的设备检测到此指令后,即执行通过投屏软件打开目标应用的动作。通过投屏软件打开目标应用,即在投屏软件的框架内开启目标应用,通过这一个动作,就可以同时打开投屏软件和目标应用,减少了用户的操作步骤。
143.在一些实施例中,可以预先将投屏软件关联到目标应用。
144.具体的,该方法还可以包括:安装投屏软件;将投屏软件与指定应用进行关联,指定应用中包括目标应用。
145.在安装投屏软件时,将投屏软件与指定应用进行关联。其中,指定应用即为用户认为可能将会进行投屏的应用。在需要对目标应用进行投屏时,选择投屏软件作为目标应用的打开方式,即可实现通过投屏软件打开目标应用。
146.进一步的,将投屏软件与指定应用进行关联的方式可以包括:调用regcreatekeyex函数和regsetvalueex函数,对投屏软件的注册表进行操作,以将投屏软件与指定应用的右键菜单进行关联。相应的,上述的通过投屏软件打开目标应用,包括:打开目标应用的右键菜单,基于投屏软件与右键菜单的关联关系,通过投屏软件打开目标应用。
147.分别调用regcreatekeyex函数和regsetvalueex函数,在投屏软件的注册表中创建新的参数和设置相应的数值,以将投屏软件添加到指定应用的右键菜单中,具体的,可以添加到右键菜单中的打开方式中。
148.s202,搜索接收端发布的服务信息,服务信息包括接收端的地址。
149.接收端开启后即向外发布服务信息,服务信息中包括有接收端的地址。其中,接收端的地址可以包括接收端的ip地址和端口信息。
150.开启投屏软件和目标应用后,发送端自动开启s202的搜索。
151.s203,若搜索到目标接收端发布的服务信息,则对目标接收端发布的服务信息进行解析,得到目标接收端的地址。
152.发送端一旦搜索到目标接收端发布的服务信息,就自动对目标接收端发布的服务信息进行解析,得到目标接收端的地址。
153.其中,目标接收端指的是用于对当前开启的目标应用进行投屏的接收端。
154.一般,在投屏场景中,发送端与接收端处于同一空间内,并连接到同一网络。基于网络进行搜索,搜索到的接收端即为目标接收端。
155.s204,根据目标接收端的地址,将目标应用的数据发送到目标接收端,以使目标接收端对目标应用的数据进行显示。
156.根据解析得到的目标接收端的地址,发送端可以将目标应用的相关数据发送到目标接收端。
157.相对应的,目标接收端可以接收目标应用的相关数据,并进行显示。
158.本实施例提供的投屏方法应用于发送端,包括:通过投屏软件打开目标应用,投屏软件在安装过程中已与目标应用进行关联;搜索接收端发布的服务信息,服务信息包括接收端的地址;若搜索到目标接收端发布的服务信息,则对目标接收端发布的服务信息进行解析,得到目标接收端的地址;根据目标接收端的地址,将目标应用的数据发送到目标接收端,以使目标接收端对目标应用的数据进行显示。本技术的方案通过投屏软件开启目标应用,自动触发投屏过程,使发送端开始搜索接收端的服务信息,一旦搜索到目标接收端发布的服务信息即可与目标接收端进行连接,并发送需要投屏的目标应用的数据到目标接收端,开始投屏。整个过程中只需要用户输入选择需要进行投屏的目标应用即可,后续的连接和数据传输过程都是设备间自动进行的,无需像现有技术中由用户进行多次操作,极大简化操作流程,提高投屏效率。
159.共同接入同一网络的接收端可能有一个或多个,发送端搜索到的服务也可能有一个或多个。
160.在一些实施例中,当发送端搜索到一个服务时,则可以默认此服务为目标接收端发布的服务。但依然可能存在一些特殊情况,例如,目标接收端未成功接入网络,则发送端搜索到的唯一的服务也不是目标接收端发布的,若此时与搜索到的服务的接收端建立连接传输数据就会造成错误投屏。为了避免这种情况的发生,还可以加入对目标接收端的验证步骤。例如,通过为接收端设置加密密码,来对接收端进行验证。
161.具体的,上述的接收端发布的服务信息还包括接收端的加密密码。相应的,上述的对目标接收端发布的服务信息进行解析,得到目标接收端的地址,包括:对目标接收端发布的服务信息进行解析,得到目标接收端的地址和目标接收端的加密密码。相应的,上述的投屏方法还包括:显示目标接收端的加密密码,以使目标接收端对用户输入的发送端显示的加密密码进行验证,并在验证通过后对目标应用的数据进行显示。
162.在搜索到目标接收端后,为了验证目标接收端的正确性,还可以对目标接收端的加密密码进行验证。具体的,接收端在发布的服务信息中可以加入接收端自己的加密密码。发送端在解析过程中可以解析得到此加密密码,并可以在显示界面上进行显示。用户可以查看此加密密码,并将其输入到想要进行投屏的接收端,以验证发送端解析到的加密密码与用户想要进行投屏的接收端是否对应。如果验证通过,说明发送端当前搜索到的唯一的服务正是用户想用进行投屏的接收端(目标接收端)发布的,可以继续建立连接发送数据开始投屏。如果验证失败,说明发送端当前搜索到的唯一的服务不是用户想用进行投屏的接收端(目标接收端)发布的,此时需要停止后续步骤的执行,重新找到正确的目标接收端的地址进行连接和数据传输。
163.在另一些实施例中,当发送端搜索到多个服务时,上述的若搜索到目标接收端发布的服务信息,则对目标接收端发布的服务信息进行解析,包括:若搜索到多个接收端发布的服务信息,则显示多个接收端发布的服务信息;接收用户输入的目标接收端选择指令,目标接收端选择指令对应多个接收端发布的服务信息中的一个;根据目标接收端选择指令,确定目标接收端发布的服务信息;对目标接收端发布的服务信息进行解析。
164.为了区分各不同接收端的服务,可以在服务信息中添加设备信息或不同的名称加以区分。同时可以对多个服务信息进行显示,以供用户进行选择。显示的内容可以包括,服务信息中包含的设备信息或名称,和/或历史的连接信息(例如,上次连接时间,若从未连接过,时间可以显示为“无”)。用户根据显示的信息,选择目标接收端,并通过发送端输入目标接收端的选择指令(在实际过程中,可能为用户针对目标接收端的点击操作)。在接收到目标接收端选择指令后,即可从多个服务信息中确定目标接收端的服务信息,进而可以对该服务信息进行解析。当然,在另一些实现方式中,也可以先对多个服务信息进行解析后进行显示,待用户选定后,直接获取目标接收端的服务信息解析得到的接收端的地址。
165.在一些实施例中,上述的投屏方法还可以包括:若未搜索到目标接收端发布的服务信息,则显示pin码输入界面;接收用户输入的pin码,pin码用于指示目标接收端的地址;对pin码进行解析,得到目标接收端的地址。
166.对应于上述的这种未搜索到目标接收端的服务的情况,还可以采用另一种方式获取目标接收端的地址。这种情况的产生,多是由于目标接收端未正常连接到网络,此时,目
标接收端本身可以对自身的网络状态进行监控和反应。例如,目标接收端检测到未接入目标网络时,在显示界面显示pin码。发送端搜索目标接收端失败时(搜索到的接收端服务非目标接收端的服务或未搜索到接收端服务),可以在显示界面显示提醒消息及pin码输入界面,例如“搜索失败,请输入目标设备pin码”等,以提示用户。用户在确认搜索目标接收端失败后,可以将目标接收端显示界面显示的pin码输入发送端。发送端接收用户输入的pin码,并对其进行解析,得到目标接收端的地址。
167.在一些实施例中,服务信息是接收端基于多播域名系统协议和简单服务发现协议发布的。
168.多播域名系统协议(multicast dns,mdns)是一种零配置服务,可以将主机名解析为不包含本地名称服务器的小型网络中的ip地址。可以在没有传统dns服务器的情况下使局域网内的主机实现相互发现和通信。
169.简单服务发现协议(simple service discovery protocol,ssdp)是一种应用层协议,是构成通用即插即用(upnp)技术的核心协议之一。简单服务发现协议提供了在局部网络里面发现设备的机制,接受服务的设备可以通过使用简单服务发现协议,根据自己的需要查询在自己所在的局部网络里提供特定服务的设备。在本技术中,发送端通过ssdp发布服务,接收端则可以查询到发送端发布的服务。
170.基于两个协议,可以提高服务发布和服务搜索过程的稳定性和响应速度。
171.在一些实施例中,上述的将目标应用的数据发送到目标接收端,以使目标接收端对目标应用的数据进行显示,包括:将目标应用对应的窗口数据发送到目标接收端,以使目标接收端对目标应用进行窗体投屏;和/或,若目标应用对应的窗口在当前桌面的最顶层,则将目标应用对应的窗口对应的桌面位置的数据发送到目标接收端,以使目标接收端对目标应用进行区域投屏。
172.在实际场景中,在对某个目标应用进行投屏的过程中,用户还可能同时对发送端的设备进行其他的操作,也就是说可能同时开启多个窗口。在对目标应用的数据进行传输时,一般可选两种方式。一种是只针对目标应用的窗口数据进行投屏显示(窗体投屏),这样可能导致的问题是,在目标应用的窗口上弹出的上层窗口因为未被传输而无法同步显示。
173.参考图3a,在发送端的设备上,目标应用窗口被其它应用窗口遮挡,通过窗体投屏,目标应用窗口依然可以被完整地显示在接收端的设备上。
174.参考图3b,在发送端的设备上,目标应用窗口上层弹出的新窗口可以正常显示,但因为窗体投屏只传输目标应用窗口的数据,所以新窗口无法在接收端的设备上显示。
175.另一种是针对目标应用的窗口数据所对应的桌面位置的数据进行投屏显示,这样可以将对应桌面位置的全部数据同步显示在接收端(区域投屏),但也有一个问题是其它应用的窗口可能对目标数据的窗口造成遮挡。
176.参考图3c,在发送端的设备上,目标应用窗口上层弹出新窗口,通过区域投屏,目标应用窗口和新窗口都可以被完整地显示在接收端的设备上。
177.参考图3d,在发送端的设备上,目标应用窗口被其它应用窗口遮挡,但因为区域投屏可以传输目标应用窗口所对应的桌面位置的全部数据,所以在接收端的设备上显示的也是被遮挡的目标应用窗口。
178.因此,可以先识别目标应用窗口在桌面的位置。默认对目标应用进行窗体投屏,当
检测到目标应用对应的窗口在当前桌面的最顶层时,转为区域投屏。
179.在一些实施例中,在投屏过程中,还可以对正在投屏的目标应用进行标识。例如为目标应用的图标添加外边框,以区别于其它未投屏的应用;或者,为目标应用的窗口添加外边框,以区别于其它未投屏的应用的窗口。外边框的颜色可以为蓝色、绿色、红色等颜色,形状可以为圆角矩形等。在投屏中止时,可以取消外边框的显示。在目标应用的窗体大小发生变化时,外边框还可以跟随目标应用的窗体大小自适应变化大小。
180.另外,可以在发送端的显示界面显示工具栏,在工具栏中显示功能按键,例如暂停投屏、继续投屏、结束投屏等。工具栏的位置可以在显示界面的任何位置,例如显示界面上边缘、显示界面下边缘、显示界面左边缘、显示界面右边缘等。工具栏可以设置不同透明度和不同颜色。
181.其中,暂停投屏功能,可以中止目标应用的投屏过程,停止向接收端发送数据;继续投屏功能,则可以恢复投屏过程,继续向接收端发送数据;结束投屏功能,可以结束投屏过程,停止向接收端发送数据,并断开与接收端之间的连接。在一些实施例中,通过结束投屏功能结束投屏过程之后,目标应用可以暂不关闭。
182.在一些实施例中,用户也可以通过操作接收端的相关功能按键断开与发送端的连接关系,进而结束投屏过程。
183.请参见图4,为本技术实施例公开的另一种投屏方法的流程图。该方法应用于接收端,该方法包括以下步骤:
184.s401,发布服务信息,服务信息包括目标接收端的地址。
185.s402,接收发送端发送的目标应用的数据。
186.其中,目标应用的数据是发送端通过投屏软件打开目标应用,搜索接收端发布的服务信息,并在搜索到目标接收端发布的服务信息,对目标接收端发布的服务信息进行解析,得到目标接收端的地址后,根据目标接收端的地址发送的;其中,投屏软件在安装过程中已与目标应用进行关联,服务信息包括接收端的地址。
187.s403,显示目标应用的数据。
188.可选的,服务信息还包括目标接收端的加密密码;
189.显示目标应用的数据,包括:
190.显示密码输入界面;
191.接收用户输入的加密密码;加密密码是发送端在搜索到目标接收端发布的服务信息,对目标接收端发布的服务信息进行解析得到的;
192.对加密密码进行验证,并在验证通过后显示目标应用的数据。
193.可选的,发布服务信息,包括:
194.基于多播域名系统协议和简单服务发现协议发布服务信息。
195.可选的,上述方法还包括:
196.显示pin码,pin码用于指示目标接收端的地址。
197.可选的,接收发送端发送的目标应用的数据,包括:
198.接收发送端发送的目标应用对应的窗口数据;
199.显示目标应用的数据,包括:
200.对目标应用进行窗体投屏。
201.可选的,接收发送端发送的目标应用的数据,包括:
202.接收发送端发送的目标应用对应的窗口对应的桌面位置的数据;
203.显示目标应用的数据,包括:
204.对目标应用进行区域投屏。
205.本实施例的方案中的各步骤,在发送端执行的方法对应的实施例的描述中均有所体现,其具体实现方式和有益效果可以参考上述实施例,此处不再赘述。
206.请参见图5,为本技术实施例公开的一种投屏方法的流程图。该方法应用于发送端和接收端,该方法包括以下步骤:
207.s501、目标接收端发布服务信息。
208.其中,服务信息包括目标接收端的地址。
209.s502、发送端通过投屏软件打开目标应用。
210.其中,投屏软件在安装过程中已与目标应用进行关联。
211.s503、发送端搜索接收端发布的服务信息。
212.s504、若搜索到目标接收端发布的服务信息,则对目标接收端发布的服务信息进行解析,得到目标接收端的地址。
213.s505、根据目标接收端的地址,将目标应用的数据发送到目标接收端。
214.s506、目标接收端对接收到的目标应用的数据进行显示。
215.本实施例的方案中的各步骤,在发送端设备执行的方法对应的实施例的描述中均有所体现,其具体实现方式和有益效果可以参考上述实施例,此处不再赘述。
216.请参见图6,其示出了本技术一个示例性实施例提供的投屏装置的结构示意图。该投屏装置600为发送端对应的装置,包括:投屏应用开启模块601、服务信息搜索模块602、服务信息解析模块603、数据发送模块604。
217.投屏应用开启模块601,用于通过投屏软件打开目标应用,投屏软件在安装过程中已与目标应用进行关联。
218.服务信息搜索模块602,用于搜索接收端发布的服务信息,服务信息包括接收端的地址。
219.服务信息解析模块603,用于若搜索到目标接收端发布的服务信息,则对目标接收端发布的服务信息进行解析,得到目标接收端的地址。
220.数据发送模块604,用于根据目标接收端的地址,将目标应用的数据发送到目标接收端,以使目标接收端对目标应用的数据进行显示。
221.可选的,接收端发布的服务信息还包括接收端的加密密码;
222.服务信息解析模块603在对目标接收端发布的服务信息进行解析,得到目标接收端的地址时,具体用于:
223.对目标接收端发布的服务信息进行解析,得到目标接收端的地址和目标接收端的加密密码;
224.投屏装置600还包括:
225.显示模块605,用于显示目标接收端的加密密码,以使目标接收端对用户输入的发送端显示的加密密码进行验证,并在验证通过后对目标应用的数据进行显示。
226.可选的,投屏装置600还包括:
227.软件安装模块606,用于安装投屏软件;
228.应用关联模块607,用于将投屏软件与指定应用进行关联,指定应用中包括目标应用。
229.可选的,应用关联模块607在将投屏软件与指定应用进行关联时,具体用于:
230.调用regcreatekeyex函数和regsetvalueex函数,对投屏软件的注册表进行操作,以将投屏软件与指定应用的右键菜单进行关联;
231.投屏应用开启模块601在通过投屏软件打开目标应用时,具体用于:
232.打开目标应用的右键菜单,基于投屏软件与右键菜单的关联关系,通过投屏软件打开目标应用。
233.可选的,服务信息是接收端基于多播域名系统协议和简单服务发现协议发布的。
234.可选的,服务信息解析模块603具体用于:
235.若搜索到多个接收端发布的服务信息,则显示多个接收端发布的服务信息;
236.接收用户输入的目标接收端选择指令,目标接收端选择指令对应多个接收端发布的服务信息中的一个;
237.根据目标接收端选择指令,确定目标接收端发布的服务信息;
238.对目标接收端发布的服务信息进行解析。
239.可选的,显示模块605,还用于在未搜索到目标接收端发布的服务信息时,显示pin码输入界面;
240.投屏装置600还包括:
241.接收模块608,用于接收用户输入的pin码,pin码用于指示目标接收端的地址;
242.pin码解析模块609,用于对pin码进行解析,得到目标接收端的地址。
243.可选的,数据发送模块604,具体用于:
244.将目标应用对应的窗口数据发送到目标接收端,以使目标接收端对目标应用进行窗体投屏;
245.和/或,
246.若目标应用对应的窗口在当前桌面的最顶层,则将目标应用对应的窗口对应的桌面位置的数据发送到目标接收端,以使目标接收端对目标应用进行区域投屏。
247.本实施例的方案中的各模块所实现的方法,在发送端设备执行的方法对应的实施例的描述中均有所体现,其具体实现方式和有益效果可以参考上述实施例,此处不再赘述。
248.请参见图7,其示出了本技术一个示例性实施例提供的投屏装置的结构示意图。该投屏装置700为目标接收端设备对应的装置,包括:服务信息发布模块701、数据接收模块702、数据显示模块703。
249.服务信息发布模块701,用于发布服务信息,服务信息包括目标接收端的地址。
250.数据接收模块702,用于接收发送端发送的目标应用的数据;目标应用的数据是发送端通过投屏软件打开目标应用,搜索接收端发布的服务信息,并在搜索到目标接收端发布的服务信息,对目标接收端发布的服务信息进行解析,得到目标接收端的地址后,根据目标接收端的地址发送的;其中,投屏软件在安装过程中已与目标应用进行关联,服务信息包括接收端的地址。
251.数据显示模块703,用于显示目标应用的数据。
252.可选的,服务信息还包括目标接收端的加密密码;
253.数据显示模块703,还用于显示密码输入界面;
254.数据接收模块702,还用于接收用户输入的加密密码;加密密码是发送端在搜索到目标接收端发布的服务信息,对目标接收端发布的服务信息进行解析得到的;
255.投屏装置700还包括密码验证模块704,用于对加密密码进行验证,并在验证通过后显示目标应用的数据。
256.可选的,服务信息发布模块701,具体用于:
257.基于多播域名系统协议和简单服务发现协议发布服务信息。
258.可选的,数据显示模块703,还用于:
259.显示pin码,pin码用于指示目标接收端的地址。
260.可选的,接收发送端发送的目标应用的数据,包括:
261.接收发送端发送的目标应用对应的窗口数据;
262.显示目标应用的数据,包括:
263.对目标应用进行窗体投屏。
264.可选的,数据接收模块702,具体用于:
265.接收发送端发送的目标应用对应的窗口对应的桌面位置的数据;
266.数据显示模块703,具体用于:
267.对目标应用进行区域投屏。
268.本实施例的方案中的各模块所实现的方法,在接收端设备执行的方法对应的实施例的描述中均有所体现,其具体实现方式和有益效果可以参考上述实施例,此处不再赘述。
269.在另一些实施例中,一些电子设备可能在一些场景中作为发送端设备,在另一些中作为接收端设备。这些电子设备可以同时具有装置600和装置700对应的模块,以实现对应的方法。
270.需要说明的是,上述实施例提供的投屏装置在执行投屏方法时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的投屏装置与投屏方法实施例属于同一构思,其体现实现过程详见方法实施例,这里不再赘述。
271.本技术实施例还提供了一种计算机存储介质,计算机存储介质可以存储有多条指令,指令适于由处理器加载并执行如上述实施例的方法步骤,具体执行过程可以参见上述实施例的具体说明,在此不进行赘述。
272.存储介质所在设备可以是电子设备。
273.请参见图8,为本技术实施例提供了一种电子设备的结构示意图。图8的电子设备可以为发送端设备或接收端设备。如图8所示,电子设备800可以包括:至少一个处理器801,至少一个网络接口804,用户接口803,存储器805,至少一个通信总线802。
274.其中,通信总线802用于实现这些组件之间的连接通信。
275.其中,用户接口803可以包括显示屏(display)、摄像头(camera),可选用户接口803还可以包括标准的有线接口、无线接口。
276.其中,网络接口804可选的可以包括标准的有线接口、无线接口(如wi-fi接口)。
277.其中,处理器801可以包括一个或者多个处理核心。处理器801利用各种接口和线路连接整个电子设备800内的各个部分,通过运行或执行存储在存储器805内的指令、程序、代码集或指令集,以及调用存储在存储器805内的数据,执行电子设备800的各种功能和处理数据。可选的,处理器801可以采用数字信号处理(digital signal processing,dsp)、现场可编程门阵列(field-programmable gate array,fpga)、可编程逻辑阵列(programmable logic array,pla)中的至少一种硬件形式来实现。处理器801可集成中央处理器(central processing unit,cpu)、图像处理器(graphics processing unit,gpu)和调制解调器等中的一种或几种的组合。其中,cpu主要处理操作系统、用户界面和应用程序等;gpu用于负责显示屏所需要显示的内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器801中,单独通过一块芯片进行实现。
278.其中,存储器805可以包括随机存储器(random access memory,ram),也可以包括只读存储器(read-only memory)。可选的,该存储器805包括非瞬时性计算机可读介质(non-transitory computer-readable storage medium)。存储器805可用于存储指令、程序、代码、代码集或指令集。存储器805可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现上述各个方法实施例的指令等;存储数据区可存储上面各个方法实施例中涉及到的数据等。存储器805可选的还可以是至少一个位于远离前述处理器801的存储装置。如图8所示,作为一种计算机存储介质的存储器805中可以包括操作系统、网络通信模块、用户接口模块以及电子设备的操作应用程序。
279.在图8所示的电子设备800中,用户接口803主要用于为用户提供输入的接口,获取用户输入的数据;而处理器801可以用于调用存储器805中存储的电子设备的操作应用程序,并具体执行上述方法的操作。
280.在一个实施例中,上述电子设备的操作系统为安卓系统。
281.本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
282.本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
283.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
284.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
285.在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。
286.存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。存储器是计算机可读介质的示例。
287.计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
288.还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
289.以上仅为本技术的实施例而已,并不用于限制本技术。对于本领域技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本技术的权利要求范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1