一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种拼接显示的方法、电子设备和系统与流程

2022-08-31 17:45:21 来源:中国专利 TAG:


1.本技术涉及终端领域,并且更具体地,涉及一种拼接显示的方法、电子设备和系统。


背景技术:

2.当前用户拥有的电子设备的数量越来越多,有调查显示1个用户平均拥有7个电子设备。用户使用单一电子设备(例如,手机)玩游戏或者看视频时,如果有打开其他应用程序的需求,则需要用户先退出游戏应用或者视频应用,才能打开其他应用程序。这样会影响用户在之前打开的应用的体验,并且在应用之间的来回切换会导致用户的体验不好。


技术实现要素:

3.本技术提供一种拼接显示的方法、电子设备和系统,无需用户在应用之间来回切换,就可以在多设备上实现多个应用程序的显示,有助于提升用户的体验。
4.第一方面,提供了一种系统,该系统包括第一电子设备和第二电子设备,该第一电子设备包括第一应用程序和第二应用程序,该第一电子设备通过近距离无线连接与该第二电子设备通信,该第一电子设备,用于显示第一界面,该第一界面为该第一应用程序的显示界面;该第一电子设备,还用于在显示该第一界面的同时检测到用户的第一输入,该第一输入为启动该第二应用程序的操作;该第一电子设备,还用于响应于该第一输入,向该第二电子设备发送该第二应用程序的显示界面对应的图像信息;该第二电子设备,还用于响应于接收到该第二应用程序的显示界面对应的图像信息,显示该第二应用程序的显示界面。
5.本技术实施例中,当第一电子设备在显示第一应用程序的显示界面的同时检测到用户打开第二应用程序的操作,那么第一电子设备可以将第二应用程序的显示界面发送给第二电子设备显示,从而实现了在多设备上显示某个设备的多个应用程序,无需用户在单个设备上进行应用程序的切换,有助于提升用户的体验。
6.在一些可能的实现方式中,本技术还提供了一种系统,该系统包括第一电子设备和第二电子设备,该第一电子设备包括第一应用程序和第二应用程序,该第一电子设备通过近距离无线连接与该第二电子设备通信,该第一电子设备,用于显示第一界面,该第一界面为该第一应用程序的显示界面;该第一电子设备,还用于在显示该第一界面的同时获取到第二应用程序的消息,该第一输入为启动该第二应用程序的操作;该第一电子设备,还用于接收第二电子设备发送的指示信息,该指示信息用于指示第一电子设备和第二电子设备进行拼接显示;该第一电子设备,还用于响应于接收到该指示信息,显示该第一界面且向该第二电子设备发送该第二应用程序的显示界面对应的图像信息;该第二电子设备,还用于响应于接收到该第二应用程序的显示界面对应的图像信息,显示该第二应用程序的显示界面;或者,该第一电子设备,还用于响应于接收到该指示信息,显示该第二应用程序的显示界面且向该第二电子设备发送该第一界面对应的图像信息;该第二电子设备,还用于响应于接收到该第一界面对应的图像信息,显示该第一界面。
7.在一些可能的实现方式中,该第二应用程序的消息可以是来自于第二应用程序的服务器的消息,或者,该第二应用程序的消息也可以是第二应用程序内的弹窗消息。
8.在一些可能的实现方式中,该第一电子设备获取到第二应用程序的消息和第一电子设备接收到该指示信息之间的时长小于或者等于预设时长。
9.结合第一方面,在第一方面的某些实现方式中,该第一电子设备具体用于:在显示该第一界面的同时接收到该第二应用程序对应的服务器发送的通知消息;响应于接收到该通知消息,显示消息提示框,该消息提示框用于提示用户接收到该通知消息;其中,该第一输入为用户针对该消息提示框的输入。
10.本技术实施例中,第一电子设备可以是在接收到服务器发送的通知消息后显示消息提示框,当第一电子设备检测到用户对消息提示框的输入时,和第二电子设备通过双应用模式进行显示。
11.结合第一方面,在第一方面的某些实现方式中,该第一输入为用户点击该消息提示框的操作;或者,该第一输入为按照第一方向拖动该消息提示框的操作。
12.在一些可能的实现方式中,该第一电子设备位于第一方位,该第二电子设备位于第二方位。当第一输入为向第二方位拖动的操作时,第一电子设备可以向第二电子设备发送该第二应用程序的显示界面对应的图像信息。
13.结合第一方面,在第一方面的某些实现方式中,该第一界面包括第一界面元素,该第一界面元素关联一个弹窗,该弹窗用于提示用户打开该第二应用程序,该第一电子设备还用于:在该第一界面上检测到用户对该第一界面元素的第二输入;响应于该第二输入,显示该弹窗;其中,该第一输入为针对该弹窗的输入。
14.本技术实施例中,第一电子设备可以是在检测到用户对第一应用程序中的弹窗的输入时,和第二电子设备通过双应用模式进行显示。
15.结合第一方面,在第一方面的某些实现方式中,该第一电子设备,还用于在检测到该第一输入之前,接收该第二电子设备发送的第一指示信息,该第一指示信息用于指示该第一电子设备和该第二电子设备进行拼接显示;该第一电子设备,还用于响应于接收到该第一指示信息,向该第二电子设备发送该第一电子设备的桌面对应的图像信息;该第二电子设备,还用于响应于接收到该第一电子设备的桌面对应的图像信息,显示该第一电子设备的桌面。
16.结合第一方面,在第一方面的某些实现方式中,该第一电子设备还包括第三应用程序,该第二电子设备,还用于响应于检测到用户的第三输入,向该第一电子设备发送第二指示信息,该第二指示信息用于指示该第二电子设备检测到该第三输入,该第三输入为针对该第三应用程序的输入;该第一电子设备,还用于响应于接收到该第二指示信息,向该第二电子设备发送该第三应用程序的显示界面对应的图像信息;该第二电子设备,还用于响应于接收到该第三应用程序的显示界面对应的图像信息,显示该第三应用程序的显示界面;该第一电子设备,还用于响应于用户打开该第一应用程序的操作,显示该第一界面。
17.本技术实施例中,如果第一电子设备和第二电子设备通过双应用模式显示的情况下检测到用户的第一输入,此时第一电子设备可以通过通过第一应用程序和第三应用程序的启动时间顺序来确定替换哪一个应用程序。例如,当第一应用程序较早启动时,第一电子设备可以显示该第二应用程序的显示界面且向第二电子设备发送第三应用程序的显示界
面对应的图像信息;又例如,当第三应用程序较早启动时,第一电子设备可以显示该第一应用程序的显示界面且向第二电子设备发送第二应用程序的显示界面对应的图像信息。
18.结合第一方面,在第一方面的某些实现方式中,该第一电子设备还包括第三应用程序,该第二电子设备,还用于响应于检测到用户的第三输入,向该第一电子设备发送第二指示信息,该第二指示信息用于指示该第二电子设备检测到该第三输入,该第三输入为针对该第三应用程序的输入;该第一电子设备,还用于响应于接收到该第二指示信息,向该第二电子设备发送该第三应用程序的显示界面对应的图像信息;该第二电子设备,还用于响应于接收到该第三应用程序的显示界面对应的图像信息,显示该第三应用程序的显示界面;该第一电子设备,还用于在向该第二电子设备发送该第二应用程序的显示界面对应的图像信息之前,确定预设时长内检测到用户在该第一界面上的输入且未接收到该第二电子设备发送的第三指示信息,该第三指示信息用于指示该第二电子设备在该第三应用程序的显示界面上检测到用户的输入。
19.本技术实施例中,如果第一电子设备和第二电子设备通过双应用模式显示的情况下检测到用户的第一输入,此时第一电子设备可以通过用户在第一应用程序的显示界面上的操作以及在第三应用程序的显示界面上的操作来判断用户聚焦的应用程序。若第一电子设备确定用户聚焦的应用程序为第一应用程序,那么第一电子设备可以向第二电子设备发送第二应用程序的显示界面对应的图像信息,从而使得第二电子设备使用第二应用程序的显示界面替换第三应用程序的显示界面,这样避免了用户正在聚焦的应用程序被替换掉,有助于提升用户的体验。
20.在一些可能的实现方式中,该第一电子设备还可以通过开启摄像头的方式采集用户的虹膜信息,从而判断用户聚焦的电子设备为哪一个电子设备。例如,若第一电子设备确定用户聚焦的电子设备为第二电子设备时,第一电子设备可以显示该第二应用程序的显示界面且向第二电子设备发送第三应用程序的显示界面对应的图像信息;又例如,若第一电子设备确定用户聚焦的电子设备为第一电子设备时,第一电子设备可以显示该第一应用程序的显示界面且向第二电子设备发送第二应用程序的显示界面对应的图像信息。
21.结合第一方面,在第一方面的某些实现方式中,该第一电子设备,还用于在显示该第一界面之前,显示第二界面;该第二电子设备,还用于响应于用户的第四输入,向该第一电子设备发送第四指示信息该第四指示信息用于指示该第一电子设备和该第二电子设备进行拼接显示;该第一电子设备,还用于响应于接收到该第四指示信息,将该第二界面对应的图像信息进行扩大;将扩大后的该图像信息进行分割,得到该第一部分图像信息以及该第二部分图像信息,其中该第一部分图像信息为该第一界面显示的图像信息;该第一电子设备,还用于显示该第一界面且向该第二电子设备发送该第二部分图像信息;该第二电子设备,还用于响应于接收到该第二部分图像信息,显示该第二部分图像信息。
22.本技术实施例中,如果第一电子设备和第二电子设备通过全屏模式显示的情况下检测到用户的第一输入,那么第一电子设备和第二电子设备切换至双应用模式,这样无需用户在应用之间来回切换,通过第一电子设备和第二电子设备可以分别查看第一应用程序和第二应用程序,有助于提升用户的体验。
23.结合第一方面,在第一方面的某些实现方式中,该第一电子设备具体用于:响应于该第一输入,显示该第二界面且向该第二电子设备发送该第二应用程序的显示界面对应的
图像信息。
24.在一些可能的实现方式中,该第一电子设备还可以响应于该第一输入,显示该第二应用程序的显示界面且向第二电子设备发送第一界面对应的图像信息;该第二电子设备,还用于响应于接收到该第一界面对应的图像信息,显示该第一界面。
25.第二方面,提供了一种拼接显示的方法,该方法应用于第一电子设备中,该第一电子设备包括第一应用程序和第二应用程序,该第一电子设备通过近距离无线连接与该第二电子设备通信,该方法包括:该第一电子设备显示第一界面,该第一界面为该第一应用程序的显示界面;该第一电子设备在显示该第一界面的同时检测到用户的第一输入,该第一输入为启动该第二应用程序的操作;该第一电子设备响应于该第一输入,向该第二电子设备发送该第二应用程序的显示界面对应的图像信息,以使得该第二电子设备显示该第二应用程序的显示界面。
26.结合第二方面,在第二方面的某些实现方式中,该第一电子设备检测到用户的第一输入之前,该方法还包括:在显示该第一界面的同时接收到该第二应用程序对应的服务器发送的通知消息;响应于接收到该通知消息,显示消息提示框,该消息提示框用于提示用户接收到该通知消息;其中,该第一输入为用户针对该消息提示框的输入。
27.结合第二方面,在第二方面的某些实现方式中,该第一输入为用户点击该消息提示框的操作;或者,该第一输入为按照第一方向拖动该消息提示框的操作。
28.结合第二方面,在第二方面的某些实现方式中,该第一界面包括第一界面元素,该第一界面元素关联一个弹窗,该弹窗用于提示用户打开该第二应用程序,该第一电子设备检测到用户的第一输入之前,该方法还包括:在该第一界面上检测到用户对该第一界面元素的第二输入;响应于该第二输入,显示该弹窗;其中,该第一输入为针对该弹窗的输入。
29.结合第二方面,在第二方面的某些实现方式中,该第一电子设备检测到用户的第一输入之前,该方法还包括:该第一电子设备接收该第二电子设备发送的第一指示信息,该第一指示信息用于指示该第一电子设备和该第二电子设备进行拼接显示;响应于接收到该第一指示信息,该第一电子设备向该第二电子设备发送该第一电子设备的桌面对应的图像信息,以使得该第二电子设备显示该第一电子设备的桌面。
30.结合第二方面,在第二方面的某些实现方式中,该第一电子设备还包括第三应用程序,该方法还包括:该第一电子设备接收该第二电子设备发送的第二指示信息,该第二指示信息用于指示该第二电子设备检测到该第三输入,该第三输入为针对该第三应用程序的输入;该第一电子设备响应于接收到该第二指示信息,向该第二电子设备发送该第三应用程序的显示界面对应的图像信息,以使得该第二电子设备显示该第三应用程序的显示界面;该第一电子设备响应于用户打开该第一应用程序的操作,显示该第一界面。
31.结合第二方面,在第二方面的某些实现方式中,该第一电子设备还包括第三应用程序,该方法还包括:该第一电子设备接收该第二电子设备发送的第二指示信息,该第二指示信息用于指示该第二电子设备检测到该第三输入,该第三输入为针对该第三应用程序的输入;该第一电子设备响应于接收到该第二指示信息,向该第二电子设备发送该第三应用程序的显示界面对应的图像信息,以使得该第二电子设备显示该第三应用程序的显示界面;该第一电子设备在向该第二电子设备发送该第二应用程序的显示界面对应的图像信息之前,确定预设时长内检测到用户在该第一界面上的输入且未接收到该第二电子设备发送
的第三指示信息,该第三指示信息用于指示该第二电子设备在该第三应用程序的显示界面上检测到用户的输入。
32.结合第二方面,在第二方面的某些实现方式中,该第一电子设备显示该第一界面之前,该方法还包括:该第一电子设备显示第二界面;该第一电子设备接收该第一电子设备发送的第四指示信息,该第四指示信息用于指示该第一电子设备和该第二电子设备进行拼接显示;该第一电子设备,还用于响应于接收到该第四指示信息,将该第二界面对应的图像信息进行扩大;将扩大后的该图像信息进行分割,得到该第一部分图像信息以及该第二部分图像信息,其中该第一部分图像信息为该第一界面显示的图像信息;该第一电子设备,还用于显示该第一界面且向该第二电子设备发送该第二部分图像信息,以使得该第二电子设备显示该第二部分图像信息。
33.结合第二方面,在第二方面的某些实现方式中,该方法还包括:响应于该第一输入,该第一电子设备显示该第二界面且向该第二电子设备发送该第二应用程序的显示界面对应的图像信息。
34.第三方面,提供了一种装置,该装置包括:显示单元,用于显示第一界面,该第一界面为该第一应用程序的显示界面;检测单元,用于在显示单元显示该第一界面的同时检测到用户的第一输入,该第一输入为启动该第二应用程序的操作;发送单元,用于响应于该第一输入,向该第二电子设备发送该第二应用程序的显示界面对应的图像信息,以使得该第二电子设备显示该第二应用程序的显示界面。
35.第四方面,提供了一种电子设备,包括:一个或多个处理器;存储器;以及一个或多个计算机程序。其中,一个或多个计算机程序被存储在存储器中,一个或多个计算机程序包括指令。当指令被电子设备执行时,使得电子设备执行上述第二方面中任一项可能的实现中的方法。
36.第五方面,提供了一种包含指令的计算机程序产品,当所述计算机程序产品在第一电子设备上运行时,使得所述电子设备执行上述第二方面所述的方法。
37.第六方面,提供了一种计算机可读存储介质,包括指令,当所述指令在第一电子设备上运行时,使得所述电子设备执行上述第二方面所述的方法。
38.第七方面,提供了一种芯片用于执行指令,当所述芯片运行时,所述芯片执行上述第二方面所述的方法。
附图说明
39.图1是本技术实施例提供的一种电子设备的硬件结构示意图。
40.图2是本技术实施例提供的软件结构框图。
41.图3是本技术实施例提供的一组图形用户界面。
42.图4是本技术实施例提供的另一组图形用户界面。
43.图5是本技术实施例提供的另一组图形用户界面。
44.图6是本技术实施例提供的另一组图形用户界面。
45.图7是本技术实施例提供的另一组图形用户界面。
46.图8是本技术实施例提供的另一组图形用户界面。
47.图9是本技术实施例提供的另一组图形用户界面。
48.图10是本技术实施例提供的另一组图形用户界面。
49.图11是本技术实施例提供的另一组图形用户界面。
50.图12是本技术实施例提供的另一组图形用户界面。
51.图13是本技术实施例提供的另一组图形用户界面。
52.图14是本技术实施例提供的另一组图形用户界面。
53.图15是本技术实施例提供的另一组图形用户界面。
54.图16是本技术实施例提供的另一组图形用户界面。
55.图17是本技术实施例提供的另一组图形用户界面。
56.图18是本技术实施例提供的另一组图形用户界面。
57.图19是本技术实施例提供的另一组图形用户界面。
58.图20是本技术实施例提供的另一组图形用户界面。
59.图21是本技术实施例提供的另一组图形用户界面。
60.图22是本技术实施例提供的另一组图形用户界面。
61.图23是本技术实施例提供的source端设备和sink端设备的示意性结构图。
62.图24是本技术实施例提供的source端设备和sink端设备通过全屏模式显示的方法的示意性流程图。
63.图25是本技术实施例提供的source端设备通过分割方式进行裁剪并将裁剪后的画布显示在虚拟屏上的过程。
64.图26是本技术实施例提供的source端设备通过遮罩方式进行裁剪并将裁剪后的画布显示在虚拟屏上的过程。
65.图27是本技术实施例提供的source端设备通过分割方式进行裁剪并将裁剪后的画布显示在虚拟屏上的另一过程。
66.图28是本技术实施例提供的source端设备通过遮罩方式进行裁剪并将裁剪后的画布显示在虚拟屏上的另一过程。
67.图29是本技术实施例提供的source端设备和sink端设备通过分页模式显示的方法的示意性流程图。
68.图30是本技术实施例提供的source端的桌面通过分页模式显示的示意图。
69.图31是本技术实施例提供的source端设备和sink端设备通过平行模式显示的方法的示意性流程图。
70.图32是本技术实施例提供的平行模式下在应用层序中打开某个活动页面的过程。
71.图33是本技术实施例提供的source端设备和sink端设备通过双应用模式显示的方法的示意性流程图。
72.图34是本技术实施例提供的多模式下切换显示的方法的示意性流程图。
73.图35是本技术实施例提供的多模式下切换显示的方法的另一示意性流程图。
74.图36是本技术实施例提供的多模式下切换显示的方法的另一示意性流程图。
75.图37是本技术实施例提供的拼接显示的方法的示意性流程图。
76.图38是本技术实施例提供的装置的示意性结构图。
77.图39是本技术实施例提供的电子设备的另一结构示意图。
具体实施方式
78.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行描述。其中,在本技术实施例的描述中,除非另有说明,“/”表示或的意思,例如,a/b可以表示a或b;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,在本技术实施例的描述中,“复数个”或者“多个”是指两个或多于两个。
79.以下,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。
80.本技术实施例提供的方法可以应用于手机、平板电脑、可穿戴设备、车载设备、增强现实(augmented reality,ar)/虚拟现实(virtual reality,vr)设备、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,umpc)、上网本、个人数字助理(personal digital assistant,pda)等电子设备上,本技术实施例对电子设备的具体类型不作任何限制。
81.示例性的,图1示出了电子设备100的结构示意图。电子设备100可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,usb)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170a,受话器170b,麦克风170c,耳机接口170d,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户身份识别(subscriber identification module,sim)卡接口195等。其中传感器模块180可以包括压力传感器180a,陀螺仪传感器180b,气压传感器180c,磁传感器180d,加速度传感器180e,距离传感器180f,接近光传感器180g,指纹传感器180h,温度传感器180j,触摸传感器180k,环境光传感器180l,骨传导传感器180m等。
82.可以理解的是,本技术实施例示意的结构并不构成对电子设备100的具体限定。在本技术另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
83.处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,ap),调制解调处理器,图形处理器(graphics processing unit,gpu),图像信号处理器(image signal processor,isp),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,dsp),基带处理器,和/或神经网络处理器(neural-network processing unit,npu)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
84.其中,控制器可以是电子设备100的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
85.处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了
重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
86.在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,i2c)接口,集成电路内置音频(inter-integrated circuit sound,i2s)接口,脉冲编码调制(pulse code modulation,pcm)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,uart)接口,移动产业处理器接口(mobile industry processor interface,mipi),通用输入输出(general-purpose input/output,gpio)接口,用户身份识别(subscriber identity module,sim)接口,和/或通用串行总线(universal serial bus,usb)接口等。
87.i2c接口是一种双向同步串行总线,包括一根串行数据线(serial data line,sda)和一根串行时钟线(derail clock line,scl)。在一些实施例中,处理器110可以包含多组i2c总线。处理器110可以通过不同的i2c总线接口分别耦合触摸传感器180k,充电器,闪光灯,摄像头193等。例如:处理器110可以通过i2c接口耦合触摸传感器180k,使处理器110与触摸传感器180k通过i2c总线接口通信,实现电子设备100的触摸功能。
88.i2s接口可以用于音频通信。在一些实施例中,处理器110可以包含多组i2s总线。处理器110可以通过i2s总线与音频模块170耦合,实现处理器110与音频模块170之间的通信。在一些实施例中,音频模块170可以通过i2s接口向无线通信模块160传递音频信号,实现通过蓝牙耳机接听电话的功能。
89.pcm接口也可以用于音频通信,将模拟信号抽样,量化和编码。在一些实施例中,音频模块170与无线通信模块160可以通过pcm总线接口耦合。在一些实施例中,音频模块170也可以通过pcm接口向无线通信模块160传递音频信号,实现通过蓝牙耳机接听电话的功能。所述i2s接口和所述pcm接口都可以用于音频通信。
90.uart接口是一种通用串行数据总线,用于异步通信。该总线可以为双向通信总线。它将要传输的数据在串行通信与并行通信之间转换。在一些实施例中,uart接口通常被用于连接处理器110与无线通信模块160。例如:处理器110通过uart接口与无线通信模块160中的蓝牙模块通信,实现蓝牙功能。在一些实施例中,音频模块170可以通过uart接口向无线通信模块160传递音频信号,实现通过蓝牙耳机播放音乐的功能。
91.mipi接口可以被用于连接处理器110与显示屏194,摄像头193等外围器件。mipi接口包括摄像头串行接口(camera serial interface,csi),显示屏串行接口(display serial interface,dsi)等。在一些实施例中,处理器110和摄像头193通过csi接口通信,实现电子设备100的拍摄功能。处理器110和显示屏194通过dsi接口通信,实现电子设备100的显示功能。
92.gpio接口可以通过软件配置。gpio接口可以被配置为控制信号,也可被配置为数据信号。在一些实施例中,gpio接口可以用于连接处理器110与摄像头193,显示屏194,无线通信模块160,音频模块170,传感器模块180等。gpio接口还可以被配置为i2c接口,i2s接口,uart接口,mipi接口等。
93.usb接口130是符合usb标准规范的接口,具体可以是mini usb接口,micro usb接口,usb type c接口等。usb接口130可以用于连接充电器为电子设备100充电,也可以用于电子设备100与外围设备之间传输数据。也可以用于连接耳机,通过耳机播放音频。该接口还可以用于连接其他电子设备,例如ar设备等。
94.可以理解的是,本技术实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备100的结构限定。在本技术另一些实施例中,电子设备100也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
95.充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块140可以通过usb接口130接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块140可以通过电子设备100的无线充电线圈接收无线充电输入。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为电子设备供电。
96.电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,外部存储器,显示屏194,摄像头193,和无线通信模块160等供电。电源管理模块141还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理模块141也可以设置于处理器110中。在另一些实施例中,电源管理模块141和充电管理模块140也可以设置于同一个器件中。
97.电子设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
98.天线1和天线2用于发射和接收电磁波信号。电子设备100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
99.移动通信模块150可以提供应用在电子设备100上的包括2g/3g/4g/5g等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,lna)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
100.调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备(不限于扬声器170a,受话器170b等)输出声音信号,或通过显示屏194显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器110,与移动通信模块150或其他功能模块设置在同一个器件中。
101.无线通信模块160可以提供应用在电子设备100上的包括无线局域网(wireless local area networks,wlan)(如无线保真(wireless fidelity,wi-fi)网络),蓝牙(bluetooth,bt),全球导航卫星系统(global navigation satellite system,gnss),调频(frequency modulation,fm),近距离无线通信技术(near field communication,nfc),红外技术(infrared,ir)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频
以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
102.在一些实施例中,电子设备100的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得电子设备100可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯系统(global system for mobile communications,gsm),通用分组无线服务(general packet radio service,gprs),码分多址接入(code division multiple access,cdma),宽带码分多址(wideband code division multiple access,wcdma),时分码分多址(time-division code division multiple access,td-scdma),长期演进(long term evolution,lte),bt,gnss,wlan,nfc,fm,和/或ir技术等。所述gnss可以包括全球卫星定位系统(global positioning system,gps),全球导航卫星系统(global navigation satellite system,glonass),北斗卫星导航系统(beidou navigation satellite system,bds),准天顶卫星系统(quasi-zenith satellite system,qzss)和/或星基增强系统(satellite based augmentation systems,sbas)。
103.电子设备100通过gpu,显示屏194,以及应用处理器等实现显示功能。gpu为图像处理的微处理器,连接显示屏194和应用处理器。gpu用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个gpu,其执行程序指令以生成或改变显示信息。
104.显示屏194用于显示图像,视频等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,lcd),有机发光二极管(organic light-emitting diode,oled),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrix organic light emitting diode的,amoled),柔性发光二极管(flex light-emitting diode,fled),miniled,microled,micro-oled,量子点发光二极管(quantum dot light emitting diodes,qled)等。在一些实施例中,电子设备100可以包括1个或n个显示屏194,n为大于1的正整数。
105.电子设备100可以通过isp,摄像头193,视频编解码器,gpu,显示屏194以及应用处理器等实现拍摄功能。
106.isp用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给isp处理,转化为肉眼可见的图像。isp还可以对图像的噪点,亮度,肤色进行算法优化。isp还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,isp可以设置在摄像头193中。
107.摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,ccd)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,cmos)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给isp转换成数字图像信号。isp将数字图像信号输出到dsp加工处理。dsp将数字图像信号转换成标准的rgb,yuv等格式的图像信号。在一些实施例中,电子设备100可以包括1个或n个摄像头193,n为大于1的正整数。
108.数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当电子设备100在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
109.视频编解码器用于对数字视频压缩或解压缩。电子设备100可以支持一种或多种
视频编解码器。这样,电子设备100可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,mpeg)1,mpeg2,mpeg3,mpeg4等。
110.npu为神经网络(neural-network,nn)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过npu可以实现电子设备100的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
111.外部存储器接口120可以用于连接外部存储卡,例如micro sd卡,实现扩展电子设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
112.内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器110通过运行存储在内部存储器121的指令,从而执行电子设备100的各种功能应用以及数据处理。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备100使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,ufs)等。
113.电子设备100可以通过音频模块170,扬声器170a,受话器170b,麦克风170c,耳机接口170d,以及应用处理器等实现音频功能。例如音乐播放,录音等。
114.音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。在一些实施例中,音频模块170可以设置于处理器110中,或将音频模块170的部分功能模块设置于处理器110中。
115.扬声器170a,也称“喇叭”,用于将音频电信号转换为声音信号。电子设备100可以通过扬声器170a收听音乐,或收听免提通话。
116.受话器170b,也称“听筒”,用于将音频电信号转换成声音信号。当电子设备100接听电话或语音信息时,可以通过将受话器170b靠近人耳接听语音。
117.麦克风170c,也称“话筒”,“传声器”,用于将声音信号转换为电信号。当拨打电话或发送语音信息时,用户可以通过人嘴靠近麦克风170c发声,将声音信号输入到麦克风170c。电子设备100可以设置至少一个麦克风170c。在另一些实施例中,电子设备100可以设置两个麦克风170c,除了采集声音信号,还可以实现降噪功能。在另一些实施例中,电子设备100还可以设置三个,四个或更多麦克风170c,实现采集声音信号,降噪,还可以识别声音来源,实现定向录音功能等。
118.耳机接口170d用于连接有线耳机。耳机接口170d可以是usb接口130,也可以是3.5mm的开放移动电子设备平台(open mobile terminal platform,omtp)标准接口,美国蜂窝电信工业协会(cellular telecommunications industry association of the usa,ctia)标准接口。
119.压力传感器180a用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器180a可以设置于显示屏194。压力传感器180a的种类很多,如电阻式压力传感器,电感式压力传感器,电容式压力传感器等。电容式压力传感器可以是包括至少两个
具有导电材料的平行板。当有力作用于压力传感器180a,电极之间的电容改变。电子设备100根据电容的变化确定压力的强度。当有触摸操作作用于显示屏194,电子设备100根据压力传感器180a检测所述触摸操作强度。电子设备100也可以根据压力传感器180a的检测信号计算触摸的位置。在一些实施例中,作用于相同触摸位置,但不同触摸操作强度的触摸操作,可以对应不同的操作指令。例如:当有触摸操作强度小于第一压力阈值的触摸操作作用于短消息应用图标时,执行查看短消息的指令。当有触摸操作强度大于或等于第一压力阈值的触摸操作作用于短消息应用图标时,执行新建短消息的指令。
120.陀螺仪传感器180b可以用于确定电子设备100的运动姿态。在一些实施例中,可以通过陀螺仪传感器180b确定电子设备100围绕三个轴(即,x,y和z轴)的角速度。陀螺仪传感器180b可以用于拍摄防抖。示例性的,当按下快门,陀螺仪传感器180b检测电子设备100抖动的角度,根据角度计算出镜头模组需要补偿的距离,让镜头通过反向运动抵消电子设备100的抖动,实现防抖。陀螺仪传感器180b还可以用于导航,体感游戏场景。
121.气压传感器180c用于测量气压。在一些实施例中,电子设备100通过气压传感器180c测得的气压值计算海拔高度,辅助定位和导航。
122.磁传感器180d包括霍尔传感器。电子设备100可以利用磁传感器180d检测翻盖皮套的开合。在一些实施例中,当电子设备100是翻盖机时,电子设备100可以根据磁传感器180d检测翻盖的开合。进而根据检测到的皮套的开合状态或翻盖的开合状态,设置翻盖自动解锁等特性。
123.加速度传感器180e可检测电子设备100在各个方向上(一般为三轴)加速度的大小。当电子设备100静止时可检测出重力的大小及方向。还可以用于识别电子设备姿态,应用于横竖屏切换,计步器等应用。
124.距离传感器180f,用于测量距离。电子设备100可以通过红外或激光测量距离。在一些实施例中,拍摄场景,电子设备100可以利用距离传感器180f测距以实现快速对焦。
125.接近光传感器180g可以包括例如发光二极管(led)和光检测器,例如光电二极管。发光二极管可以是红外发光二极管。电子设备100通过发光二极管向外发射红外光。电子设备100使用光电二极管检测来自附近物体的红外反射光。当检测到充分的反射光时,可以确定电子设备100附近有物体。当检测到不充分的反射光时,电子设备100可以确定电子设备100附近没有物体。电子设备100可以利用接近光传感器180g检测用户手持电子设备100贴近耳朵通话,以便自动熄灭屏幕达到省电的目的。接近光传感器180g也可用于皮套模式,口袋模式自动解锁与锁屏。
126.环境光传感器180l用于感知环境光亮度。电子设备100可以根据感知的环境光亮度自适应调节显示屏194亮度。环境光传感器180l也可用于拍照时自动调节白平衡。环境光传感器180l还可以与接近光传感器180g配合,检测电子设备100是否在口袋里,以防误触。
127.指纹传感器180h用于采集指纹。电子设备100可以利用采集的指纹特性实现指纹解锁,访问应用锁,指纹拍照,指纹接听来电等。
128.温度传感器180j用于检测温度。在一些实施例中,电子设备100利用温度传感器180j检测的温度,执行温度处理策略。例如,当温度传感器180j上报的温度超过阈值,电子设备100执行降低位于温度传感器180j附近的处理器的性能,以便降低功耗实施热保护。在另一些实施例中,当温度低于另一阈值时,电子设备100对电池142加热,以避免低温导致电
子设备100异常关机。在其他一些实施例中,当温度低于又一阈值时,电子设备100对电池142的输出电压执行升压,以避免低温导致的异常关机。
129.触摸传感器180k,也称“触控面板”。触摸传感器180k可以设置于显示屏194,由触摸传感器180k与显示屏194组成触摸屏,也称“触控屏”。触摸传感器180k用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏194提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器180k也可以设置于电子设备100的表面,与显示屏194所处的位置不同。
130.骨传导传感器180m可以获取振动信号。在一些实施例中,骨传导传感器180m可以获取人体声部振动骨块的振动信号。骨传导传感器180m也可以接触人体脉搏,接收血压跳动信号。在一些实施例中,骨传导传感器180m也可以设置于耳机中,结合成骨传导耳机。音频模块170可以基于所述骨传导传感器180m获取的声部振动骨块的振动信号,解析出语音信号,实现语音功能。应用处理器可以基于所述骨传导传感器180m获取的血压跳动信号解析心率信息,实现心率检测功能。
131.按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。电子设备100可以接收按键输入,产生与电子设备100的用户设置以及功能控制有关的键信号输入。
132.马达191可以产生振动提示。马达191可以用于来电振动提示,也可以用于触摸振动反馈。例如,作用于不同应用(例如拍照,音频播放等)的触摸操作,可以对应不同的振动反馈效果。作用于显示屏194不同区域的触摸操作,马达191也可对应不同的振动反馈效果。不同的应用场景(例如:时间提醒,接收信息,闹钟,游戏等)也可以对应不同的振动反馈效果。触摸振动反馈效果还可以支持自定义。
133.指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。
134.sim卡接口195用于连接sim卡。sim卡可以通过插入sim卡接口195,或从sim卡接口195拔出,实现和电子设备100的接触和分离。电子设备100可以支持1个或n个sim卡接口,n为大于1的正整数。sim卡接口195可以支持nano sim卡,micro sim卡,sim卡等。同一个sim卡接口195可以同时插入多张卡。所述多张卡的类型可以相同,也可以不同。sim卡接口195也可以兼容不同类型的sim卡。sim卡接口195也可以兼容外部存储卡。电子设备100通过sim卡和网络交互,实现通话以及数据通信等功能。在一些实施例中,电子设备100采用嵌入式sim(embedded-sim,esim)卡,即:嵌入式sim卡。esim卡可以嵌在电子设备100中,不能和电子设备100分离。
135.应理解,本技术实施例中的电话卡包括但不限于sim卡、esim卡、全球用户识别卡(universal subscriber identity module,usim)、通用集成电话卡(universal integrated circuit card,uicc)等等。
136.电子设备100的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本技术实施例以分层架构的android系统为例,示例性说明电子设备100的软件结构。
137.图2是本技术实施例的电子设备100的软件结构框图。分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将
android系统分为四层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(android runtime)和系统库,以及内核层。应用程序层可以包括一系列应用程序包。
138.如图2所示,应用程序包可以包括相机,图库,日历,通话,地图,导航,wlan,蓝牙,音乐,视频,短信息等应用程序。
139.应用程序框架层为应用程序层的应用程序提供应用编程接口(application programming interface,api)和编程框架。应用程序框架层包括一些预先定义的函数。
140.如图2所示,应用程序框架层可以包括窗口管理器,内容提供器,视图系统,电话管理器,资源管理器,通知管理器等。
141.窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
142.内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
143.视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
144.电话管理器用于提供电子设备100的通信功能。例如通话状态的管理(包括接通,挂断等)。
145.资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
146.通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,电子设备振动,指示灯闪烁等。
147.android runtime包括核心库和虚拟机。android runtime负责安卓系统的调度和管理。
148.核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
149.应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
150.系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(media libraries),三维图形处理库(例如:opengl es),2d图形引擎(例如:sgl)等。
151.表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2d和3d图层的融合。
152.媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:mpeg4,h.264,mp3,aac,amr,jpg,png等。
153.三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。
154.2d图形引擎是2d绘图的绘图引擎。
155.内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动。
156.应理解,本技术实施例中的技术方案可以用于android、ios、鸿蒙等系统中。
157.图3是本技术实施例提供的一组图形用户界面(graphical user interface,gui)。
158.参见图3中的(a)所示的gui。手机a显示视频应用的播放界面,该播放界面上显示视频播放画面301,此时手机b显示手机b的桌面。
159.当手机b靠近手机a后,手机a和手机b可以通过近场无线连接方式组网。组网方式包括但不限于接入点(access point,ap)组网和点对点(peer-to-peer,p2p)组网。其中,ap组网就是在同一ap(例如,家用wi-fi路由器)下的设备,可以通过ap设备互相通信,从而形成多对多组网。示例性的,手机a和手机b可以位于同一家用路由器下,当手机b靠近手机a后,手机a可以使用接收信号的强度指示(received signal strength indication,rssi)技术,根据接收的信号的强度计算设备a和设备b之间的距离。当该距离小于或者等于预设距离时,手机a和手机b可以进行ap组网。
160.wi-fi直连(wi-fi direct):也可以称之为wi-fi点对点(wi-fi peer to peer,wi-fi p2p),是一种点对点连接方式。它可以使得多个wi-fi设备在没有接入点(access point,ap)的情况下也能构成一个点对点网络(peer to peer network,p2p network)互相通信。其中一台站点(station,sta)可以充当传统意义上ap的作用,称之为组拥有者(group owner,go);另一台sta可以称之为组客户端(group client,gc),gc可以像连接ap一样连接到go。其中,可以由一个sta可以来扮演go的角色(即充当ap),而其他sta来扮演gc的角色。本技术实施例中,当一台设备靠近另一台设备时,可以默认位于左侧的设备为go,位于右侧的设备为gc。例如,手机a可以作为go,手机b可以作为gc。或者,当一台设备上检测到用户向右滑动的操作时,该设备可以作为gc且该设备可以选择位于其左侧的另一台设备为go;或者,当一台设备上检测到用户向左滑动的操作时,该设备可以作为gc且该设备可以选择位于其右侧的另一台设备为go。
161.若要构建一个p2p网络,首先需要一台电子设备经过p2p协议能扫描到另外一台电子设备,该过程称之为发现阶段;发现之后才能触发p2p连接的建立。当手机b靠近手机a后,手机a可以使用rssi技术,根据rssi计算设备a和设备b之间的距离。当该距离小于或者等于预设距离时,手机a和手机b可以进行p2p组网。
162.wi-fi p2p技术是上层业务的基础。当前建立在p2p之上的p2p应用主要有miracast应用、wlan直连应用等。在miracast应用场景中,一台支持p2p的电子设备可以通过扫描发现并连接上一台支持p2p的大屏设备,然后将该电子设备的视频、图片等资源直接送显到大屏设备。借助p2p技术,将极大丰富wi-fi技术的体验。
163.当手机b检测到用户在桌面上向右滑动的操作后,手机b向手机a发送指示信息,该指示信息用于指示手机b希望进入全屏模式。
164.参见图3中的(b)所示的gui。手机a在接收到手机b发送的指示信息后,手机a可以对当前播放界面中的显示的画布尺寸扩大1倍。手机a可以对扩大1倍后的画布进行裁剪,从而获得大小相同的两个区域(区域302和区域303)。手机a可以通过显示屏显示区域302所示的画布并将区域303的画布投屏到手机b上,从而使得手机b通过显示屏显示区域303的画
布。
165.一个实施例中,手机b的显示界面上还包括退出控件。当手机b检测到用户点击退出控件时,手机b可以向手机a发送指示信息,该指示信息用于指示手机a退出全屏模式。
166.一个实施例中,该退出控件可以是手机b绘制的。当手机a和手机b进入全屏模式后,就可以绘制退出控件并通过手机b的显示屏显示。
167.参见图3中的(c)所示的gui,当手机c靠近手机a后,手机a、手机b和手机c可以进行ap组网或者p2p组网。当手机c上检测到用户向右滑动的操作时,手机c可以向手机a发送指示信息,该指示信息用于指示手机c希望进入全屏模式。
168.一个实施例中,当手机c靠近手机b时,手机b可以通过rssi测距的方式确定手机c和手机b之间的距离小于或者等于预设距离,手机a、手机b和手机c可以进行ap组网,或者,手机a、手机b和手机c可以进行p2p组网。
169.一个实施例中,当手机c靠近手机b时,手机a和手机b可以分别通过rssi测距的方式确定手机a和手机c之间的距离、手机b和手机c之间的距离。当手机a和手机c之间的距离小于或者等于第一预设距离,且手机b和手机c之间的距离小于或者等于第二预设距离时,手机a、手机b和手机c可以进行ap组网,或者,手机a、手机b和手机c可以进行p2p组网。
170.参见图3中的(d)所示的gui,当手机a在接收到手机c发送的指示信息后,手机a可以对当前播放界面中的显示的画布尺寸扩大2倍。手机a可以对扩大2倍后的画布进行裁剪,从而获得大小相同的3个区域(区域304、区域305和区域306)。手机a可以通过显示屏显示区域304所示的画布,手机a可以将区域305所示的画布投屏到手机b上且将区域306所示的画布投屏到手机c,从而使得手机b通过显示屏显示区域305所示的画布,手机c通过显示屏显示区域306所示的画布。
171.一个实施例中,手机c的显示界面上还包括退出控件。当手机c检测到用户点击退出控件时,手机c可以向手机a发送指示信息,该指示信息用于指示手机a退出全屏模式。
172.一个实施例中,该退出控件可以是手机c绘制的。当手机a、手机b和手机c进入全屏模式后,手机c可以绘制退出控件并通过手机c的显示屏显示。此时,手机b和手机c上都可以包括退出控件。
173.本技术实施例中,通过近场无线连接方式,多设备可以拼接成更大的屏幕,无需增加额外的硬件设备,源(source)端设备可以动态修改显示画布的尺寸并通过裁剪后分布到各个目的(sink)端设备进行显示,有助于提升用户的体验。
174.以上结合图3示出了手机a将画布扩大后,按照多设备的数量将画布尺寸均匀等分后完整得呈现在各个设备上,这种方式也可以认为是分割方式。考虑到手机a和手机b或者手机b和手机c之间存在间距,手机a在将画布扩大后,将设备间的接缝视为一个遮罩元素,而画布被其遮挡了一部分,手机a也可以通过遮罩方式对扩大后的画布进行处理。下面结合图4所示的gui介绍通过遮罩方式处理的过程。
175.参见图4中的(a)所示的gui,手机a显示视频应用的播放界面,该播放界面上显示视频播放画面,此时手机b显示手机b的桌面。
176.当手机b靠近手机a后,手机a和手机b可以通过近场无线连接方式组网。当手机b检测到用户在桌面上向右滑动的操作后,手机b向手机a发送指示信息,该指示信息用于指示手机b希望进入全屏模式。
177.参见图4中的(b)所示的gui。手机a在接收到手机b发送的指示信息后,手机a可以对当前播放界面中的显示的画布尺寸扩大1倍。手机a可以根据手机a和手机b之间的距离,对扩大1倍后的画布进行裁剪从而获得区域401、区域402和区域403所示的画布。手机a可以通过显示屏显示区域401所示的画布,并将区域403所示的画布投屏到手机b上,从而使得手机b通过显示屏显示区域403所示的画布。
178.其中区域402的像素值根据手机a和手机b之间的距离确定。一种可能的实现方式是,若手机a的屏幕物理尺寸为x(6cm),屏幕分辨率为m(1080)*n(2340)。假设区域402宽度的物理尺寸为y(例如,0.5cm),那么需要裁剪的像素值z=(y/x)*m=90,即需要裁减掉90像素。本技术实施例中,区域402宽度的物理尺寸可以是手机a根据rssi测量手机a和手机b之间的距离的方式计算得到;或者,区域402宽度的物理尺寸也可以是手机a和手机b完全贴合时,手机a和手机b的物理边框尺寸之和。
179.一个实施例中,若手机a和手机b之间距离大于预设距离(例如,3cm)时,手机a可以采用分割方式对扩大后的画布进行裁剪;若手机a和手机b之间的距离小于或者等于该预设距离,手机a可以采用遮罩方式对扩大后的画布进行裁剪。
180.参见图4中的(c)所示的gui。当手机c靠近手机b后,手机a、手机b和手机c可以进行ap组网或者p2p组网。当手机c上检测到用户向右滑动的操作时,手机c可以向手机a发送指示信息,该指示信息用于指示手机c希望进入全屏模式。
181.一个实施例中,手机c还可以向手机a指示手机b与手机c之间的距离。
182.参见图4中的(d)所示的gui,当手机a在接收到手机c发送的指示信息后,手机a可以对当前播放界面中的显示的画布尺寸扩大2倍。手机a可以根据手机a和手机b之间的距离以及手机b和手机c之间的距离,对扩大2倍后的画布进行裁剪。如图4中的(d),手机a可以将扩大2后的画布裁剪为区域404、区域405、区域406、区域407和区域408。其中,区域405和区域407的像素值可以通过手机a和手机b之间的距离以及手机b和手机c之间的距离确定,具体的确定过程可以参考上述实施例中的描述,为了简洁,在此不再赘述。手机a可以通过显示屏显示区域404所示的画布,并将区域406所示的画布投屏到手机b上以及将区域408所示的画布投屏到手机c上,从而使得手机b通过显示屏显示区域406所示的画布,手机c通过显示屏显示区域408所示的画布。
183.以上通过图3和图4分别介绍了通过分割方式和遮罩方式对画布进行裁剪的过程。下面结合图5介绍多设备间退出全屏模式的过程。图5示出了本技术实施例提供的另一组gui。
184.参见图5中的(a)所示的gui,手机a、手机b和手机c当前处于全屏模式,当手机c检测到用户点击退出控件时,显示如图5中的(b)所示的gui。
185.参见图5中的(b)所示的gui,响应于手机c检测到用户点击退出控件,手机c可以向手机a发送指示信息,该指示信息用于指示手机c退出全屏模式。手机a在接收到该指示信息后,可以从原来的对画布尺寸扩大2倍调整为对画布尺寸扩大1倍。手机a可以对扩大1倍后的画布进行裁剪,从而获得大小相同的两个区域(例如,图3中的(b)所示的区域布302和区域303)。手机a可以通过显示屏显示区域302所示的画布并将区域303所示的画布投屏到手机b上,从而使得手机b通过显示屏显示区域303的画布。手机c退出全屏模式,且显示手机c的桌面。当手机b检测到用户点击退出控件的操作时,可以显示如图5中的(c)所示的gui。
186.参见图5中的(c)所示的gui,响应于手机b检测到用户点击退出控件,手机b可以向手机a发送指示信息,该指示信息用于指示手机b退出全屏模式。手机a在接收到该指示信息后,可以从原来的对画布尺寸扩大1倍调整为对画布尺寸不进行扩大。从而手机a可以显示视频的播放界面,手机b退出全屏模式,且显示手机b的桌面。
187.还应理解,图5中的(a)所示的gui中,手机a是通过分割方式对扩大2倍后的画布进行处理的,那么当手机a接收到手机c退出全屏模式的指示后,可以继续通过分割方式对扩大1倍后的画布进行处理。一个实施例中,若手机a是通过遮罩方式对扩大2倍后的画布进行处理的,那么当手机a接收到手机c退出全屏模式的指示后,可以继续通过遮罩方式对扩大1倍后的画布进行处理。
188.图6示出了本技术实施例提供的另一组gui。
189.参见图6中的(a)所示的gui,手机a和手机b之间的距离大于预设距离,手机a显示手机a的桌面,手机b显示手机b的桌面。
190.当手机a和手机b靠近且手机a和手机b之间的距离小于或者等于该预设距离时,手机a和手机b显示如图6中的(b)所示的gui。
191.参见图6中的(b)所示的gui,当手机a和手机b的距离小于或者等于该预设距离时,手机a桌面上显示控件601,且手机b的桌面上显示控件602。当手机b检测到用户向右拖动控件602的操作时,显示如图6中的(c)所示的gui。
192.参见图6中的(c)所示的gui,响应于手机b检测到用户向右拖动控件602的操作,手机b向手机a发送指示信息,该指示信息用于指示手机b希望进入全屏模式。手机a在接收到该指示信息后,可以将当前界面(手机a的桌面)上的画布扩大1倍。手机a可以对扩大1倍后的画布进行裁剪,从而获得大小相同的两个区域(左边的区域和右边的区域)。手机a可以通过显示屏显示左边的区域所示的画布(包括状态栏中的网络制式、信号强度以及wi-fi连接状态,时间(08:08)和日期信息(8月6日,星期四),app1、app2、app5、app6、app9、app10的图标)并将右边区域所示的画布(包括状态栏中的电池电量的信息以及时间信息(08:08),天气的信息(35℃),位置信息(西安),app3、app4、app7、app8、app11、app12的图标)投屏到手机b上,从而使得手机b通过显示屏右边区域的画布。同时,手机b上还可以包括平行模式的图标603、双应用模式的图标604、分页模式的图标605以及退出控件606。
193.一个实施例中,平行模式的图标603、双应用模式的图标604、分页模式的图标605以及退出控件606可以是手机b绘制的,手机b在接收到手机a的投屏内容后可以在该投屏内容上添加上述图标以及控件。
194.一个实施例中,平行模式的图标603、双应用模式的图标604、分页模式的图标605以及退出控件606也可以是手机a绘制的并显示在手机a上。
195.一个实施例中,平行模式的图标603、双应用模式的图标604、分页模式的图标605可以是手机a绘制的且显示在手机a上,退出控件606可以是手机b绘制的且显示在手机b上。
196.当手机a检测到用户点击app2的图标的操作时,显示如图6中的(d)所示的gui。响应于手机a检测到用户点击app2的图标,手机a启动app2,同时手机a将app2显示的画布扩大1倍并对扩大1倍后的画布进行处理。手机a和手机b的显示方式可以参考上述实施例中的描述,为了简洁,在此不再赘述。
197.本技术实施例中,app2可以是视频app。
198.如图6中的(e)所示的gui,当手机b检测到用户点击控件607的操作时,手机b可以向手机a发送触控事件以及坐标点信息,该触控事件用于指示手机b检测到用户的点击操作,该坐标点信息用于指示手机b检测到的用户点击时的坐标点。手机a可以根据该触控事件以及坐标点信息确定用户在手机b上点击了全屏观看控件,从而在手机a和手机b上全屏显示视频窗口。应理解,手机a和手机b全屏显示视频窗口的过程可以参考上述实施例中的描述,为了简洁,在此不再赘述。
199.应理解,图6中所示的手机a可以通过分割方式对扩大1倍后的画布进行裁剪,或者,手机a也可以使用遮罩方式对扩大1倍后的画布进行裁剪,具体的实现过程可以参考上述实施例中的描述,为了简洁,在此不再赘述。
200.图7示出了本技术实施例提供的另一组gui。该gui示出了从全屏模式切换至双应用模式的过程。
201.参见图7中的(a)所示的gui,手机a和手机b处于全屏模式下。当手机b检测到用户点击了双应用模式的操作时,显示如图7中的(b)所示的gui。
202.参见图7中的(b)所示的gui,响应于手机b检测到用户点击了双应用模式的图标的操作,手机b可以向手机a发送指示信息,该指示信息用于指示手机b检测到用户点击了双应用模式的图标。响应于接收到手机a发送的指示信息,手机a显示手机a的桌面,且手机a向手机b发送手机a的桌面对应的画布,从而使得手机b上也显示手机a的桌面。当手机a检测到用户点击app3的图标的操作时,显示如图7中的(c)所示的gui。
203.参见图7中的(c)所示的gui,响应于手机a检测到用户点击app3的图标的操作,手机a可以显示app3的显示界面,此时手机b显示手机a的桌面。当手机b检测到用户点击app4的图标的操作时,显示如图7中的(d)所示的gui。
204.本技术实施例中,app3可以是视频app,app4可以是照片app。
205.参见图7中的(d)所示的gui,响应于手机b检测到用户点击app4的图标的操作,手机b可以向手机a发送触控事件以及坐标点信息,该触控事件用于指示手机b检测到用户的点击操作,该坐标点信息用于指示手机b检测到的用户点击时的坐标点。手机a可以根据该坐标点信息确定用户在手机b上点击了app4的图标。从而手机a可以在后台启动app4,并将app4的显示界面投屏到手机b上,从而使得手机b显示app4的界面。
206.本技术实施例中,当手机a和手机b处于双应用模式时,用户可以在手机a和手机b上分别启动手机a上的不同应用,有助于提升用户的体验。示例性的,用户可以使用手机a和手机b分别打开购物app1和购物app2,从而可以对商品进行比价;或者,用户可以在手机a上使用社交app进行聊天的同时,在手机b上使用视频app观看视频。
207.图8示出了本技术实施例提供的另一组gui。该gui示出了从全屏模式切换至分页模式的过程。
208.参见图8中的(a)所示的gui,手机a和手机b处于全屏模式下。当手机b检测到用户点击了分页模式的操作时,显示如图8中的(b)所示的gui。
209.参见图8中的(b)所示的gui,响应于手机b检测到用户点击了分页模式的图标的操作,手机b可以向手机a发送指示信息,该指示信息用于指示用户b检测到用户点击了分页模式的图标。手机a可以根据该指示信息从全屏模式切换到分页模式。手机a显示手机a的桌面,其中,手机a的桌面包括3个桌面页面,当前手机a显示第一个桌面页面。手机a将手机a的
第二个桌面页面对应的画布投屏到手机b上,从而使得手机b显示手机a的第二个桌面页面。当手机a检测到用户点击app5的图标的操作时,显示如图8中的(c)所示的gui。
210.参见图8中的(c)所示的gui,响应于手机a检测到用户点击app5的图标的操作,手机a可以显示app5的显示界面,其中,该显示界面为文档1的显示界面,文档1包括8页。手机a可以显示文档1的第1页的内容,同时手机a可以将文档1的第2页的内容投屏到手机b上,从而使得手机b显示文档1的第2页内容。
211.一个实施例中,当手机a检测到用户在显示屏上的滑动操作(例如,向上滑动)时,手机a可以显示文档1的第3页的内容,同时手机a将文档1的第4页的内容投屏到手机b上,从而使得手机b显示文档1的第4页内容。
212.本技术实施例中,当手机a和手机b处于分页模式时,有助于提升用户浏览界面内容时的效率,从而有助于提升用户的体验。
213.图9示出了本技术实施例提供的另一组gui。该gui示出了从全屏模式切换至平行模式的过程。
214.参见图9中的(a)所示的gui,手机a和手机b处于全屏模式下。当手机b检测到用户点击了平行模式的操作时,显示如图9中的(b)所示的gui。
215.参见图9中的(b)所示的gui,响应于手机b检测到用户点击了平行模式的图标的操作,手机b可以向手机a发送指示信息,该指示信息用于指示手机b检测到用户点击了平行模式的图标。手机a可以根据该指示信息确定从全屏模式切换到平行模式。手机a显示手机a的桌面,且手机b显示手机b的桌面。当手机a检测到用户点击app6的图标的操作时,显示如图9中的(c)所示的gui。
216.应理解,如图9中的(a)所示,当手机a确定从全屏模式切换至平行模式时,对于手机b显示的内容并不限定。手机b可以显示手机b的桌面;或者,手机a和手机b进入平行模式时,手机a可以将手机a的桌面对应的画布投屏到手机b上,从而使得手机b显示手机a的桌面。
217.参见图9中的(c)所示的gui,响应于手机a检测到用户点击app6的图标的操作,手机a可以开启app6。app6为社交应用app,手机a显示用户与多个联系人的聊天列表,此时手机b显示手机b的桌面。当手机a检测到用户点击用户与联系人爸爸的聊天记录时,显示如图9中的(d)所示的gui。
218.参见图9中的(d)所示的gui,响应于手机a检测到用户点击用户与联系人爸爸的聊天记录,手机a显示用户与多个联系人的聊天列表,且手机a可以将用户与联系人爸爸的聊天界面投屏到手机b上,从而使得手机b显示用户与联系人爸爸的聊天界面。该聊天界面包括文本输入框、发送控件、发送本地照片的控件、发送实时拍摄的照片的控件以及视频通话控件。当手机b检测到用户点击视频通话控件的操作时,显示如图9中的(e)所示的gui。
219.参见图9中的(e)所示的gui,响应于手机b检测到用户点击视频通话控件的操作,手机b向手机a发送触控事件以及坐标点信息,该触控事件用于指示手机b检测到用户的点击操作,该坐标点信息用于指示手机b检测到的用户点击时的坐标点。手机a可以根据该坐标点信息确定用户在手机b上点击了视频通话控件。手机a可以显示请求联系人爸爸接听视频通话的界面。
220.参见图9中的(f)所示的gui,当联系人爸爸接受了该视频通话请求后,手机a可以
显示用显示用户与联系人爸爸的视频通话界面,此时手机b可以显示用户与联系人爸爸的聊天界面。当手机b检测到用户输入的文本内容时,手机b可以向手机a发送该文本内容,从而在手机a上完成对消息的真实回复。手机a在完成对消息的真实回复后,可以将更新后的用户与联系人爸爸的聊天界面投屏到手机b上,从而使得手机b显示更新后的用户与联系人爸爸的聊天界面。
221.在手机a上显示用户与联系人爸爸的视频聊天界面的同时,用户可以通过手机b与联系人爸爸进行聊天。用户可以通过该聊天界面向联系人爸爸发送文本信息(例如,“给你看我昨晚拍的照片”)以及图片。
222.本技术实施例提供了一种平行显示应用程序上下级活动(activity)页面的方式,应用程序可以在此模式下调整同时显示2个活动页面,从而带来多设备拼接时更好的用户体验。
223.图10示出了本技术实施例提供的另一组gui。
224.参见图10中的(a)所示的gui,当手机a和手机b的距离小于或者等于预设距离时,手机a桌面上显示控件1001,且手机b的桌面上显示控件1002。当手机a检测到用户向左拖动控件1001的操作时,显示如图10中的(b)所示的gui。
225.参见图10中的(b)所示的gui,响应于手机a检测到用户向左拖动控件1001的操作,手机a向手机b发送指示信息,该指示信息用于指示手机a希望进入全屏模式。手机b在接收到该指示信息后,可以将当前界面(手机b的桌面)上的画布扩大1倍。手机b可以对扩大1倍后的画布进行裁剪,从而获得大小相同的两个区域(左边的区域和右边的区域)。手机b可以通过显示屏显示右边的区域所示的画布(包括电池电量的信息,时间(08:08)和日期信息(8月6日,星期四),位置信息(高新区),app15、app16、app19、app20、app23、app24的图标),并将左边的区域所示的画布(包括状态栏中的网络制式,wi-fi连接状态,天气的信息(35℃),app13、app14、app17、app18、app21、app22的图标)投屏到手机a上,从而使得手机a通过显示屏显示左边的区域所示的画布。同时,手机a上还可以包括平行模式的图标1003、双应用模式的图标1004、分页模式的图标1005以及退出控件1006。
226.一个实施例中,平行模式的图标1003、双应用模式的图标1004、分页模式的图标1005以及退出控件1006可以是手机a绘制的并通过手机a的显示屏显示。
227.一个实施例中,当手机a和手机b进入全屏模式后,平行模式的图标1003、双应用模式的图标1004、分页模式的图标1005以及退出控件1006也可以是手机b绘制的并通过手机b的显示屏显示。
228.一个实施例中,当手机a和手机b进入全屏模式后,平行模式的图标1003、双应用模式的图标1004和分页模式的图标1005可以显示在手机b上,退出控件1006可以显示在手机a上。
229.图11示出了本技术实施例中的另一组gui。
230.参见图11中的(a)所示的gui,当手机a和手机b的距离小于或者等于预设距离时,手机a桌面上显示控件1101,且手机b的桌面上显示控件1102。当手机b检测到用户向右拖动控件1102的操作时,显示如图11中的(b)所示的gui。
231.参见图11中的(b)所示的gui,响应于手机b检测到用户向右拖动控件1102的操作,手机b可以在显示屏上显示全屏模式的图标、双应用模式的图标、平行模式的图标以及分页
模式的图标。如果用户希望手机a和手机b进入全屏模式,则用户可以向右上方拖动控件1102。
232.参见图11中的(c)所示的gui,当手机b检测到用户将控件1102拖动至与全屏模式对应的图标部分重合或者全部重合后,手机b可以向手机a发送指示信息,该指示信息用于指示手机b希望进入全屏模式。手机a在接收到该指示信息后,可以将当前界面(手机a的桌面)上的画布扩大1倍。手机a可以对扩大1倍后的画布进行裁剪,从而获得大小相同的两个区域(左边的区域和右边的区域)。手机a可以通过显示屏显示左边的区域所示的画布(包括状态栏中的网络制式、wi-fi连接状态,时间(08:08)和日期信息(8月6日,星期四),app1、app2、app5、app6、app9、app10的图标)并将右边区域所示的画布(包括电池电量的信息,天气的信息(35℃),app3、app4、app7、app8、app11、app12的图标)投屏到手机b上,从而使得手机b通过显示屏右边区域的画布。同时,手机b上还可以显示平行模式的图标、双应用模式的图标、分页模式的图标以及退出控件。
233.一个实施例中,如图11中的(b)所示,当手机b检测到用户将控件1102拖动至与全屏模式的图标重合的部分的面积大于或者等于预设面积时,手机b可以向手机a发送该指示信息。
234.应理解,图11中所示的手机a可以通过分割方式对扩大1倍后的画布进行裁剪,或者,手机a也可以使用遮罩方式对扩大1倍后的画布进行裁剪。
235.图12示出了本技术实施例中的另一组gui。
236.参见图12中的(a)所示的gui,当手机a和手机b的距离小于或者等于预设距离时,手机a桌面上显示控件1201,且手机b的桌面上显示控件1202。当手机a检测到用户向左拖动控件1201的操作时,显示如图12中的(b)所示的gui。
237.参见图12中的(b)所示的gui,响应于手机a检测到用户向左拖动控件1201的操作,手机b可以在显示屏上显示全屏模式的图标、双应用模式的图标、平行模式的图标以及分页模式的图标。如果用户希望手机a和手机b进入全屏模式,则用户可以向左上方拖动控件1201。
238.参见图12中的(c)所示的gui,当手机a检测到用户将控件1201拖动至与全屏模式的图标部分重合或者全部重合后,手机a向手机b发送指示信息,该指示信息用于指示手机a希望进入全屏模式。手机b在接收到该指示信息后,可以将当前界面(手机b的桌面)上的画布扩大1倍。手机b可以对扩大1倍后的画布进行裁剪,从而获得大小相同的两个区域(左边的区域和右边的区域)。手机b可以通过显示屏显示右边的区域所示的画布(包括电池电量的信息,时间(08:08)和日期信息(8月6日,星期四),位置信息(高新区),app15、app16、app19、app20、app23、app24的图标),并将左边的区域所示的画布(包括状态栏中的网络制式,wi-fi连接状态,天气的信息(35℃),app13、app14、app17、app18、app21、app22的图标)投屏到手机a上,从而使得手机a通过显示屏显示左边的区域所示的画布。同时,手机a上还可以显示平行模式的图标、双应用模式的图标、分页模式的图标以及退出控件。
239.一个实施例中,当手机a检测到用户将控件1201拖动至与全屏模式的图标重合的部分的面积大于或者等于预设面积时,手机a可以向手机b发送该指示信息。
240.图13和图14示出手机a和手机b自动进入全屏模式、手机a和手机b自动退出全屏模式的过程。
241.参见图13中的(a)所示的gui,当手机a和手机b距离大于预设距离时,手机a显示手机a的桌面,手机b显示手机b的桌面。当手机a和手机b靠近后,显示如图13中的(b)所示的gui。
242.参见图13中的(b)所示的gui,当手机a和手机b之间的距离小于或者等于预设距离时,手机b向手机a发送指示信息,该指示信息用于指示手机b希望进入全屏模式。手机a在接收到该指示信息后,可以将当前界面(手机a的桌面)上的画布扩大1倍。手机a可以对扩大1倍后的画布进行裁剪,从而使得手机a和手机b进行全屏显示。手机a对扩大1倍后的画布进行裁剪的过程可以参考上述实施例中的描述,为了简洁,在此不再赘述。
243.本技术实施例中,手机a和手机b可以默认处于最左侧的设备作为source端设备,处于右侧的设备作为sink端设备。
244.参见图14中的(a)所示的gui,在手机a和手机b进入全屏模式后,用户将手机b远离手机a。
245.参见图14中的(b)所示的gui,当手机a检测到手机a和手机b的距离大于预设距离时,手机a和手机b可以自动退出全屏模式,或者,手机a可以停止向手机b发送裁剪后的画布。手机a可以显示手机a的桌面,手机b显示手机b的桌面。
246.一个实施例中,当手机a检测到手机a和手机b的距离大于预设距离时,手机a和手机b可以自动退出全屏模式的同时,手机a还可以和手机b断开无线连接。
247.图15示出了本技术实施例中的另一组gui。
248.如图15中的(a)所示,当手机a和手机b的距离小于或者等于预设距离时,手机a桌面上显示控件1501,且手机b的桌面上显示控件1502。手机a显示视频应用的播放界面且手机a收到一条来自于app4的通知消息(发送通知消息的联系人为李华,消息内容为“上午9点有会议”),此时手机b显示手机b的桌面。当手机b检测到用户向右拖动控件1502的操作时,显示如图15中的(b)所示的gui。
249.如图15中的(b)所示,响应于检测到用户向右拖动控件1502的操作,手机b可以向手机a发送指示信息,该指示信息用于指示手机a和手机b进行拼接显示。由于此时手机a正在显示视频播放画面且手机a收到一条来自于app4的通知消息,那么手机a可以确定手机a和手机b进入双应用模式。手机a显示该视频播放画面,且手机a向手机b发送app4中与联系人李华的聊天界面对应的画布,从而使得手机b上显示与联系人李华的聊天界面。这样,用户可以在手机a继续观看视频,且可以通过手机b进行消息的回复。
250.一个实施例中,手机b还可以显示平行模式1503、全屏模式1504、分页模式1505以及退出控件1506。手机b检测到用户点击平行模式1503、全屏模式1504、分页模式1505以及退出控件1506后的显示过程可以参考上述实施例中的描述,此处不再赘述。
251.一个实施例中,如果手机a在接收到该通知消息后的预设时长内接收到手机b发送的指示信息,那么手机a也可以确定手机a和手机b进入双应用模式。手机a显示该视频播放界面,且手机a向手机b发送app4中与联系人李华的聊天界面对应的画布,从而使得手机b上显示用户与联系人李华的聊天界面。
252.一个实施例中,如图15中的(b)所示,当手机b检测到用户在文本输入框1507中的点击操作时,手机b可以将该点击事件以及对应的坐标信息发送给手机a。手机a响应于接收到该点击事件以及对应的坐标信息,可以确定手机b检测到用户点击了文本输入框。从而手
机a可以在该聊天界面上拉起输入法,并将拉起输入法后的该聊天界面对应的画布发送给手机b。
253.如图15中的(c)所示,响应于接收到手机a发送的画布后,手机b可以显示拉起输入法后的聊天界面。
254.一个实施例中,当手机b检测到用户在屏幕上的点击操作时,手机b可以将点击事件以及对应的坐标信息发送给手机a,从而手机a可以确定手机b检测到用户通过输入法点击了某个按键(例如,手机a可以确定手机b检测到用户点击了按键“o”)。那么手机a可以将文本内容“o”显示在文本输入框1507中,同时将在文本输入框1507中显示了文本内容“o”的该聊天界面对应的画布发送给手机b。手机b在接收到该画布后,可以显示该聊天界面,其中该聊天界面的文本输入框中包括文本内容“o”。
255.一个实施例中,用户在手机b上点击了发送控件。响应于手机b检测到用户在屏幕上的点击操作时,手机b可以将点击事件以及对应的坐标信息发送给手机a,从而手机a可以确定手机b检测到用户通过输入法点击了某个按键(例如,手机a可以确定手机b检测到用户点击了发送控件)。此时手机a可以将文本输入框中的文本内容(例如,“ok”)回复给用户李华。从而手机a完成了对该消息的真实回复。在手机a完成对消息的真实回复后,手机a还可以将对消息回复后的聊天界面对应的画布发送给手机b,从而手机b可以显示对消息回复后的聊天界面,其中该聊天界面上包括李华发送的消息内容“上午9点有会议”以及用户对该消息内容的回复内容“ok”。
256.如图15中的(d)所示,当手机b检测到用户从屏幕底部向上滑动的操作时,手机b可以向手机a发送该触控事件。响应于接收到手机a发送的该触控事件,手机a可以确定用户在手机b的桌面上检测到用户从屏幕底部向上滑动的操作,手机a可以确定用户希望在手机b上退出app4的显示界面。此时,手机a可以停止向手机b发送app4中用户与联系人李华的聊天界面对应的图像信息。
257.如图15中的(e)所示,手机a可以显示视频app的显示界面且手机b可以显示手机b的桌面。
258.一个实施例中,如图15中的(f)所示,当手机a停止向手机b发送app4中用户与联系人李华的聊天界面对应的图像信息时,手机a还可以确定当前显示的视频app的显示界面适合通过全屏模式进行拼接显示,那么手机a可以将该视频app的显示界面扩大1倍后进行分割,从而显示分割后的一部分图像信息且向手机b发送分割后的另一部分图像信息。响应于接收到分割后的另一部分图像信息,手机b可以显示该另一部分图像信息。从而手机a和手机b可以通过全屏模式进行拼接显示。
259.图16示出了本技术实施例中的另一组gui。
260.如图16中的(a)所示,手机a和手机b当前处于双应用模式下,手机a显示手机a上app3的显示界面,手机a还可以将手机a上的照片应用的显示界面对应的画布发送给手机b,从而手机b显示照片应用的显示界面。
261.如图16中的(b)所示,手机a收到一条来自于app4的通知消息后显示消息提示框1601,其中消息提示框1601中包括发送通知消息的联系人信息(例如,李华),消息内容(例如,“上午9点有会议”)。当手机a检测到用户点击该通知消息提示框1601的操作时,可以显示如图16中的(c)所示的gui。
262.如图16中的(c)所示,响应于手机a检测到用户点击通知消息提示框1601的操作,手机a可以将app4中用户与联系人李华的聊天界面对应的画布发送给手机b,从而使得手机b显示与联系人李华的聊天界面。
263.一个实施例中,响应于手机a检测到用户点击通知消息提示框1601的操作,手机a也可以将app4的首页对应的画布发送给手机b,从而使得手机b显示app4的首页。
264.一个实施例中,手机a可以根据app3和照片应用的打开时间顺序,选择替换较早打开的一个应用程序。示例性的,若手机a确定app3相比于照片应用的打开时间较早,那么当手机a检测到用户点击消息提示框1601的操作时,手机a可以使用app4中用户与联系人李华的聊天界面替换之前显示的app3的显示界面且手机a可以继续向手机b发送照片应用的显示界面,从而使得手机b继续显示照片应用的显示界面。示例性的,若手机a确定照片应用相比于app3的打开时间较早,那么当手机a检测到用户点击消息提示框1601的操作时,手机a可以继续显示app3的显示界面且手机a可以向手机b发送app4中用户与联系人李华的聊天界面对应的图像信息。手机b响应于接收到该图像信息,可以显示app4中用户与联系人李华的聊天界面。
265.一个实施例中,手机a可以根据用户聚焦应用程序的状态,确定替换哪一个应用程序。示例性的,若手机a在检测到用户点击消息提示框1601之前的预设时长内接收到手机b发送的触控事件且未检测到用户在手机a上的触控操作,那么手机a可以确定用户聚焦的应用程序为手机b上显示的照片应用。从而手机a可以使用app4中用户与联系人李华的聊天界面替换之前显示的app3的显示界面且手机a可以继续向手机b发送照片应用的显示界面,从而使得手机b继续显示照片应用的显示界面。示例性的,若手机a在检测到用户点击消息提示框1601之前的预设时长内未接收到手机b发送的触控事件且检测到用户在手机a上的触控操作,那么手机a可以确定用户聚焦的应用程序为手机a上显示的app3。从而手机a可以继续显示app3的显示界面且手机a可以向手机b发送app4中用户与联系人李华的聊天界面对应的图像信息。手机b响应于接收到该图像信息,可以显示app4中用户与联系人李华的聊天界面。一个实施例中,手机a可以通过在预设时长内是否检测到用户在app3的显示界面上的触控操作或者接收到手机b的指示信息,该指示信息用于指示手机b在照片应用的显示界面上检测到用户的输入,从而确定用户聚焦的应用程序。手机a可以通过用户与联系人李华的聊天界面替换用户未聚焦的应用程序的显示界面。本技术实施例中,手机a还可以在检测到用户对消息提示框1601的输入时开启摄像头并采集用户的虹膜信息,从而判断用户聚焦的电子设备为手机a或者手机b。示例性的,若手机a确定用户聚焦的电子设备为手机a,则手机a可以继续显示app3的显示界面且手机a可以向手机b发送用户与联系人李华的聊天界面对应的图像信息。手机b响应于接收到该图像信息,可以显示app4中用户与联系人李华的聊天界面。示例性的,若手机a确定用户聚焦的电子设备为手机b,则手机a可以使用app4中用户与联系人李华的聊天界面替换之前显示的app3的显示界面且手机a可以继续向手机b发送照片应用的显示界面,从而使得手机b继续显示照片应用的显示界面。
266.应理解,用户在手机b上对消息进行回复的过程可以参考上述实施例中的描述,此处不再赘述。
267.图17示出了本技术实施例中的另一组gui。
268.如图17中的(a)所示,手机a和手机b当前正处于全屏模式下,且手机a和手机b正在
显示视频播放界面。
269.一个实施例中,手机b的显示界面上还包括平行模式、双应用模式、分页模式以及退出控件。
270.如图17中的(b)所示,手机a收到一条来自于app4的通知消息后,可以通过手机a和手机b在该视频播放界面上显示消息提示框1701,其中消息提示框1701包括发送通知消息的联系人信息(例如,“李华”),消息内容为(例如,“上午9点有会议”)。当时手机a检测到用户点击了消息提示框1701的操作时,手机a可以确定手机a和手机b从通过全屏模式进行拼接显示切换至通过双应用模式进行拼接显示。
271.如图17中的(c)所示,手机a可以显示该视频播放界面,同时手机a可以将手机a上app4中用户与联系人李华的聊天界面对应的画布发送给手机b,从而使得手机b显示与联系人李华的聊天界面。
272.一个实施例中,当手机b检测到用户点击消息提示框1701的操作时,手机b可以向手机a发送点击事件以及对应的坐标信息。手机a在通过该点击事件以及对应的坐标信息确定用户在手机b上点击了消息提示框1701后,手机a可以确定将手机a和手机b从通过全屏模式拼接显示切换至通过双应用模式拼接显示。
273.一个实施例中,手机b的显示界面上还包括平行模式、全屏模式、分页模式以及退出控件。
274.图18示出了本技术实施例中的另一组gui。
275.如图18中的(a)所示,手机a和手机b当前正处于全屏模式下,且手机a和手机b正在显示视频播放界面。手机a收到一条来自于app4的通知消息后,可以通过手机a和手机b在该视频播放界面上显示消息提示框1801,其中消息提示框1801包括发送通知消息的联系人信息(例如,“李华”),消息内容为(例如,“上午9点有会议”)。当手机a检测到用户长按消息提示框1801并向左下方拖拽的操作时,可以显示如图18中的(b)所示的gui。
276.如图18中的(b)所示,响应于手机a检测到用户长按消息提示框1801并向左下方拖拽的操作,手机a可以和手机b上显示的消息提示框1801的位置发生了移动(消息提示框1801的位置向左下方移动)。当手机a检测到用户的手指从显示屏上移开时,手机a和手机b可以显示如图18中的(c)所示的gui。
277.一个实施例中,当手机a检测到消息提示框1801悬停的时长达到预设时长后,手机a和手机b可以显示如图18中的(c)所示的gui。
278.如图18中的(c)所示,响应于用户的手指从显示屏上移开,手机a可以确定将手机a和手机b从通过全屏模式进行拼接显示切换至通过双应用模式进行拼接显示。同时,手机a可以根据用户拖拽消息提示框1801的方向来确定将app4中用户与联系人李华的聊天界面显示在手机a上,且向手机b发送视频应用的显示界面对应的画布。手机a可以显示用户与联系人李华的聊天界面。手机b在接收到手机a发送的画布信息后,可以显示该视频播放界面。
279.一个实施例中,若手机a检测到用户长按消息提示框1801并向右下方拖拽的操作后,手机a可以确定将app4中用户与联系人李华的聊天界面对应的画布发送给手机b,以使得手机b显示app4中用户与联系人李华的聊天界面。手机a还可以确定在手机a上显示该视频播放界面。
280.图19示出了本技术实施例中的另一组gui。
281.如图19中的(a)所示,手机a和手机b当前正处于全屏模式下,且手机a和手机b正在显示视频播放界面。手机a收到一条来自于app4的通知消息后,可以通过手机a和手机b在该视频播放界面上显示消息提示框1901,其中消息提示框1901包括发送通知消息的联系人信息(例如,“李华”),消息内容为(例如,“上午9点有会议”)。当手机a检测到用户长按消息提示框1901并向下方拖拽的操作时,可以显示如图19中的(b)所示的gui。
282.如图19中的(b)所示,响应于手机a检测到用户长按消息提示框1901并向下方拖拽的操作,手机a可以和手机b上显示的消息提示框1901的位置发生了移动(消息提示框1901的位置向正下方移动)。当手机a检测到用户的手指从显示屏上移开时,手机a和手机b可以显示如图19中的(c)所示的gui。
283.如图19中的(c)所示,响应于用户的手指从显示屏上移开,手机a和手机b可以通过全屏模式显示app4中用户与联系人李华的聊天界面。
284.本技术实施例中,当手机a和手机b通过全屏模式显示第一应用程序时,如果手机a获取到第二应用程序的消息,那么手机a可以根据用户的操作来确定将是否切换至双应用模式。如果手机a确定切换至双应用模式,那么手机a还可以根据用户的操作来确定第一应用程序和第二应用程序的显示方式。
285.应理解,对于消息提示框1801和消息提示框1901,当手机a检测到用户对其不同方向的拖动时可以和手机b实现不同的拼接显示方式。
286.示例性的,对于图18中的(a),当手机a检测到用户将消息提示框1801向左下方拖动的操作时,手机a可以确定用户希望将app4中用户与联系人李华的聊天界面显示在位于左侧(也就是手机a)的设备上。那么手机a可以和手机b从通过全屏模式进行拼接显示切换至通过双应用模式进行拼接显示。如图18中的(c)所示,手机a可以显示app4中用户与联系人李华的聊天界面;手机a还可以向手机b发送该视频播放界面对应的图像信息,从而使得手机b显示该视频播放界面。相应地,手机a检测到用户将消息提示框1801向右下方拖动的操作时,手机a可以显示该视频播放界面;手机a还可以向手机b发送app4中用户与联系人李华的聊天界面对应的图像信息,从而使得手机b显示app4中用户与联系人李华的聊天界面。
287.示例性的,对于图19中的(a),当手机a检测到用户将消息提示框1901向正下方拖动的操作时,手机a可以确定用户希望通过全屏模式显示app4中用户与联系人李华的聊天界面。如图19中的(c),手机a可以通过全屏模式显示app4中用户与联系人李华的聊天界面。
288.图20示出了本技术实施例中的另一组gui。
289.如图20中的(a)所示,手机a和手机b可以通过平行模式分别显示社交应用的首页以及社交应用中用户与联系人爸爸的聊天界面。当手机a接收到app7的一条通知消息(例如,“您关注的商品1已降价!”)且手机a检测到用户点击消息提示框2001的操作时,手机a和手机b可以显示如图20中的(b)所示的gui。
290.如图20中的(b)所示,响应于检测到用户点击消息提示框2001的操作,手机a可以确定将手机a和手机b从通过平行模式进行拼接显示切换至通过双应用模式进行拼接显示。手机a可以确定显示该社交应用的首页,并将app7中该商品1的显示界面对应的画布发送给手机b。手机b响应于接收到该画布,手机b可以显示该商品1的显示界面。
291.一个实施例中,响应于检测到用户点击消息提示框2001的操作,手机a还可以显示app7中该商品1的显示界面且手机a向手机b继续发送社交应用中用户与联系人爸爸的聊天
界面对应的图像信息,从而使得手机b继续显示社交应用中用户与联系人爸爸的聊天界面。
292.一个实施例中,响应于检测到用户点击消息提示框2001的操作,手机a可以显示社交应用中用户与联系人爸爸的聊天界面,且手机a可以向手机b发送app7中该商品1的显示界面对应的图像信息,从而使得手机b显示该商品1的显示界面。
293.本技术实施例中,当手机a和手机b处于平行模式下时,手机a如果接收到一条消息且手机a检测到用户对消息提示框的输入,那么手机a可以确定手机a和手机b从通过平行模式进行拼接显示切换至通过双应用模式进行拼接显示,这样无需用户退出当前的应用程序就可以在手机a和手机b上查看2个应用程序,有助于提升用户的体验。
294.图21示出了本技术实施例中的另一组gui。
295.如图21中的(a)所示,手机a显示app4中内容1的显示界面,该内容1的显示界面上包括链接2101,其中链接2101关联一个弹窗,该弹窗用于提示用户在app5中查看内容1。手机b显示手机b的桌面。当手机a检测到用户点击该链接2101的操作时,手机a可以显示如图21中的(b)所示的gui。
296.如图21中的(b)所示,响应于用户点击链接2101的操作,手机a可以显示弹窗2102,其中弹窗2102中包括提示信息“是否打开app5来查看内容1”、取消控件2103以及确定控件2104。当手机a检测到用户点击控件2104的操作时,手机a和手机b显示显示如图21中的(c)所示的gui。
297.如图21中的(c)所示,响应于检测到用户点击控件2104的操作,手机a可以继续显示app4中内容1的显示界面,且手机a可以向手机b发送app5中内容1的显示界面对应的图像信息。手机b响应于接收到该图像信息,可以显示app5中内容1的显示界面。
298.图22示出了本技术实施例中的另一组gui。
299.如图22中的(a)所示,手机a显示app6的显示界面,手机b显示手机b的桌面。当手机a检测到用户从屏幕右侧向左侧滑动的操作时,手机a可以显示如图22中的(b)所示的gui。
300.如图22中的(b)所示,响应于检测到用户从屏幕右侧向左侧滑动的操作,手机a可以显示应用程序的列表2201,其中,该应用程序的列表2201中可以包括app1、app2、app3和app4。
301.一个实施例中,该app1、app2、app3和app4可以是手机a在启动app6之前启动的几个应用程序,或者,该app1、app2、app3和app4也可以是预设时间内用户使用频率最高的几个应用程序。
302.当手机a检测到用户点击app3的图标的操作时,手机a可以继续显示app6的显示界面且手机a可以向手机b发送该app3的显示界面对应的图像信息。
303.一个实施例中,如图22中的(c)所示,当手机a检测到用户将app3的图标从列表2201中拖动至列表2201外的操作时,手机a可以继续显示app6的显示界面且手机a可以向手机b发送该app3的显示界面对应的图像信息。
304.如图22中的(d)所示,响应于接收到图像信息,手机b可以显示该app3的显示界面。
305.一个实施例中,响应于检测到用户点击app3的图标的操作,或者,检测到用户将app3的图标从列表2201中拖动至列表2201外的操作,手机a也可以显示app3的显示界面且手机a可以向手机b发送app6的显示界面对应的图像信息,从而使得手机b显示app6的显示界面。
306.一个实施例中,如图22中的(c)所示,当手机a检测到用户将app3的图标从左侧向右侧拖动的操作时,手机a可以继续显示app6的显示界面且手机a可以向手机b发送app3的显示界面对应的图像信息,从而使得手机b显示app3的显示界面;当手机a检测到用户将app3的图标从右侧向左侧拖动的操作时,手机a可以显示app3的显示界面且手机a可以向手机b发送app6的显示界面对应的图像信息,从而使得手机b显示app6的显示界面。
307.一个实施例中,如图22中的(b)所示,当手机a检测到用户点击app3的图标的操作时,手机a可以在显示app6的显示界面的同时显示一个悬浮窗口,该悬浮窗口中可以显示app3的显示界面。当手机b检测到用户从屏幕左侧向右侧滑动的操作时,手机b可以向手机a发送指示信息,该指示信息用于指示手机a和手机b拼接显示。响应于接收到该指示信息,手机a可以显示app6的显示界面且手机a可以向手机b发送app3的显示界面对应的图像信息,从而使得手机b显示app3的显示界面。
308.一个实施例中,如图22中的(c)所示,当手机a检测到用户将app3向左下方拖动的操作时,手机a可以通过上下分屏显示app6的显示界面和app3的显示界面。当手机b检测到用户从屏幕左侧向右侧滑动的操作时,手机b可以向手机a发送指示信息,该指示信息用于指示手机a和手机b拼接显示。响应于接收到该指示信息,手机a可以显示app6的显示界面且手机a可以向手机b发送app3的显示界面对应的图像信息,从而使得手机b显示app3的显示界面。
309.本技术实施例中,手机a在检测到用户显示app6的显示界面的同时通过悬浮窗显示app3的显示界面的操作时,或者,手机a在检测到用户将app6和app3的分屏显示(例如,上下分屏)的操作时,手机a可以确定和手机b通过双应用模式分别显示app6和app3的显示界面。这样避免了通过悬浮窗显示时对之前显示的应用程序的遮挡,也避免了分屏显示时应用程序只能显示部分显示界面,通过多设备分别显示不同的应用程序,有助于提升用户的使用体验。
310.以上结合图3至图22所示的gui介绍了本技术实施例提供的几组gui,下面将结合附图介绍本技术实施例中source端设备和sink端设备的交互过程。
311.图23示出了本技术实施例提供的source端设备和sink端设备实现全屏模式的的示意性结构图。其中,source端设备可以为图3中所示的手机a,sink端设备可以为图3中所示的手机b;或者,source端设备可以为图10中所示的手机b,sink端设备可以为图10所示的手机a。
312.source端设备中包括应用程序(app)层、应用程序框架(framework)层、本地(native)层以及服务(server)层。其中,app层可以包括多个应用程序;framework层包括层级(layer)管理和输入(input)子系统,layer管理用于管理应用程序界面所对应的层级信息,input子系统用于处理用户输入事件或者反向输入事件。native层包括layer合成模块以及layer裁剪模块,layer合成模块用于根据层级信息合成图像,layer裁剪模块用于根据层级信息对画布进行裁剪。server层包括音视频流抓取模块、虚拟屏管理模块以及网络模块,音视频流抓取模用于抓取音频流或者视频流,虚拟屏管理模块用于管理虚拟屏(display)的创建和释放,网络模块用于传输音频流或者视频流到sink端设备以及接收sink端设备发送的反向输入事件。
313.应理解,图23中source端设备的本地层和服务层中的模块所实现的功能可以是依
赖于图2中系统库和内核层的模块或者驱动硬件。示例性的,本地层中的层级合成模块和层级裁剪模块可以是依赖于图2系统库中的媒体库、三维图形处理库和图像处理库等,服务层的音视频流抓取模块和虚拟屏管理模块可以是依赖于图2内核层中的显示驱动、音频驱动以及系统库中的三维图形处理库和图像处理库等。
314.sink端设备包括应用程序(app)层、应用程序框架(framework)层、本地(native)层以及服务(server)层。其中,framework层包括声音系统、输入系统以及显示系统。声音系统用于音频解码后播放声音,显示系统用于视频解码后显示界面,输入系统用于接收用户的触控操作。native层包括视频渲染模块、音视频解码模块以及反向输入事件抓取模块,音视频解码模块用于对从source端接收到的音频流或者视频流进行解码,视频渲染模块用于对解码后的视频流进行渲染并送显,反向输入事件抓取模块用于抓取用户反向输入事件。server层包括网络模块,网络模块用于接收source端设备发送的音频流或者视频流以及向source端设备发送的反向输入事件。
315.应理解,图23中sink端设备的本地层中的模块所实现的功能可以是依赖与图2中系统库和内核层的模块或者驱动硬件。示例性的,视频渲染模块可以是依赖于图2系统库中的三维图形处理库、图像处理库以及内核层中的显示驱动。音视频解码模块可以是依赖于图2系统库中的三维图形处理库、图像处理库等。反向输入事件抓取模块可以是依赖于图2中硬件层的触摸屏(touch panel,tp)驱动等。
316.图24示出了source端设备和sink端设备通过全屏模式显示的方法2400的示意性流程图。该方法2400包括:
317.s2401,source端设备与sink端设备1建立无线连接。
318.示例性的,如图3中的(a)所示,当手机a检测到手机a和手机b之间的距离小于或者等于预设距离时,手机a和手机b可以通过近场无线连接方式组网,从而手机a和手机b建立无线连接。例如,手机a和手机b可以进行ap组网,或者,手机a和手机b可以进行p2p组网。
319.s2402,当sink端设备1检测到用户的第一操作后,sink端设备1向source端设备指示进入全屏模式。
320.示例性的,如图3中的(a)所示,手机a为source端设备,手机b为sink端设备1。当手机b检测到用户向右滑动的操作时,手机b可以向手机a发送指示信息,该指示信息用于指示手机b希望进入全屏模式。
321.示例性的,如图11中的(b)所示,手机a为source端设备,手机b为sink端设备1。当手机b检测到用户拖动控件1102与全屏模式的图标部分重合或者全部重合后,手机b可以向手机a发送指示信息,该指示信息用于指示手机b希望进入全屏模式。
322.示例性的,如图10中的(a)所示,手机b为source端设备,手机a为sink端设备1。当手机a检测到用户向左滑动的操作时,手机a可以向手机b发送指示信息,该指示信息用于指示手机a希望进入全屏模式。
323.示例性的,如图12中的(b)所示,手机b为source端设备,手机a为sink端设备1。当手机a检测到用户拖动控件1201与全屏模式的图标部分重合或者全部重合后,手机a可以向手机b发送指示信息,该指示信息用于指示手机a希望进入全屏模式。
324.本技术实施例中,当sink端设备1检测到用户向右滑动的操作或者sink端设备1检测到控件向右拖动与某个模式的图标部分重合或者完全重合时,sink端设备可以确定其左
侧的设备为source端设备;当sink端设备1检测到用户向左滑动的操作或者sink端设备1检测到控件向左拖动与某个模式的图标部分重合或者完全重合时,sink端设备可以确定其右侧的设备为source端设备。
325.应理解,本技术实施例中,source端设备可以通过蓝牙、超宽带(ultra-wideband,uwb)、超声波等定位技术确定source端设备和sink端设备1之间的距离以及source端设备和sink端设备1之间的方位信息,具体的实现过程可以参考现有技术,为了简洁,在此不再赘述。
326.示例性的,source端设备具备蓝牙/wi-fi天线阵列(或者,source端设备具备到达角度(angle of arrival,aoa)计算能力),sink端设备1具备蓝牙/wi-fi天线阵列(或者,sink端设备1具备aoa计算能力)。source端设备可以对sink端设备1的方位进行计算,source端设备的蓝牙/wi-fi天线阵列可以接收sink端设备1的无线信号,根据公式(1)和(2)计算出sink端设备1的方位:
[0327][0328][0329]
其中,d为source端设备的蓝牙/wi-fi天线阵列和sink端设备1的蓝牙/wi-fi天线之间的距离,为source端设备的蓝牙/wi-fi天线阵列和sink端设备1的蓝牙/wi-fi天线之间的相位差,λ为sink端设备1发送的蓝牙信号的波长,θ为到达角。应理解,本技术实施例中,source端设备对sink端设备1的方位进行计算,还可以理解为source端设备可以对source端设备的蓝牙/wi-fi天线阵列与sink端设备1的蓝牙/wi-fi天线连线的方位进行计算。
[0330]
应理解,sink端设备1同样可以使用上述公式(1)和(2)计算出source端设备的方位。
[0331]
一个实施例中,sink端设备1在检测到用户的第一操作时,sink端设备1可以向source端设备发送用户数据报协议(user datagram protocol,udp)数据包,该udp数据包中可以携带该指示信息,该指示信息用于指示sink端设备1希望进入全屏模式。upd数据包中包括ip数据报的数据部分。ip数据报的数据部分可以包括可扩展的比特位。sink端设备1和source端设备可以约定某个可扩展比特位的内容。当某个可扩展的比特位为1时,source端设备就可以获知sink端设备1希望进入全屏模式。
[0332]
一个实施例中,sink端设备1在检测到用户的第一操作时,sink端设备1可以向source端设备发送传输控制协议(transmission control protocol,tcp)报文,该tcp报文中可以携带该指示信息,该指示信息用于指示sink端设备1希望进入全屏模式。tcp报文中包括tcp首部和tcp数据部分,其中tcp首部包括保留字段。sink端设备1和source端设备可以约定某个保留字段的内容。当某个保留字段的比特位为1时,source端设备就可以获知sink端设备1希望进入全屏模式。
[0333]
s2403,响应于接收到sink端设备1的指示,source端设备将当前界面上画布扩大一倍。
[0334]
示例性的,source端设备原来显示的画布大小为1080x2340。当source端设备接收到sink端设备1的指示信息后,source端设备可以确定sink端设备1希望和source端设备组
成双屏幕拼接,则source端设备扩大主设备显示画布大小为(1080x2)x 2340,即2160x2340。
[0335]
应理解,本技术实施例中,source端设备接收到sink端设备1的指示信息后,如果source端设备和sink端设备1是横向分布(或者,左右分布)的,那么source端设备可以扩大主设备显示画布大小为2160x2340。若source端设备确定source端设备和sink端设备1为纵向分布(或者,上下分布)的,那么source端设备也可以扩大主设备显示画布大小为1080x(2340x2),即1080x4680。下面以source端设备和sink端设备1(以及sink端设备2)为横向分布为例进行说明。
[0336]
s2404,source端设备将扩大一倍后的画布进行裁剪,裁剪后的一部分显示在source端设备上,另一部分放入source端设备创建的虚拟屏(display1)中。
[0337]
本技术实施例中,source端设备对扩大后画布进行裁剪的方式可以包括但不限于分割方式和遮罩方式。
[0338]
图25示出了source端设备通过分割方式进行裁剪并将裁剪后的画布显示在虚拟屏上的过程。每个display显示画面对应的layer信息由android组件surfaceflinger管理。由于display中没有启动应用,所以display是没有layer信息的。surfaceflinger每次合成画面时,会依次合成每个display。例如,surfaceflinger合成display0时,将layer裁剪,其中裁剪区域1为[0,0,1080,2340]。source端设备可以将裁剪区域1所示的画布放入display0中,这样source端设备可以显示display0;surfaceflinger合成display1时,从display0拷贝所有layer信息,再进行裁剪,其中裁剪区域2为[1080,0,2160,2340],并将裁剪后的区域2向左平移1080后放入display1。source端设备可以将display1投屏到sink端设备1上。
[0339]
图26示出了source端设备通过遮罩方式进行裁剪并将裁剪后的画布显示在虚拟屏上的过程。source端设备首先通过source端设备与sink端设备1之间的距离来确定需要裁剪的区域(例如,图4中的(b)所示的区域402)。应理解,source端设备确定需要裁剪的区域的像素值的过程可以参考上述实施例中的描述,为了简洁,在此不再赘述。假设source端确定的需要裁剪的像素值为x。
[0340]
例如,surfaceflinger合成display0时,将layer裁剪,其中裁剪区域3为[0,0,1080,2340]。source端设备可以将裁剪区域3所示的画布放入display0中,这样source端设备可以显示display0;surfaceflinger合成display1时,从display0拷贝所有layer信息,再进行裁剪,其中裁剪区域4为[1080 x,0,2160,2340],并将裁剪后的区域向左平移1080 x后放入display1中。source端设备可以将display1投屏到sink端设备1上。
[0341]
s2405,source端设备将display1投屏到sink端设备1。
[0342]
一个实施例中,若sink端设备1的屏幕分辨率为1080x2340,那么当sink端设备1接收到source端设备发送的裁剪区域4对应的画布信息后,可以将该画布居中显示且在屏幕两边各留尺寸为x/2的黑边。
[0343]
一个实施例中,当sink端设备1接收到source端设备发送的裁剪区域4对应的画布信息后,也可以将该画布显示在屏幕左侧且在屏幕右侧留尺寸为x的黑边。
[0344]
一个实施例中,当sink端设备1接收到source端设备发送的裁剪区域4对应的画布信息后,也可以将该画布显示在屏幕右侧且在屏幕左侧留尺寸为x的黑边。
[0345]
一个实施例中,sink端设备1可以在指示source端设备希望加入全屏模式时,还可以向source端设备发送其屏幕分辨率的信息。source端设备在获知sink端设备1的屏幕分辨率以及source端设备与sink端设备1之间的距离后,可以先将画布尺寸扩大到2160x2340。source端设备可以根据需要裁剪的像素值(例如,x),对扩大后的画布进行横向拉伸并拉伸到(2160 x)x2340。这样,裁剪区域3可以为[0,0,1080,2340],而裁剪区域4的尺寸为[1080 x,0,2160 x,2340]。source端设备可以将裁剪后的区域4向左平移1080 x后放入display1中。source端设备可以将display1投屏到sink端设备1上。sink端设备1在显示时就无需在屏幕上留黑边。
[0346]
应理解,source端设备将display1投屏到sink端设备1的过程可以参考现有的投屏技术,为了简洁,在此不再赘述。
[0347]
一个实施例中,s2402中可以是sink端设备1来触发source端设备和sink端设备进入全屏模式,本技术实施例中也可以是通过source端设备来触发source端设备和sink端设备1进入全屏模式。示例性的,当source端设备检测到用户在屏幕的左侧向右侧滑动的操作时,source端设备可以向sink端设备1发送分割后的一部分图像信息以及指示信息,该指示信息用于指示source端设备和sink端设备1进入全屏模式。sink端设备1响应于接收到分割后的一部分图像信息以及指示信息,通过sink端设备1显示该图像信息。
[0348]
s2406,source端设备与sink端设备2建立无线连接。
[0349]
示例性的,如图3中的(a)所示,当手机c靠近手机b时,手机b可以通过rssi测距的方式确定手机c和手机b之间的距离小于或者等于预设距离时,手机a、手机b和手机c可以通过近场无线连接方式组网,从而手机a、手机b和手机b建立无线连接。例如,手机a、手机b和手机c可以进行ap组网,或者,手机a、手机b和手机c可以进行p2p组网。
[0350]
s2407,当sink端设备2检测到用户的第二操作后,sink端设备2向source端设备指示进入全屏模式。
[0351]
示例性的,如图3中的(d)所示,手机a为source端设备,手机b为sink端设备1,手机c为sink端设备2。当手机c检测到用户向右滑动的操作时,手机c可以向手机a发送指示信息,该指示信息用于指示手机c希望进入全屏模式。
[0352]
应理解,sink端设备2向source端设备发送指示信息(指示信息用于指示sink端设备2希望进入全屏模式)的过程可以参考上述s2402的描述,此处不再赘述。
[0353]
本技术实施例中,当sink端设备2检测到用户向右滑动的操作或者sink端设备2检测到控件向右拖动与某个模式的图标部分重合或者完全重合时,sink端设备可以确定其左侧的设备为source端设备。若sink端设备2检测到其左侧包括多个设备,那么sink端设备2可以将其最左侧的设备作为source端设备。
[0354]
当sink端设备2检测到用户向左滑动的操作或者sink端设备2检测到用户将控件向左拖动与某个模式的图标部分重合或者完全重合时,sink端设备2可以确定其右侧的设备为source端设备。若sink端设备2检测到其右侧包括多个设备,那么sink端设备2可以将其最右侧的设备作为source端设备。
[0355]
一个实施例中,sink端设备2还可以向source端设备发送sink端设备1和sink端设备2之间的距离信息。
[0356]
示例性的,sink端设备2可以向source端设备发送udp数据包,该udp数据包中可以
携带sink端设备1和sink端设备2之间的距离信息。upd数据包中包括ip数据报的数据部分。ip数据报的数据部分可以包括可扩展的比特位。sink端设备2和source端设备可以约定某个可扩展比特位的内容。例如,当某个可扩展的比特位为000时,source端设备就可以获知sink端设备1和sink端设备2之间的距离为1厘米;当某个可扩展的比特位为001时,source端设备就可以获知sink端设备1和sink端设备2之间的距离为2厘米;当某个可扩展的比特位为011时,source端设备就可以获知sink端设备1和sink端设备2之间的距离为3厘米。
[0357]
s2408,响应于接收到sink端设备2的指示,source端设备将当前界面上画布扩大两倍。
[0358]
示例性的,source端设备原来显示的画布大小为1080x2340。当source端设备接收到sink端设备2的指示信息后,source端设备可以确定sink端设备1、sink端设备2希望和source端设备组成三个屏幕拼接,则source端设备扩大主设备显示画布大小为(1080x3)x2340,即3240x2340。
[0359]
s2409,source端设备将扩大两倍后的画布进行裁剪,裁剪后的第一部分显示在source端设备上,第二部分放入source端设备创建的虚拟屏(display1)中,第三部分放入source端设备创建的另一虚拟屏(display2)中。
[0360]
对于分割方式,如图27所示,surfaceflinger合成display0时,将layer裁剪,其中裁剪区域1为[0,0,1080,2340],source端设备可以将裁剪区域1所示的画布放入display0,这样source端设备可以显示display0中的画布。
[0361]
surfaceflinger合成display1时,从display0拷贝所有layer信息,再进行裁剪,其中裁剪区域2为[1080,0,2160,2340]。source端设备可以将裁剪区域2向左平移1080后放入display1。source端设备可以将display1中的画布投屏到sink端设备1上。
[0362]
surfaceflinger合成display2时,从display0拷贝所有layer信息,再进行裁剪,其中裁剪区域3为[2160,0,3240,2340]。source端设备可以将裁剪区域3向左平移2160后放入display2。source端设备可以将display2中的画布投屏到sink端设备2上。
[0363]
对于遮罩方式,如图28所示,source端设备首先通过source端设备与sink端设备1之间的距离以及sink端设备1和sink端设备2之间的距离来确定需要裁剪的2个区域(例如,图4中的(d)所示的区域405和区域407)。应理解,source端设备确定需要裁剪的区域的像素值的过程可以参考上述实施例中的描述,为了简洁,在此不再赘述。假设source端确定的需要裁剪的像素值为x和y。
[0364]
surfaceflinger合成display0时,将layer裁剪,其中裁剪区域4为为[0,0,1080,2340],source端设备可以将裁剪区域4所示的画布放入display0,这样source端设备可以显示display0中的画布。
[0365]
surfaceflinger合成display1时,从display0拷贝所有layer信息,再进行裁剪,其中裁剪区域5为[1080 x,0,2160 x,2340]。source端设备可以将裁剪区域5向左平移1080 x后放入display1。source端设备可以将display1中的画布投屏到sink端设备1上。
[0366]
surfaceflinger合成display2时,从display0拷贝所有layer信息,再进行裁剪,其中裁剪区域6为[2160 x y,0,3240,2340]。source端设备可以将裁剪区域6向左平移2160 x y后放入display2。source端设备可以将display2中的画布投屏到sink端设备2上。
[0367]
应理解,图28仅仅是遮罩方式中对扩大后的画布进行裁剪的一种方式,本技术实
施例中并不限于此。示例性的,裁剪区域5还可以为[1080 x,0,2160,2340]。source端设备可以将裁剪区域5向左平移1080 x后放入display1。source端设备可以将display1中的画布投屏到sink端设备1上。
[0368]
裁剪区域6还可以为[2160 y,0,3240,2340]。source端设备可以将裁剪区域6向左平移2160 y后放入display2。source端设备可以将display2中的画布投屏到sink端设备2上。
[0369]
s2410,source端设备将display1投屏到sink端设备1,将display2投屏到sink端设备2。
[0370]
应理解,source端设备将display1投屏到sink端设备1,以及将display2投屏到sink端设备2的过程,可以参考上述s2405的过程,此处不再赘述。
[0371]
应理解,ource端设备将display1投屏到sink端设备1,将display2投屏到sink端设备2的过程可以参考现有的投屏技术,为了简洁,在此不再赘述。
[0372]
s2411,sink端设备2检测到用户将sink端设备2退出全屏模式的操作。
[0373]
示例性的,如图5中的(a)所示,该操作可以为手机c检测到用户点击退出控件的操作。
[0374]
s2412,响应于检测到该操作,sink端设备2向source端设备发送指示信息,该指示信息用于指示sink端设备2退出全屏模式。
[0375]
一个实施例中,如图5中的(a)所示,该退出控件可以是source端设备绘制并添加在扩大后的画布上的,sink端设备2在检测到该操作时,可以获取用户的触控事件以及对应的坐标点。sink端设备2可以将该触控事件以及转化后的坐标点发送给source端设备。
[0376]
例如,若source端设备、sink端设备1和sink端设备2是通过分割方式进行全屏显示,那么当sink端设备2检测到用户在屏幕(100,100)位置进行了点击操作,则sink端设备确定事件为触控事件,坐标点转化为(100 2160,100),即(2260,100)。从而sink端设备2可以将触控事件以及转化后的坐标点发送给source端设备。source端设备在接收到该触控事件以及转化后的坐标点后,可以确定用户在sink端设备2上点击了退出控件,从而进行s2413。
[0377]
一个实施例中,若source端设备、sink端设备1和sink端设备2是通过遮罩方式进行全屏显示,source端设备确定的裁剪区域6为[2160 x y,0,3240,2340]。那么sink端设备2检测到用户在屏幕(100,100)位置进行了点击操作,则sink端设备确定事件为触控事件,坐标点转化为(100 2160 x y,100),即(2260 x y,100)。
[0378]
示例性的,sink端设备2在检测到该操作时,可以向source端设备发送udp数据包,该udp数据包中可以携带该转化后的坐标点的信息,该指示信息用于指示sink端设备2退出全屏模式。upd数据包中包括ip数据报的数据部分。ip数据报的数据部分可以包括可扩展的比特位。sink端设备2和source端设备可以约定某个可扩展比特位的内容。例如,当某个可扩展比特位为1时,表示该触控事件为点击事件。又例如,sink端设备2可以使用gbk、iso8859-1或者unicode(例如,utf-8、utf-16)等编码方式对转化后的坐标点信息进行编码。source端设备可以通过可扩展比特位上的信息获知sink端设备2检测到的该触控事件以及转化后的坐标点的信息。从而source端设备可以确定sink端设备2检测到用户将sink端设备2退出全屏模式的操作。
[0379]
一个实施例中,如图5中的(a)所示,该退出控件也可以是sink端设备2绘制的,当sink端设备2检测到用户点击退出控件时,sink端设备2可以向source端设备发送指示信息,该指示信息用于指示sink端设备2退出全屏模式。
[0380]
示例性的,sink端设备2在检测到该操作时,可以向source端设备发送udp数据包,该udp数据包中可以携带该指示信息,该指示信息用于指示sink端设备2退出全屏模式。upd数据包中包括ip数据报的数据部分。ip数据报的数据部分可以包括可扩展的比特位。sink端设备2和source端设备可以约定某个可扩展比特位的内容。当某个可扩展的比特位为1时,source端设备就可以获知sink端设备2退出全屏模式。
[0381]
s2413,响应于接收到该指示信息,source端设备调整画布尺寸,和sink端设备1重新进行拼接。
[0382]
应理解,source端设备在接收到该指示信息后,可以进行上述s2403-s2405的操作,为了简洁,在此不再赘述。
[0383]
s2414,sink端设备1检测到用户将sink端设备1退出全屏模式的操作。
[0384]
示例性的,如图5中的(b)所示,该操作可以为手机b检测到用户点击退出控件的操作。
[0385]
s2415,响应于检测到该操作,sink端设备1向source端设备发送指示信息,该指示信息用于指示sink端设备1退出全屏模式。
[0386]
一个实施例中,如图5中的(a)所示,该退出控件可以是source端设备绘制并添加在扩大后的画布上的,sink端设备1在检测到该操作时,可以获取用户的触控事件以及对应的坐标点。sink端设备1可以将该触控事件以及转化后的坐标点发送给source端。source端设备可以根据该触控事件以及转化后的坐标点确定sink端设备1检测到用户点击了退出控件。
[0387]
例如,若source端设备、sink端设备1和sink端设备2是通过分割方式进行全屏显示,那么当sink端设备1检测到用户在屏幕(100,100)位置进行了点击操作,则sink端设备确定触控事件为用户的点击事件,坐标点转化为(100 1080,100),即(1180,100)。从而sink端设备1可以将触控事件以及转化后的坐标点发送给source端设备。source端设备在接收到该触控事件以及转化后的坐标点后,可以确定用户在sink端设备1上点击了退出控件,从而进行s2416。
[0388]
一个实施例中,若source端设备、sink端设备1和sink端设备2是通过遮罩方式进行全屏显示,source端设备确定的裁剪区域5为[1080 x,0,2160 x,2340]。那么sink端设备2检测到用户在屏幕(100,100)位置进行了点击操作,则sink端设备确定事件为触控事件,坐标点转化为(100 1080 x,100),即(1180 x,100)。
[0389]
应理解,sink端设备1向source端设备发送指示信息的过程可以参考上述s1612的描述,此处不再赘述。
[0390]
s2416,响应于接收到该指示信息,source端设备不对画布进行扩大,恢复source端设备单设备显示。
[0391]
本技术实施例中,多设备之间可以通过无线组网,通过预设手势触发多设备的屏幕进行拼接,从而在多设备上实现全屏模式,有助于提升用户的体验。
[0392]
图29示出了source端设备和sink端设备通过分页模式显示的方法2900的示意性
流程图。该方法2900包括:
[0393]
s2901,source端设备和sink端设备建立无线连接。
[0394]
应理解,s2901可以参考上述s2401的过程,为了简洁,在此不再赘述。
[0395]
s2902,当sink端设备检测到用户的第三操作后,sink端设备向source端设备指示进入分页模式。
[0396]
示例性的,如图8中的(a)所示,手机b上显示的分页模式的图标可以是手机a绘制的。手机a可以在将裁剪后的画布放入display1后,在裁剪后的画布上添加平行模式的图标、双应用模式的图标、分页模式的图标以及退出控件。
[0397]
一个实施例中手机b在检测到点击分页模式的操作时,可以获取用户的触控事件以及对应的坐标点。手机b可以将该触控事件以及转化后的坐标点发送给手机a。手机a可以根据该触控事件以及转化后的坐标点,从全屏模式切换至分页模式。
[0398]
示例性的,手机b检测到用户在屏幕(100,100)位置进行了点击操作,则手机b确定事件为触控事件,坐标点转化为(100 1080,100),即(1180,100)。从而手机b可以将触控事件以及转化后的坐标点发送给手机a。手机a在接收到该触控事件以及转化后的坐标点后,可以确定用户在手机b上点击了分页模式,从而进行s2903。
[0399]
一个实施例中,手机b也可以向手机a发送用户在手机b的屏幕上检测到点击操作的坐标点(例如,(100,100))信息。手机a在接收到手机b发送的坐标信息后,可以由手机a将该坐标点转化到扩大1倍后的画布上的坐标点(例如,(1180,100))。从而手机a可以确定用户在手机b上点击了分页模式的图标。
[0400]
应理解,sink端设备向source端设备发送该触控事件以及转化后的坐标点的过程可以参考上述实施例中的描述,为了简洁,在此不再赘述。
[0401]
一个实施例中,手机b上显示的分页模式的图标可以是手机b绘制的。手机b在接收到手机a发送的display1的画布后,可以在该画布上添加平行模式的图标、双应用模式的图标、分页模式的图标以及退出控件。当手机b检测到用户点击分页模式的图标的操作时,手机b向手机a发送指示信息,该指示信息用于指示手机b希望进入分页模式。
[0402]
示例性的,当手机b检测到用户点击分页模式的图标的操作时,手机b可以向手机a发送udp数据包,该udp数据包中可以携带该指示信息,该指示信息用于指示手机b希望进入分页模式。upd数据包中包括ip数据报的数据部分。ip数据报的数据部分可以包括可扩展的比特位。手机b和手机a可以约定某个可扩展比特位的内容。当某个可扩展的比特位为1时,手机a就可以获知手机b希望加入分页模式。
[0403]
一个实施例中,如图11中的(b)所示,当手机b检测到用户将控件1102拖动至与分页模式对应的控件部分重合或者全部重合后,手机b向手机a发送指示信息,该指示信息用于指示手机b希望进入分页模式。
[0404]
一个实施例中,当手机b检测到用户将控件1102拖动至与分页模式对应的控件部分重合或者全部重合后,手机b可以向手机a发送udp数据包,该udp数据包中可以携带该指示信息,该指示信息用于指示手机b希望进入分页模式。upd数据包中包括ip数据报的数据部分。ip数据报的数据部分可以包括可扩展的比特位。手机a和手机b可以约定某个可扩展比特位的内容。当某个可扩展的比特位为1时,手机a就可以获知手机b希望进入分页模式。
[0405]
s2903,响应于接收到sink端设备的指示,source端设备和sink端设备通过分页模
式进行拼接显示。
[0406]
图30示出了source端的桌面通过分页模式显示的示意图。当source端设备接收到sink端设备的指示后,source端设备将显示画布的尺寸扩大一倍,同时source端调整桌面布局。示例性的,以source端设备的系统为android系统为例,通过source端设备的app通过覆写protected void onsizechanged(int w,int h,int oldw,int oldh)方法,将第一页的图标(icon)显示在区域3001中,将第二页的图标显示在区域3002中。
[0407]
本技术实施例中,分页模式不同于镜像一个桌面,也不同于两个独立桌面,分页模式中第一页显示第一个桌面页面,而第二页是第一个桌面页面的自然扩展,第二页可以不包括最下方的功能栏。分页模式下每页都支持点击、滑动、手势操作,比如每页都可以滑动,且双页之间滑动是联动的。
[0408]
以source端设备的系统为android系统为例,source端设备的app监听到画布尺寸的变化后,通过调用表1所示的接口getsplicingmodetype()判断当前处于什么模式下。例如当返回值为2时可以确定当前处于分页模式,则切换到分页模式。
[0409]
示例性的,表1示出了包名、接口原型和返回值的对应关系。
[0410]
表1
[0411][0412]
当app确定当前处于分页模式时,app通过覆写protected void onsizechanged(int w,int h,int oldw,int oldh)方法,将第一页的图标(icon)显示在区域3001中,将第二页的图标显示在区域3002中。source端设备可以将裁剪得到的区域3002中的画布向左平移1080后放入display1中,从而将display1投屏到sink端设备上。
[0413]
s2904,source端设备将扩大一倍后的画布裁剪一半显示,并创建虚拟屏(display1),将裁剪得到的另一半放在display1中。
[0414]
s2905,source端设备将display1投屏到sink端设备上。
[0415]
参见图8中的(b)所示,source端设备(手机a)可以显示第一个桌面页面的图标,sink端设备(手机b)可以显示第二个桌面页面的图标。
[0416]
s2906,source端设备检测到用户启动app的操作,在扩大一倍后的画布上加载第2页内容。
[0417]
s2907,source端设备将扩大一倍后的画布裁剪一半显示,将另一半显示在display1上。
[0418]
示例性的,如图8中的(c)所示,手机a可以在扩大一倍后的画布上显示app5中第一页和第二页(pdf1/8和pdf2/8)的画布。手机a可以裁剪第一页(pdf1/8)的内容并通过显示屏显示,并将裁剪得到的第二页(pdf2/8)的画布向左平移1080后放入dispaly1中。手机a可
以将display1投屏到手机b上。
[0419]
应理解,s2906-s2907的具体实现过程可以参考上述s2903-s2904的过程,为了简洁,在此不再赘述。
[0420]
s2908,source端设备将display1投屏到sink端设备上。
[0421]
示例性的,sink端设备(手机b)可以显示第二页(pdf2/8)的内容。
[0422]
本技术实施例提供了一种进入分页模式的方式,应用程序可以在此模式下调整布局,有助于提升多设备拼接时更好的用户体验。
[0423]
图31示出了source端设备和sink端设备通过平行模式显示的方法3100的示意性流程图。该方法3100包括:
[0424]
s3101,source端设备和sink端设备建立无线连接。
[0425]
应理解,s3101可以参考上述s2401的过程,为了简洁,在此不再赘述。
[0426]
s3102,当sink端设备检测到用户的第四操作后,sink端设备向source端设备指示进入平行模式。
[0427]
示例性的,如图9中的(a)所示,手机b上显示的平行模式的图标可以是手机a绘制的。手机a可以在将裁剪后的画布放入display1后,在裁剪后的画布上添加平行模式的图标、双应用模式的图标、分页模式的图标以及退出控件。
[0428]
一个实施例中,手机b在检测到点击分页模式的操作时,可以获取用户的触控事件以及对应的坐标点信息。手机b可以将该触控事件以及坐标点信息发送给手机a。手机a可以根据该触控事件以及坐标点信息,从全屏模式切换至平行模式。
[0429]
示例性的,手机b检测到用户在屏幕(100,100)位置进行了点击操作,则手机b可以确定事件为触控事件,坐标点转化为(100 1080,100),即(1180,100)。从而手机b可以将触控事件以及转化后的坐标点发送给手机a。手机a在接收到该触控事件以及转化后的坐标点后,可以确定用户在手机b上点击了平行模式,从而进行s3103。
[0430]
一个实施例中,手机b也可以向手机a发送用户在手机b的屏幕上检测到点击操作的坐标点(例如,(100,100))信息。手机a在接收到手机b发送的坐标信息后,可以由手机a将该坐标点转化到扩大1倍后的画布上的坐标点(例如,(1180,100))。从而手机a可以确定用户在手机b上点击了分页模式的图标。
[0431]
应理解,手机b向手机a发送触控事件以及转化后的坐标点信息的过程可以参考上述实施例中的描述,为了简洁,在此不再赘述。
[0432]
一个实施例中,手机b上显示的分页模式的图标可以是手机b绘制的。手机b在接收到手机a发送的display1的画布后,可以在该画布上添加平行模式的图标、双应用模式的图标、分页模式的图标以及退出控件。当手机b检测到用户点击平行模式的图标的操作时,手机b向手机a发送指示信息,该指示信息用于指示手机b希望进入平行模式。
[0433]
示例性的,当手机b检测到用户点击平行模式的图标的操作时,手机b可以向手机a发送udp数据包,该udp数据包中可以携带该指示信息,该指示信息用于指示手机b希望进入平行模式。upd数据包中包括ip数据报的数据部分。ip数据报的数据部分可以包括可扩展的比特位。手机b和手机a可以约定某个可扩展比特位的内容。当某个可扩展的比特位为1时,手机a就可以获知手机b希望进入平行模式。
[0434]
示例性的,如图11中的(b)所示,当手机b检测到用户将控件1102拖动至与平行模
式对应的控件部分重合或者全部重合后,手机b可以向手机a发送指示信息,该指示信息用于指示手机b希望进入平行模式。
[0435]
s3103,响应于接收到sink端设备的指示,source端设备将显示画布的尺寸扩大一倍。
[0436]
s3104,检测到用户启动了app,source端的在扩大一倍的画布的半边显示app的首页。
[0437]
示例性的,如图9中的(c)所示,手机a可以在扩大一倍的画布的左半边显示app6的首页,手机a可以将左半边裁剪后放入display0,从而手机a显示display0所示的画布。此时由于手机a还没有检测到用户点击某个活动页面的操作,对于右半边显示的内容并不限定。手机a可以在扩大一倍的画布的右半边显示手机a的桌面。手机a可以将右半边裁剪后放入display1,从而手机a将display1投屏到手机b上。或者,手机a可以不向手机b进行投屏,手机b显示手机b的桌面。
[0438]
s3105,检测到用户在app的首页点击了某个活动(activity)页面时,source端设备将该活动页面显示在扩大一倍的画布的另一半上。
[0439]
图32示出了平行模式下在应用层序中打开某个活动页面的过程。以图9所示的gui为例,当source端设备检测到用户在app的首页点击了某个活动页面的操作时,可以在扩大一倍后的区域3201显示app首页的内容,在区域3202显示该活动页面的内容。source端设备可以对扩大一倍后的画布进行裁剪,将区域3201中的画布放入display0中,通过显示屏显示display0中的画布;source端设备可以将区域3202的画布向左平移1080后放入dispaly1中,并将display1投屏至sink端设备,从而使得sink端设备显示该活动页面。
[0440]
本技术实施例中,source端设备在检测到用户启动某个app时,可以默认将app的首页显示在扩大一倍的画布的左半边。当source端设备检测到用户点击某个活动页面时,source端设备可以调用api将该活动页面显示在右半边。
[0441]
示例性的,表2示出了包名、接口原型和返回值的对应关系。
[0442]
表2
[0443][0444]
source端设备通过调用表1所示的接口getsplicingmodetype()接口判断当前处于什么模式下。例如当返回值为3时可以确定当前处于平行模式。当source端设备检测到用户点击app中的某个活动页面时,app可以调用表2所示的startactivity()接口,在intent扩展字段“position”中设置活动页面启动到指定方位。示例性的,当前设备检测到用户点击app中的活动页面1,期望启动在另一个设备(另一设备位于当前设备的右侧)的屏幕上,则在intent中写入intent.putextra("position",right),在调用startactivity(intent)就可以将活动页面1显示在另一设备上。
[0445]
示例性的,如图9中的(c)所示,当手机a启动app6时,app6可以调用getsplicingmodetype()接口确定当前处于平行模式。当手机a检测到用户点击用户与联
系人爸爸的聊天记录时,app6确定需要启动用户与联系人爸爸的聊天界面对应的活动页面。手机a确定手机b位于手机a的右侧,那么手机a可以在intent中写入intent.putextra("position",right),在调用startactivity(intent)就可以将用户与联系人爸爸的聊天界面对应的活动页面显示在设备b上。手机a备可以对扩大一倍后的画布进行裁剪,通过显示屏显示用户与多个联系人的聊天列表对应的画布;手机a可以将裁剪得到的用户与联系人爸爸的聊天界面对应的活动页面放入dispaly1中,并将display1投屏至手机b。从而使得手机b显示该活动页面。
[0446]
s3106,source端设备对扩大一倍后的画布进行裁剪,将裁剪后的一半通过显示屏显示;将另一半显示在dispaly1中。
[0447]
s3107,source端设备将display1的内容投屏到sink端设备。
[0448]
本技术实施例提供了通过平行模式显示app的上下级活动页面的方式,在平行模式下通过多设备显示多个活动页面,带来多设备拼接时更好的用户体验。
[0449]
图33示出了source端设备和sink端设备通过双应用模式显示的方法3300的示意性流程图。该方法3300包括:
[0450]
s3301,source端设备和sink端设备建立无线连接。
[0451]
应理解,s3301可以参考上述s2401的过程,为了简洁,在此不再赘述。
[0452]
s3302,当sink端设备检测到用户的第五操作后,sink端设备向source端设备指示进入双应用模式。
[0453]
示例性的,如图7中的(a)所示,手机b上显示的双应用模式的图标可以是手机a绘制的。手机a可以在将裁剪后的画布放入display1后,在裁剪后的画布上添加平行模式的图标、双应用模式的图标、分页模式的图标以及退出控件。
[0454]
一个实施例中,手机b在检测到点击双应用模式的操作时,可以获取用户的触控事件以及对应的坐标点。手机b可以将该触控事件以及转化后的坐标点发送给手机a。手机a可以根据该触控事件以及坐标点信息,从全屏模式切换至双应用模式。
[0455]
示例性的,手机b检测到用户在屏幕(100,100)位置进行了点击操作,则手机b可以确定触控事件为点击事件且将坐标点转化为(100 1080,100),即(1180,100)。从而手机b可以将触控事件以及转化后的坐标点发送给手机a。手机a在接收到该触控事件以及转化后的坐标点后,可以确定用户在手机b上点击了双应用模式的图标,从而进行s3303。
[0456]
一个实施例中,手机b也可以向手机a发送用户在手机b的屏幕上检测到点击操作的坐标点(例如,(100,100))信息。手机a在接收到手机b发送的坐标信息后,可以由手机a将该坐标点转化到扩大1倍后的画布上的坐标点(例如,(1180,100))。从而手机a可以确定用户在手机b上点击了双应用模式的图标。
[0457]
应理解,手机b向手机a发送该触控事件以及坐标点信息的过程可以参考上述实施例中的描述,为了简洁,在此不再赘述。
[0458]
一个实施例中,手机b上显示的双应用模式的图标可以是手机b绘制的。手机b在接收到手机a发送的display1的画布后,可以在该画布上添加平行模式的图标、双应用模式的图标、分页模式的图标以及退出控件。当手机b检测到用户点击双应用模式的图标的操作时,手机b向手机a发送指示信息,该指示信息用于指示手机b希望进入双应用模式。
[0459]
示例性的,当手机b检测到用户点击双应用模式的图标的操作时,手机b可以向手
机a发送udp数据包,该udp数据包中可以携带该指示信息,该指示信息用于指示手机b希望进入双应用模式。upd数据包中包括ip数据报的数据部分。ip数据报的数据部分可以包括可扩展的比特位。手机b和手机a可以约定某个可扩展比特位的内容。当某个可扩展的比特位为1时,手机a就可以获知手机b希望进入双应用模式。
[0460]
s3303,响应于接收到sink端设备的指示,source端设备创建虚拟屏(display),并将source端设备的桌面对应的画布放入display中。
[0461]
s3304,source端设备将该display投屏到sink端设备上。
[0462]
一个实施例中,以source端设备为android系统为例,source端设备接收到sink端设备希望进入双应用模式的指示后,可以创建dispaly。source端设备可以使用android的第二桌面(secondlauncher)机制,将secondlauncher启动在display上,在将display投屏到sink端设备上,这样sink端设备就可以显示source端设备的桌面了。
[0463]
示例性的,如图7中的(b)所示,手机a在接收到手机b希望进入双应用模式的指示后,可以将手机a的桌面(包括状态栏中的网络制式、wi-fi连接状态、电池电量,天气信息,日期信息以及app1-app12的图标)启动在display上,再将display投屏到手机b上,从而使得手机b也可以显示手机a的桌面。
[0464]
s3305,sink端设备检测到用户点击第一应用程序的图标,向source端设备发送触控事件以及坐标点信息。
[0465]
应理解,sink端设备向source端设备发送触控事件以及坐标点信息的过程可以参考上述实施例中的描述,为了简洁,在此不再赘述。
[0466]
s3306,响应于接收到该触控事件和该坐标点信息,source端设备可以启动该第一应用程序,并将该第一应用程序运行在display中。
[0467]
示例性的,如图7中的(c)所示,当手机b检测到用户点击app4的图标时,手机b可以向手机a发送触控事件以及手机b采集到的用户点击时的坐标点信息。手机a在接收到该触控事件以及坐标信息信息后,可以确定手机b检测到了用户点击了屏幕以及对应的坐标点信息。从而手机a可以确定用户在手机b上点击了app4的图标。手机a可以启动app4并将app4运行在display中,再将display投屏到手机b上。
[0468]
s3307,source端设备将该display投屏到sink端设备上。
[0469]
如图7中的(d)所述,手机b可以显示app4的界面。
[0470]
应理解,source端设备在检测到用户的操作时的显示过程可以参考现有技术中的描述,为了简洁,在此不再赘述。
[0471]
本技术实施例提供了通过双应用模式在source端设备和sink端设备上分别显示source端设备不同的应用程序的方法,避免了用户使用source端设备在不同的应用之间来回切换的过程,带来多设备拼接时更好的用户体验。
[0472]
以上结合图22至图33介绍了本技术实施例提供的全屏模式、分页模式、平行模式和双应用模式的实现过程,下面结合附图介绍本技术实施例中的不同模式下的切换过程。
[0473]
图34示出了本技术实施例提供的多模式下切换显示的方法3400的示意性流程图。如图34所示,该方法3400包括:
[0474]
s3401,source端设备与sink端设备建立无线连接。
[0475]
应理解,source端设备与sink端设备建立无线连接的过程可以参考上述s2401的
过程,此处不再赘述。
[0476]
s3402,source端设备确定和sink端设备进行拼接显示。
[0477]
一个实施例中,当sink端设备检测到用户的第一操作(例如,用户从屏幕左侧向右侧滑动的操作)时,可以向source端设备发送指示信息,该指示信息用于指示source端设备和sink端设备进行拼接显示。响应于接收到该指示信息,source端设备可以执行s3403。
[0478]
示例性的,如图15中的(a)所示,当手机b检测到用户向右滑动控件1502的操作时,手机b可以指示手机a和手机b进行屏幕拼接显示。
[0479]
sink端设备指示source端设备和sink端设备进行屏幕拼接显示,source端设备在接收到该指示后可以根据当前source端设备的状态确定和sink端设备通过全屏模式、分页模式、平行模式或者双应用模式中的任意一种进行显示。
[0480]
一个实施例中,sink端设备在检测到用户的第一操作时,sink端设备可以向source端设备发送udp数据包,该udp数据包中可以携带该指示信息,该指示信息用于指示source端设备和sink端设备进行屏幕拼接显示。upd数据包中包括ip数据报的数据部分。ip数据报的数据部分可以包括可扩展的比特位。sink端设备和source端设备可以约定某个可扩展比特位的内容。当某个可扩展的比特位为1时,source端设备就可以获知sink端设备希望和source端设备进行屏幕拼接显示。
[0481]
一个实施例中,sink端设备1在检测到用户的第一操作时,sink端设备1可以向source端设备发送tcp报文,该tcp报文中可以携带该指示信息。tcp报文中包括tcp首部和tcp数据部分,其中tcp首部包括保留字段。sink端设备1和source端设备可以约定某个保留字段的内容。当某个保留字段的比特位为1时,source端设备就可以获知sink端设备希望和source端设备进行屏幕拼接显示。
[0482]
一个实施例中,当source端设备检测到用户的第二操作(例如,用户从屏幕左侧向右侧滑动的操作)时,source端设备可以确定和sink端设备进行拼接显示,从而执行s3403。
[0483]
s3403,source端设备根据当前source端设备的状态,确定和sink端设备通过第一模式进行拼接显示。
[0484]
一个实施例中,若source端设备检测到用户的第二操作,source端设备可以确定和sink端设备进行拼接显示。那么source端设备在向sink端设备发送需要sink端设备显示的图像信息的同时还可以向source端设备发送指示信息,该指示信息用于指示sink端设备和source端设备进行拼接显示。
[0485]
一个实施例中,该第一模式包括全屏模式、分页模式、平行模式、双应用模式中的任意一种。
[0486]
一个实施例中,source端设备根据当前source端设备的状态,确定和sink端设备通过第一模式进行拼接显示,包括:source端设备根据source端设备当前的界面,确定和sink端设备通过第一模式进行拼接显示。
[0487]
示例性的,表3示出了一种source端设备当前显示界面所属的应用程序与第一模式的映射关系。
[0488]
表3
[0489][0490]
应理解,表3所示的source端设备当前显示的界面与第一模式的映射关系仅仅是示意性的,本技术实施例并不限于此。
[0491]
一个实施例中,source端设备可以保存有多个应用程序的包名信息及对应的类型的映射关系,当source端设备接收到sink端设备的指示信息后,首先可以确定source端设备当前的显示界面显示的内容。若source端设备确定当前显示的是应用程序,那么source端设备可以查询应用程序层中该应用程序的包名信息,并通过该应用程序的包名信息以及多个应用程序的包名信息及其对应的类型的映射关系确定该应用程序的类型。示例性的,表4示出了多个应用程序的包名信息及对应的类型的映射关系。
[0492]
表4
[0493]
包名信息类型包名1、包名2、包名3

视频类app包名4、包名5、包名6

游戏类app包名7、包名8、包名9

文档类app包名10、包名11、包名12

购物类app包名13、包名14、包名15

社交类app
……
[0494]
应理解,表4所示的多个应用程序的包名信息及对应的类型的映射关系仅仅是示意性的,本技术实施例并不限于此。
[0495]
应理解,source端设备和sink端设备通过全屏模式、分页模式、平行模式、双应用模式进行拼接显示的过程可以参考上述实施例中的描述,此处不再赘述。
[0496]
一个实施例中,source端设备还可以通过识别界面元素的方式来确定当前source端显示的应用程序的类型。示例性的,source端设备如果识别出来当前显示界面上包括播放控件,则可以确定当前界面显示的应用程序为音乐类app或者视频app。若source端设备确定当前显示界面上还包括视频播放窗口,则可以确定当前界面显示的应用程序为视频类app。
[0497]
一个实施例中,source端设备根据当前source端设备的状态,确定和sink端设备通过第一模式进行拼接显示,包括:source端设备当前显示第一应用程序的显示界面,当source端设备接收到第二应用程序的通知消息并检测到用对通知消息对应的消息提示框的第一输入时,确定和sink端设备通过双应用模式进行拼接显示。
[0498]
示例性的,如图15中的(a)所示,当手机a接收到手机b的指示时,手机a显示视频应用的播放界面且手机a收到一条来自于app4的通知消息,此时手机a可以确定和手机b通过双应用模式进行拼接显示。
[0499]
示例性的,如图17中的(a)所示,手机a和手机b正在通过全屏模式进行拼接显示。当手机a接收到app4的一条消息后,手机a和手机b可以通过全屏模式显示该消息提示框1701。当手机a检测到用户点击该消息提示框1701的操作时,手机a和手机b可以从全屏模式切换至双应用模式。
[0500]
示例性的,如图18中的(a)所示,当手机a接收到app4的一条消息后,手机a和手机b可以通过全屏模式显示该消息提示框1801。当手机a检测到用户向左下方拖拽该消息提示框1801的操作时,手机a和手机b可以从全屏模式切换至双应用模式。手机a还可以根据拖拽的方向(向左下方拖拽)来确定在手机a上显示app4中用户与联系人李华的聊天界面且手机a可以向手机b发送视频显示界面对应的画布,从而使得手机b显示该视频显示界面。
[0501]
一个实施例中,source端设备当前显示第一应用程序的显示界面,若source端设备接收到sink端设备的指示信息且source端设备接收到第二应用程序的通知消息,source端设备可以确定和sink端设备通过双应用模式进行拼接显示。
[0502]
一个实施例中,source端设备可以在接收到sink端设备的指示之前的预设时长内接收到该第二应用程序的通知消息,那么source端设备可以确定和sink端设备通过双应用模式进行拼接显示。或者,source端设备可以在接收到sink端设备的指示之后的预设时长内接收到该第二应用程序的通知消息,那么source端设备可以确定和sink端设备通过双应用模式进行拼接显示。
[0503]
示例性的,当手机a显示视频应用的播放界面且手机a收到一条来自于app4的通知消息,手机a可以在接收到该通知消息时启动一个定时器。若手机a在该定时器超时之前接收到手机b的指示,那么手机a可以确定和手机b通过双应用模式进行拼接显示。这样,当手机a接收到手机b的指示时,该通知消息的提示框可能已经隐藏但是该定时器还在运行,手机a还是可以确定和手机b通过双应用模式进行拼接显示。
[0504]
一个实施例中,若source端设备确定和sink端设备通过双应用模式进行拼接显示,那么source端设备可以显示第一应用程序的显示界面,且将第二应用程序的显示界面投屏到sink端设备上。
[0505]
应理解,source端设备确定和sink端设备通过双应用模式进行拼接显示的实现过程可以参考上述实施例中的描述,此处不再赘述。
[0506]
本技术实施例中,当source端设备已经运行了第一应用程序且接收到来自于第二应用程序的通知消息时,可以和sink端设备通过双应用模式分别显示第一应用程序和第二应用程序的显示界面,无需用户在source端设备上从第一应用程序切换第二应用程序,有助于提升人机交互时的效率,同时也增强了电子设备的智能化程度和人机交互的友好性。
[0507]
图35示出了本技术实施例提供的多模式下切换显示的方法3500的示意性流程图。如图35所示,该方法3500包括:
[0508]
s3501,source端设备和sink端设备通过双应用模式进行拼接显示,source端设备显示第一应用程序的显示界面且sink端设备显示第二应用程序的显示界面。
[0509]
示例性的,如图16中的(a)所示,手机a为source端设备,手机b为sink端设备。手机a和手机b当前正在通过双应用模式进行显示。
[0510]
应理解,s3501的实现过程可以参考上述实施例中的描述,此处不再赘述。
[0511]
s3502,source端设备在第一应用程序的显示界面上显示消息提示框,该消息提示
框用于提示用户接收到一条来自于第三应用程序的消息。
[0512]
示例性的,如图16中的(b)所示,手机a在app3的显示界面上显示消息提示框1601,其中消息提示框1601中包括发送通知消息的联系人信息(例如,李华),消息内容(例如,“上午9点有会议”)。
[0513]
s3503,响应于用户对该消息提示框的输入,source端设备将该第三应用程序的显示界面投屏到sink端设备。
[0514]
示例性的,如图16中的(c)所示,响应于用户点击消息提示框1601的操作,手机a可以将app4中用户与联系人李华的聊天界面投屏到手机b上。
[0515]
本技术实施例中,当source端设备已经运行了第一应用程序且接收到来自于第三应用程序的通知消息时,sink端设备从第二应用程序的显示界面切换到第三应用程序的显示界面,从而使得source端设备和sink端设备通过双应用模式分别显示第一应用程序和第三应用程序的显示界面,无需用户在source端设备上从第一应用程序切换第三应用程序,有助于提升人机交互时的效率,同时也增强了电子设备的智能化程度和人机交互的友好性。
[0516]
图36示出了本技术实施例提供的多模式下切换显示的方法3600的示意性流程图。如图36所示,该方法3600包括:
[0517]
s3601,source端设备和sink端设备通过全屏模式显示第一应用程序的显示界面。
[0518]
示例性的,如图17中的(a)所示,手机a和手机b可以通过全屏模式显示视频播放界面。
[0519]
应理解,source端设备和sink端设备通过全屏模式进行拼接显示的过程可以参考上述实施例中的描述,此处不再赘述。
[0520]
s3602,source端设备响应于接收到第二应用程序的通知消息,和sink端设备在该第一应用程序的显示界面上显示消息提示框,该消息提示框用于提示用户接收到一条来自于第二应用程序的消息。
[0521]
示例性的,如图17中的(b)所示,手机a收到一条来自于app4的通知消息后,可以通过手机a和手机b在该视频播放界面上显示消息提示框1701,其中消息提示框1701包括发送通知消息的联系人信息(例如,“李华”),消息内容为(例如,“上午9点有会议”)。
[0522]
s3603,source端设备响应于用户针对该消息提示框的输入,和sink端设备从全屏模式进行拼接显示切换至和sink端设备通过双应用模式进行拼接显示。
[0523]
s3604,响应于source端设备切换至和sink端设备通过双应用模式进行拼接显示,source端设备显示该第一应用程序的显示界面且source端将该第二应用程序的显示界面投屏到sink端设备。
[0524]
示例性的,如图17中的(c)所示,响应于检测到用户点击消息提示框1701的操作,手机a可以和手机b从全屏模式切换至双应用模式,手机a可以显示视频播放界面,手机b可以显示app4中用户与联系人李华的聊天界面。
[0525]
以上s3603-s3604可以是source端设备检测到用户针对消息提示框的输入时,从全屏模式切换至双应用模式;本技术实施例中,也可以是sink端设备检测到用户针对消息提示框的输入时,触发source端设备从全屏模式切换至双应用模式。
[0526]
s3605,sink端设备检测到用户针对该消息提示框的输入,向source端设备发送触
控事件以及对应的坐标信息。
[0527]
一个实施例中,sink端设备可以是在检测到用户点击了该消息提示框的操作时,向source端设备发送点击事件以及转化后的坐标信息。
[0528]
应理解,sink端设备向source端设备发送触控事件以及对应的坐标信息的实现过程可以参考上述实施例中的描述,此处不再赘述。
[0529]
s3606,source端设备根据该触控事件和该坐标信息,确定用户在sink端设备上针对该消息提示框进行了输入。
[0530]
应理解,source端设备确定用户在sink端设备上针对消息提示框进行了输入的实现过程可以参考上述实施例中的描述,此处不再赘述。
[0531]
s3607,source端设备和sink端设备从全屏模式进行拼接显示切换至通过双应用模式进行拼接显示。
[0532]
s3608,响应于source端设备切换至和sink端设备通过双应用模式进行拼接显示,source端设备显示该第一应用程序的显示界面且source端将该第二应用程序的显示界面投屏到sink端设备。
[0533]
应理解,s3603-s3604和s3605-s3608之间是并列关系。
[0534]
本技术实施例中,当source端设备和sink端设备通过全屏模式显示第一应用程序的显示界面,若source端设备接收到第二应用程序的通知消息,且source端设备或者sink端设备检测到用户针对消息提示框的输入时,source端设备可以确定从全屏模式切换至双应用模式,从而可以和sink端设备通过双应用模式分别显示第一应用程序和第二应用程序的显示界面,无需用户在source端设备上从第一应用程序切换第三应用程序,有助于提升人机交互时的效率,同时也增强了电子设备的智能化程度和人机交互的友好性。
[0535]
图37示出了本技术实施例提供的拼接显示的方法3700的示意性流程图。其中,第一电子设备可以为上述source端设备,第二电子设备可以为上述sink端设备,该第一电子设备包括第一应用程序和第二应用程序,第一电子设备通过近距离无线连接与所述第二电子设备通信,该方法3700包括:
[0536]
s3701,第一电子设备显示第一界面,该第一界面为第一应用程序的显示界面。
[0537]
示例性的,如图16中的(a)所示,手机a显示app3的显示界面。
[0538]
示例性的,如图17中的(a)所示,手机a显示视频应用的视频播放界面的一部分。
[0539]
示例性的,如图20中的(a)所示,手机a显示社交应用的首页。
[0540]
s3702,第一电子设备在显示所述第一界面的同时检测到用户的第一输入,该第一输入为启动第二应用程序的输入。
[0541]
示例性的,如图16中的(b)所示,该第二应用程序可以为app4,该第一输入可以为用户点击消息提示框1601的操作。
[0542]
示例性的,如图17中的(b)所示,该第二应用程序可以为app4,该第一输入可以为用户点击消息提示框1701的操作。
[0543]
示例性的,如图20中的(a)所示,该第二应用程序可以为app7,该第一输入可以为用户点击消息提示框2001的操作。
[0544]
示例性的,如图22中的(b)所示,该第二应用程序可以为app3,该第一输入可以为用户点击app3的图标的操作。
[0545]
示例性的,如图22中的(c)所示,该第二应用程序可以为app3,该第一输入可以为用户对app3的图标进行拖动的操作。
[0546]
s3703,第一电子设备响应于该第一输入,向该第二电子设备发送第二应用程序的显示界面对应的图像信息。
[0547]
s3704,第二电子设备响应于接收到该图像信息,显示该第二应用程序的显示界面。
[0548]
示例性的,如图16中的(c)所示,手机a响应于用户点击消息提示框1601的操作,可以向手机b发送app4中用户与联系人李华的聊天界面对应的图像信息。响应于接收到该图像信息,手机b可以显示app4中用户与联系人李华的聊天界面。
[0549]
示例性的,如图17中的(c)所示,手机a响应于用户点击消息提示框1701的操作,可以向手机b发送app4中用户与联系人李华的聊天界面对应的图像信息。响应于接收到该图像信息,手机b可以显示app4中用户与联系人李华的聊天界面。
[0550]
示例性的,如图20中的(b)所示,手机a响应于用户点击消息提示框2001的操作,可以向手机b发送app7中商品1的显示界面对应的图像信息。响应于接收到该图像信息,手机b可以显示app7中商品1的显示界面。
[0551]
一个实施例中,该第一电子设备检测到用户的第一输入之前,该方法还包括:在显示该第一界面的同时接收到该第二应用程序对应的服务器发送的通知消息;响应于接收到该通知消息,显示消息提示框,该消息提示框用于提示用户接收到该通知消息;其中,该第一输入为用户针对该消息提示框的输入。
[0552]
示例性的,如图16中的(b)所示,手机a响应于接收到app4对应的服务器发送的通知消息后显示消息提示框1601。示例性的,如图17中的(b)所示,手机a响应于接收到app4对应的服务器发送的通知消息后,和手机b通过全屏模式显示消息提示框1701。
[0553]
一个实施例中,该第一输入为用户点击该消息提示框的操作;或者,该第一输入为按照第一方向拖动该消息提示框的操作。
[0554]
示例性的,如图16中的(b)所示,该第一输入可以为用户点击消息提示框1601的操作。示例性的,如图17中的(b)所示,该第一输入可以为用户点击消息提示框1701的操作。
[0555]
示例性的,如图18中的(a)所示,该第一输入可以为用户向右下方拖动该消息提示框1801的操作。
[0556]
一个实施例中,该第一界面包括第一界面元素,该第一界面元素关联一个弹窗,该弹窗用于提示用户打开该第二应用程序,该第一电子设备检测到用户的第一输入之前,该方法还包括:在该第一界面上检测到用户对该第一界面元素的第二输入;响应于该第二输入,显示该弹窗;其中,该第一输入为针对该弹窗的输入。
[0557]
示例性的,如图21中的(b)所示,响应于检测到用户点击链接2101的操作,手机a可以显示弹窗2102。响应于用户点击弹窗2102中控件2104的操作,手机a可以向手机b发送app5中内容1的显示界面对应的图像信息。如图21中的(c)所示,响应于接收到该图像信息,手机b可以显示app5中内容1的显示界面。
[0558]
一个实施例中,该第一电子设备检测到用户的第一输入之前,该方法还包括:该第一电子设备接收该第二电子设备发送的第一指示信息,该第一指示信息用于指示该第一电子设备和该第二电子设备进行拼接显示;响应于接收到该第一指示信息,该第一电子设备
向该第二电子设备发送该第一电子设备的桌面对应的图像信息,以使得该第二电子设备显示该第一电子设备的桌面。
[0559]
如图16中的(a)所示,手机a在检测到用户点击消息提示框1601的操作之前,手机b可以显示手机b的桌面。当手机b检测到用户的输入(例如,从屏幕左侧向右侧滑动的操作)时,手机b可以向手机a发送第一指示信息,该第一指示信息用于指示手机a和手机b进行拼接显示。响应于接收到该第一指示信息,手机a可以确定和手机b通过双应用模式进行拼接显示。从而手机a可以向手机b发送手机a的桌面对应的图像信息。手机b响应于接收到该图像信息,可以显示手机a的桌面。
[0560]
一个实施例中,该第一电子设备还包括第三应用程序,该方法3600还包括:该第一电子设备接收该第二电子设备发送的第二指示信息,该第二指示信息用于指示该第二电子设备检测到该第三输入,该第三输入为针对该第三应用程序的输入;该第一电子设备响应于接收到该第二指示信息,向该第二电子设备发送该第三应用程序的显示界面对应的图像信息,以使得该第二电子设备显示该第三应用程序的显示界面;该第一电子设备响应于用户打开该第一应用程序的操作,显示该第一界面。
[0561]
示例性的,手机b在显示手机a的桌面时如果检测到用户的输入(该输入可以是针对手机a桌面上第三应用程序(例如,照片应用)的输入),那么手机b可以向手机a发送触控事件以及对应的坐标信息。从而手机a可以根据该触控事件以及对应的坐标信息确定用户在手机b上点击了第三应用程序的图标。手机a可以向手机b发送照片应用的显示对应的图像信息。手机b响应于接收到该图像信息可以显示照片应用的显示界面。在手机a向手机b发送照片应用的显示对应的图像信息后,手机a检测到用户启动第一应用程序(例如,app3)的操作,手机a响应于该操作可以启动第一应用程序。
[0562]
如上所述,手机a可以是先启动第三应用程序并向手机b发送第三应用程序的显示界面,后启动第一应用程序且通过手机a显示该第一应用程序的显示界面。那么在s3702中当第一电子设备(例如,手机a)检测到第一输入时,可以选择替换较早打开的第三应用程序,从而手机a可以继续显示第一应用程序的显示界面且手机a可以向手机b发送第三应用程序的显示界面对应的图像信息,从而使得手机b显示第三应用程序的显示界面。
[0563]
一个实施例中,该第一电子设备还包括第三应用程序,该方法还包括:该第一电子设备接收该第二电子设备发送的第二指示信息,该第二指示信息用于指示该第二电子设备检测到该第三输入,该第三输入为针对该第三应用程序的输入;该第一电子设备响应于接收到该第二指示信息,向该第二电子设备发送该第三应用程序的显示界面对应的图像信息,以使得该第二电子设备显示该第三应用程序的显示界面;该第一电子设备在向该第二电子设备发送该第二应用程序的显示界面对应的图像信息之前,确定预设时长内检测到用户在该第一界面上的输入且未接收到该第二电子设备发送的第三指示信息,该第三指示信息用于指示该第二电子设备在该第三应用程序的显示界面上检测到用户的输入。
[0564]
示例性的,如图16中的(b)所示,若手机a在检测到用户点击消息提示框1601之前,确定在预设时长内检测到用户在第一应用程序的显示界面上的输入且未接收到手机b发送的第三指示信息,该第三指示信息用于指示手机b检测到用户在第三应用程序的显示界面上的输入时,手机a可以确定用户的焦点应用程序为手机a上显示的第一应用程序,那么手机a可以继续显示该第一应用程序的显示界面且手机a可以向手机b发送该第三应用程序的
显示界面对应的图像信息。
[0565]
本技术实施例中,第一电子设备在确定替换某个应用程序的显示界面时,可以先确定用户聚焦的应用程序,若用户聚焦的应用程序为第一电子设备上显示的第一应用程序,那么第一电子设备可以确定向第二电子设备发送第三应用程序的显示界面对应的图像信息,从而使得第三电子设备使用第三应用程序的显示界面替换用户未聚焦的第二应用程序的显示界面。
[0566]
一个实施例中,该第一电子设备显示该第一界面之前,该方法还包括:该第一电子设备显示第二界面;该第一电子设备接收该第一电子设备发送的第四指示信息,该第四指示信息用于指示该第一电子设备和该第二电子设备进行拼接显示;该第一电子设备,还用于响应于接收到该第四指示信息,将该第二界面对应的图像信息进行扩大;将扩大后的该图像信息进行分割,得到该第一部分图像信息以及该第二部分图像信息,其中该第一部分图像信息为该第一界面显示的图像信息;该第一电子设备,还用于显示该第一界面且向该第二电子设备发送该第二部分图像信息,以使得该第二电子设备显示该第二部分图像信息。
[0567]
本技术实施例中,第一电子设备和第二电子设备通过双应用模式分别显示第一应用程序的显示界面和第三应用程序的显示界面之前,可以先通过第二电子设备触发第一电子设备和第二电子设备通过全屏模式进行拼接显示。在全屏模式下,当第一电子设备检测到用户的第一输入时,第一电子设备可以确定从通过全屏模式和第二电子设备进行拼接显示切换至通过双应用模式和第二电子设备进行拼接显示。这样无需用户切换应用程序,有助于提升用户的体验。
[0568]
一个实施例中,该方法还包括:响应于该第一输入,该第一电子设备显示该第二界面且向该第二电子设备发送该第二应用程序的显示界面对应的图像信息。
[0569]
一个实施例中,该第一电子设备响应于该第一输入,可以显示该第二应用程序的显示界面且向第二电子设备发送该第二界面对应的图像信息。
[0570]
图38示出了本技术实施例提供的装置3800的示意性框图。该装置3800可以设置于上述图37中的第一电子设备中,该装置3800中包括:显示单元3810,用于显示第一界面,第一界面为第一应用程序的显示界面;检测单元3820,用于检测到用户的第一输入,第一输入为启动第二应用程序的操作;发送单元3830,用于响应于第一输入,向第二电子设备发送第二应用程序的显示界面对应的图像信息,以使得第二电子设备显示所述第二应用程序的显示界面。
[0571]
图39示出了本技术实施例提供的电子设备3900的示意性结构图。如图39所示,该电子设备包括:一个或多个处理器3910,一个或多个存储器3920,该一个或多个存储器存储3920存储有一个或多个计算机程序,该一个或多个计算机程序包括指令。当该指令被所述一个或多个处理器3910运行时,使得第一电子设备或者第二电子设备执行上述实施例中的技术方案。
[0572]
本技术实施例提供了一种系统,包括第一电子设备和第二电子设备,该系统用于执行上述实施例中的技术方案。其实现原理和技术效果与上述方法相关实施例类似,此处不再赘述。
[0573]
本技术实施例提供一种计算机程序产品,当所述计算机程序产品在第一电子设备
(或者,source端设备)运行时,使得第一电子设备执行上述实施例中的技术方案。其实现原理和技术效果与上述方法相关实施例类似,此处不再赘述。
[0574]
本技术实施例提供一种可读存储介质,所述可读存储介质包含指令,当所述指令在第一电子设备(或者,source端设备)运行时,使得所述第一电子设备执行上述实施例的技术方案。其实现原理和技术效果类似,此处不再赘述。
[0575]
本技术实施例提供一种芯片,所述芯片用于执行指令,当所述芯片运行时,执行上述实施例中的技术方案。其实现原理和技术效果类似,此处不再赘述。
[0576]
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
[0577]
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0578]
在本技术所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0579]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0580]
另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
[0581]
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
[0582]
以上所述,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以所述权利要求的保护范围为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献