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

一种数据共享和指令操作控制方法及系统与流程

2022-06-01 00:48:41 来源:中国专利 TAG:

一种数据共享和指令操作控制方法及系统
1.本技术是分案申请,原申请的申请号是202010225382.3,原申请日是2020年03月26日,原申请的全部内容通过引用结合在本技术中。
技术领域
2.本技术涉及短距离通信技术领域,尤其涉及一种数据共享和指令操作控制方法及系统。


背景技术:

3.随着无线通讯技术的发展,智能手机、平板电脑等终端开始支持用户分享图片、文档等数据,提高了用户的办公效率和办公体验。例如,用户可以无须使用数据线将智能手机等便携式终端上的图片、文档等数据分享给其他设备。
4.现有技术中,用户想要分享智能手机等便携式终端等数据,一般可以通过下述两种方式达到数据分享的目的:方式一,用户需要打开无线通信技术(例如蓝牙、wifi、nfc等),然后,在搜索并连接到周围的设备后,可以将数据分享给连接的设备。方式二,两个设备可以通过登录相同的云账号,通过互联网进行数据传输和互相控制。
5.可以看出,方式一中的无线通信技术仅能实现数据分享,相互连接的两个设备之间不能相互控制;方式二中的两个设备进行数据分享和指令控制的前提是必须两个设备必须登录账号,比较繁琐。这对于当前人们对快速进行分享操作的期待不符。


技术实现要素:

6.本技术提供了一种数据共享和指令操作控制方法及系统,提供了一个设备之间无需通过任何账号或互联网,能够在近距离快速建立连接并能够进行数据共享和指令操作控制的方法,提高了数据传输的实时性,方便人们的交互。
7.第一方面,本技术提供了一种数据共享和指令操作控制方法,包括:第一终端显示第一应用的第一用户界面,所述第一用户界面包括第一操作选项;响应于对所述第一操作选项的点击,所述第一终端向第二终端发送连接请求;所述第二终端开启所述第一应用;所述第二终端接收所述连接请求,所述第二终端与所述第一终端建立通信连接;所述第二终端显示所述第一应用的第二用户界面,所述第二用户界面包括第二操作选项;所述第二终端将所述第二用户界面发送至所述第一终端;所述第一终端显示所述第二用户界面;响应于对所述第一终端显示的所述第二用户界面上的所述第二操作选项的点击,所述第一终端发送控制指令给所述第二终端;所述第二终端接收所述第一终端发送的所述控制指令,所述第二终端显示所述第一应用的第三用户界面。
8.通过第一方面的方法,提供了一个设备之间无需通过任何账号或互联网,能够在近距离快速建立连接并能够进行数据共享和指令操作控制的方法,提高了数据传输的实时性,方便人们的交互。
9.通过第一方面的方法,在一些实施例中,所述方法还包括:所述第二终端将所述第
三用户界面发送至所述第一终端,所述第一终端显示所述第三用户界面。
10.通过第一方面的方法,在一些实施例中,所述第二终端接收所述连接请求,所述第二终端与所述第一终端建立通信连接,包括:所述第二终端接收所述连接请求;响应于接收到的所述连接请求,所述第二终端显示验证码输入框;当所述验证码输入框中输入的验证码与所述第一终端预设的验证码一致时,所述第二终端与所述第一终端建立通信连接。这样,第一终端可以与希望建立连接的第二终端建立连接,保证了设备连接的准确性和安全性。
11.在上述实施例中,若所述第一终端与所述第二终端之前已经建立过连接,则当第一终端再次向所述第二终端发起所述连接请求时,所述第二终端不再显示所述验证码输入框。
12.通过第一方面的方法,在一些实施例中,所述方法还包括:响应于对所述第一终端显示的所述第二用户界面上的所述第二操作选项的点击,所述第二终端显示第一提示信息。这样,当操作选项被其他终端的用户点击时,第二终端的用户可以收到提示信息。
13.通过第一方面的方法,在一些实施例中,所述第一应用是相机应用;所述第二操作选项包括拍摄参数调节选项和拍照选项。
14.通过第一方面的方法,在一些实施例中,所述拍摄参数调节选项包括闪光灯调节选项、焦距调节选项或快门速度调节选项。
15.在上述实施例中,所述拍摄参数调节选项还可以包括选择“瘦身”特效选项,响应于对所述选择“瘦身”特效选项的点击,所述第一终端发送“瘦身”指令给所述第二终端;所述第二终端接收并识别所述“瘦身”控制指令中的“瘦身”参数,所述瘦身参数包括“瘦身”程度和“瘦身”部位;所述第二终端根据所述“瘦身”参数对所述第二用户界面中的取景图像进行图像处理,处理后的所述取景图像所显现的拍摄对象的体型符合所述第一终端的“瘦身”用户操作对应的“瘦身”需求。
16.通过第一方面的方法,在一些实施例中,响应于对所述第一终端显示的所述第二用户界面上的所述第二操作选项的点击,所述第一终端发送控制指令给所述第二终端,包括:响应于对所述拍照选项的点击,所述第一终端发送拍照指令给所述第二终端,所述拍照指令携带第一时间信息。
17.通过第一方面的方法,在一些实施例中,所述方法还包括:所述第二终端接收所述拍照指令;所述第二终端根据所述第一时间信息,在预定时刻执行拍照操作,获取第一照片;所述第二终端向所述第一终端发送所述第一照片;所述第一终端接收并保存所述第一照片至第一文件夹,所述第一文件夹的名称中包括所述第二终端的标识。这样,当用户在终端100上按下拍摄控件后,可以有足够的时间把终端100放置在不影响拍照效果的位置上,例如把终端100放入衣服口袋后再进行拍照。并且,第一终端使用摄像头拍摄的照片,与第一终端控制第二终端拍摄的照片,保存在不同的文件中,便于用户进行查看。
18.在一些实施例中,在所述第一终端确认拍照预览效果已满足用户期望时,所述第一终端的用户可以通知所述第二终端的用户执行拍照操作,此时,所述第二终端可以接收用户操作(例如按下拍摄控件),所述第二终端拍摄照片并将拍摄的图像以图片格式保存至终端101的相册;所述第二终端将拍摄的图像发送至所述第一终端;所述第一终端接收图像并将拍摄的图像以图片格式保存至所述第一终端的相册。
19.通过第一方面的方法,在一些实施例中,所述方法还包括:在预设时间内,所述第一终端接收用户的第一操作;所述第二终端接收用户的第二操作;则所述第一终端响应所述第一操作。
20.在上述实施例中,在预设时间内,所述第一终端接收用户第一操作,所述第二终端接收用户第二操作,所述第一操作与所述第二操作存在操作冲突,所述操作冲突包括相同操作冲突和不同的操作冲突,解决操作冲突还可以采取以下几种方式中的任一一种方式。
21.方式一:所述第一操作与所述第二操作为相同操作,所述第一操作时间早于所述第二操作时间,则所述第一终端响应所述第一操作。
22.方式二:所述第一操作与所述第二操作为不同操作,所述第一操作优先级高于所述第二操作优先级,则所诉第一终端响应所述第一操作。
23.方式三:所述第一终端还可以接受用户第三操作,对于操作合理性,所述第一操作、所述第二操作、所述第三操作的操作意图发生了冲突,则所述第二操作应当舍弃。
24.通过第一方面的方法,在一些实施例中,所述第二终端将所述第二用户界面发送至第一终端,所述第一终端显示所述第二用户界面具体包括:所述第二终端将所述第二用户界面转换为数据流;所述第二终端将所述数据流封装为分布式数据流;所述第二终端将所述分布式数据流通过socket通道发送至所述第一终端;所述第一终端将所述分布式数据流还原为数据流;所述第一终端将所述数据流转换为所述第二用户界面;所述第一终端显示所述第二用户界面。
25.通过第一方面的方法,在一些实施例中,所述第一终端发送控制指令给所述第二终端,所述第二终端接收所述第一终端发送的所述控制指令具体包括:所述第一终端将所述控制指令转换为binder指令;所述第一终端将所述binder指令封装为分布式binder;所述第一终端将所述分布式binder通过socket通道发送至所述第二终端;所述第二终端将所述分布式binder还原为所述binder指令;所述第二终端将所述所述binder指令转换为所述控制指令;所述第二终端接收所述第一终端发送的所述控制指令。
26.通过第一方面的方法,在一些实施例中,所述方法还包括:当所述第一终端关闭所述第一应用时,所述第一终端与所述第二终端断开连接。
27.在上述实施例中,所述第一终端与所述第二终端断开连接的方式还可以采取以下几种方式中的任一一种方式:
28.方式一:当所述第二终端关闭所述第一应用时,所述第一终端与所述第二终端断开连接。
29.方式二:所述第一终端关闭显示的所述第二用户界面上的所述第二操作选项中的的所述开启/关闭搜索与发现设备选项和/或所述第二终端关闭所述第二用户界面上的所述第二操作选项中的所述开启/关闭搜索与发现设备选项;
30.方式三:所述第一终端关闭无线通信功能和/或所述第二终端关闭无线通信功能。
31.第二方面,本技术提供了一种系统,所述系统包括:第一终端和第二终端,其中:
32.所述第一终端用于显示第一应用的第一用户界面,所述第一用户界面包括第一操作选;响应于对所述第一操作选项的点击,所述第一终端还用于向第二终端发送连接请求;所述第二终端用于开启所述第一应用;所述第二终端还用于接收所述连接请求,所述第二终端与所述第一终端建立通信连接;所述第二终端还用于显示所述第一应用的第二用户界
面,所述第二用户界面包括第二操作选项;所述第二终端还用于将所述第二用户界面发送至所述第一终端;所述第一终端还用于显示所述第二用户界面;响应于对所述第一终端显示的所述第二用户界面上的所述第二操作选项的点击,所述第一终端还用于发送控制指令给所述第二终端;所述第二终端还用于接收所述第一终端发送的所述控制指令,所述第二终端显示所述第一应用的第三用户界面。
33.可理解的,基于同一发明思想,第二方面的系统中所述第一终端和所述第二终端执行的各个步骤可参考第一方面的数据共享和指令操作控制方法中的所述第一终端和所述第二终端实现对应功能时所执行的步骤,可参考相关描述。
34.结合第二方面的系统,在一些实施例中,所述系统还包括:所述第二终端还用于将所述第三用户界面发送至所述第一终端,所述第一终端还用于显示所述第三用户界面。
35.结合第二方面的系统,在一些实施例中,所述第二终端还用于:接收所述连接请求;所述第二终端还用于:响应于接收到的所述连接请求,显示验证码输入框;所述第二终端还用于:当所述验证码输入框中输入的验证码与所述第一终端预设的验证码一致时,与所述第一终端建立通信连接。
36.结合第二方面的系统,在一些实施例中,所述系统还包括:所述第二终端还用于:响应于对所述第一终端显示的所述第二用户界面上的所述第二操作选项的点击,显示第一提示信息。
37.结合第二方面的系统,在一些实施例中,所述第一应用是相机应用;所述第二操作选项包括拍摄参数调节选项和拍照选项。
38.结合第二方面的系统,在一些实施例中,所述拍摄参数调节选项包括闪光灯调节选项、焦距调节选项或快门速度调节选项。
39.结合第二方面的系统,在一些实施例中,响应于对所述第一终端显示的所述第二用户界面上的所述第二操作选项的点击,所述第一终端发送控制指令给所述第二终端,包括:所述第一终端还用于:响应于对所述拍照选项的点击,发送拍照指令给所述第二终端,所述拍照指令携带第一时间信息。
40.结合第二方面的系统,在一些实施例中,所述系统还包括:所述第二终端还用于接收所述拍照指令;所述第二终端还用于根据所述第一时间信息,在预定时刻执行拍照操作,获取第一照片;所述第二终端还用于向所述第一终端发送所述第一照片;所述第一终端还用于接收并保存所述第一照片至第一文件夹,所述第一文件夹的名称中包括所述第二终端的标识。
41.结合第二方面的系统,在一些实施例中,所述系统还包括:在预设时间内,所述第一终端接收用户的第一操作;所述第二终端接收用户的第二操作;则所述第一终端响应所述第一操作。
42.结合第二方面的系统,在一些实施例中,所述第二终端将所述第二用户界面发送至第一终端,所述第一终端显示所述第二用户界面具体包括:所述第二终端还用于将所述第二用户界面转换为数据流;所述第二终端还用于将所述数据流封装为分布式数据流;所述第二终端还用于将所述分布式数据流通过socket通道发送至所述第一终端;所述第一终端还用于将所述分布式数据流还原为数据流;所述第一终端还用于将所述数据流转换为所述第二用户界面;所述第一终端还用于显示所述第二用户界面。
43.结合第二方面的系统,在一些实施例中,所述第一终端发送控制指令给所述第二终端,所述第二终端接收所述第一终端发送的所述控制指令具体包括:所述第一终端还用于将所述控制指令转换为binder指令;所述第一终端还用于将所述binder指令封装为分布式binder;所述第一终端还用于将所述分布式binder通过socket通道发送至所述第二终端;所述第二终端还用于将所述分布式binder还原为所述binder指令;所述第二终端还用于将所述所述binder指令转换为所述控制指令;所述第二终端还用于接收所述第一终端发送的所述控制指令。
44.结合第二方面的系统,在一些实施例中,所述系统还包括:当所述第一终端关闭所述第一应用时,所述第一终端与所述第二终端断开连接。
45.第三方面,本技术实施例提供了一种终端,所述终端包括一个或多个处理器、存储器;该存储器与该一个或多个处理器耦合,该存储器用于存储计算机程序代码,该计算机程序代码包括计算机指令,该一个或多个处理器调用该计算机指令以使得该终端执行第一方面或第二方面任意一种实施方式中的数据共享和指令操作控制方法。
46.第四方面,本技术实施例提供了一种计算机存储介质,包括计算机指令,当计算机指令在电子设备上运行时,使得电子设备执行上述任一方面任一项可能的实现方式中的数据共享和指令操作控制方法。
47.第五方面,本技术实施例提供了一种计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行上述任一方面任一项可能的实现方式中的数据共享和指令操作控制方法。
附图说明
48.图1a为本技术实施例提供的一种终端100与附近设备(终端101、终端102、终端103)图;
49.图1b为本技术实施例提供的一种终端100侧显示出终端100发现到的附近设备列表图;
50.图2为本技术实施例提供的一种设备的硬件架构示意图;
51.图3a-图3l为实施例一提供的一组ui示意图;
52.图4a-图4e为实施例一提供的一组ui示意图;
53.图5a-图5d为实施例一提供的一组ui示意图;
54.图6为本技术实施例一提供的一种方法流程图;
55.图7a-图7g为本技术实施例二提供的一组ui示意图;
56.图8为本技术实施例二提供的一种数据共享和指令操作控制方法流程图;
57.图9a为本技术实施例提供的一种近距离跨设备通信示意图;
58.图9b为本技术实施例提供的一种控制数据跨设备传输的示意图;
59.图9c为本技术实施例提供的一种相机app的能力示意图;
60.图10为本技术实施例提供提供的一种设备间的远程数据传输示意图;
61.图11为本技术实施例提供提供的一种设备间的远程控制方法。
具体实施方式
62.下面将结合附图对本技术实施例中的技术方案进行清除、详尽地描述。其中,在本技术实施例的描述中,除非另有说明,“/”表示或的意思,例如,a/b可以表示a或b;文本中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况,另外,在本技术实施例的描述中,“多个”是指两个或多于两个。
63.以下,术语“第一”、“第二”仅用于描述目的,而不能理解为暗示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征,在本技术实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。
64.本技术提供了一种数据共享和指令操作控制方法,本技术是基于系统原生机制的跨进程能力,提供一个设备之间无需通过任何账号或互联网,能够在近距离快速建立连接并能够进行数据共享和指令操作控制的方法。
65.该方法可以包括以下几个步骤:
66.步骤一,终端100搜索与发现附近设备。
67.如图1a所示,终端100搜索与发现附近设备,附近设备可以包括终端101、终端102、终端103。图1a中示出的终端100的附近设备可以不限于上述图1a中的三个(终端101、终端102、终端103),还可以有更多或更少,图1a只是示例性的以三个附近设备解释本技术,不应构成限定。
68.以终端100是蓝牙通信设备为例,终端100开启蓝牙功能并开始搜索附近设备(终端101、终端102、终端103),终端100向附近设备(终端101、终端102、终端103)发送广播包,开启蓝牙功能的附近设备(终端101、终端102、终端103)接收并响应终端100发送的广播包,开启蓝牙功能的附近设备(终端101、终端102、终端103)的设备名称会显示在终端100发现到的附近设备列表中。
69.如图1b所示,终端100侧会显示出终端100发现到的附近设备列表201,列表201中会显示终端100发现的附近设备(终端101、终端102、终端103)的设备名称,如“huawei p30 pro”(终端101的设备名称),“danneil”(终端102的设备名称),“huawei mate20pro”(终端103的设备名称)。
70.不限于图1b所示的终端100搜索与发现附近设备的方式,还可以是下述实施例一中图3c-图3i实施例介绍的方法。
71.不限于蓝牙通信,终端100还可以通过其他无线通信方式,如无线局域网(wireless local area networks,wlan)、wi-fi直连(wireless fidelity peer to peer,wi-fi p2p)、wi-fi softap、超宽带(ultra-wideband,uwb)、近距离无线通信技术(near field communication,nfc)等无线通信方式进行搜索与发现附近设备。
72.可以理解的是,上述列举的无线通信方式仅用于解释本技术中终端100搜索与发现附近设备,本技术在此不做限定。
73.步骤二,终端100选择与附近设备建立连接。
74.终端100监测到附近设备列表201中的设备名称被用户选择(例如单击),终端100与被用户选择的设备名称对应的设备建立连接。例如,终端100监测到可以点击列表201中
的设备名称“huawei p30 pro”(终端101的设备名称),终端100与终端101建立连接。
75.示例性的,通过蓝牙通信建立连接的终端100与终端101之间可以进行数据共享和操作控制。
76.步骤三,建立通信连接的终端101和终端100可以进行数据共享和操作控制。
77.终端101显示一个或多个应用程序的用户界面(例如相机用户界面),终端101将该用户界面发送至终端100,终端100接收并显示该用户界面(终端100显示的终端101的用户界面按比例放大或缩小或不变)。终端100显示的终端101的用户界面布局和终端101显示的用户界面布局是一样的,这样,实现终端100的用户通过该用户界面对终端101进行控制。
78.例如,在拍照应用场景中,终端101将终端101的相机用户界面发送至终端100,终端100接收并显示该相机用户界面,该相机用户界面可以是终端101的摄像头采集的拍照预览界面。需要说明的是,终端100按比例放大或缩小显示终端101的相机用户界面,终端100显示的终端101的相机用户界面布局和终端101的相机用户界面布局是一样的。同时终端101将相机用户界面的取景框中的取景图像每隔固定时间(例如0.01秒)发送至终端100,终端100接收并显示该取景图像。
79.又例如,在音乐播放应用场景中,终端101的音乐播放界面随着歌曲播放进度变化而不断变化,音乐播放界面包括当前播放音乐名称、播放进度条、当前播放音乐歌词等。终端101将终端101的音乐播放界面每隔固定时间(例如0.01秒)发送至终端100,终端100接收并显示该音乐播放界面(终端100显示的终端101的音乐播放界面按比例放大或缩小)。
80.并且,终端100显示的终端101的用户界面可以响应用户操作(例如单击),终端100根据用户操作(例如单击)生成控制指令,该控制指令携带了用户操作信息(可以称为参数信息),终端100将控制指令发送至终端101,终端101接收控制指令并识别控制指令中的参数信息,终端101执行控制指令对应的预设功能。
81.例如,在拍照应用场景中,终端100显示的终端101的相机用户界面接收用户单击“瘦身”控件的操作,终端100根据用户单击“瘦身”控件的操作生成“瘦身”控制指令,“瘦身”控制指令中携带了“瘦身”参数(例如“瘦身”部位、“瘦身”程度等),终端100将“瘦身”控制指令发送至终端101,终端101接收拍照控制指令并识别“瘦身”控制指令中的“瘦身”参数,终端101执行“瘦身”控制指令预设的功能,终端101的用户界面显示“瘦身”参数控制后的图像,终端101将“瘦身”参数控制后的图像发送至终端100,终端100显示“瘦身”参数控制后的图像。
82.通过该方法可以实现跨设备的数据共享和操作控制,该方法提高了数据传输的实时性,方便人们的交互。
83.接下来,介绍本技术中提及的设备的硬件架构。
84.设备可以是上述提及的终端100、终端101、终端102、终端103等等。
85.设备可以是智能手机、平板电脑等设备。这里以智能手机为例对本技术的实施例进行详细。
86.图2示出了设备的硬件架构示意图。
87.应该理解的是,图2所示设备仅是一个范例,并且设备可以具有比图2中所示的更多的或者更少的部件,可以组合两个或多个的部件,或者可以具有不同的部件配置。图中所示出的各种部件可以在包括一个或多个信 号处理和/或专用集成电路在内的硬件、软件、
或硬件和软件的组合中实现。
88.设备可以包括:处理器210,外部存储器接口220,内部存储器221,通用串行总线(universal serial bus,usb)接口230,充电管理模块240,电源管理模块241,电池242,天线1,天线2,移动通信模块250,无线通信模块260,音频模块270,扬声器270a,受话器270b,麦克风270c,耳机接口270d,传感器模块280,按键290,马达291,指示器292,摄像头293,显示屏294,以及用户标识模块(subscriber identification module,sim)卡接口295等。其中传感器模块280可以包括压力传感器280a,陀螺仪传感器280b,气压传感器280c,磁传感器280d,加速度传感器280e,距离传感器280f,接近光传感器280g,指纹传感器280h,温度传感器280j,触摸传感器280k,环境光传感器280l,骨传导传感器280m等。
89.可以理解的是,本发明实施例示意的结构并不构成对设备的具体限定。在本技术另一些实施例中,设备可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
90.处理器210可以包括一个或多个处理单元,例如:处理器210可以包括应用处理器(application processor,ap),调制解调处理器,图形处理器(graphics processing unit,gpu),图像信号处理器(image signal processor,isp),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,dsp),基带处理器,和/或神经网络处理器(neural-network processing unit,npu)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
91.其中,控制器可以是设备的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
92.处理器210中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器210中的存储器为高速缓冲存储器。该存储器可以保存处理器210刚用过或循环使用的指令或数据。如果处理器210需要再次使用该指令或数据,可从存储器中直接调用。
93.在本技术的实施例中,处理器210通过运行存储在内部存储器221的指令,可以执行本技术的数据共享和指令操作控制方法。
94.设备的无线通信功能可以通过天线1,天线2,移动通信模块250,无线通信模块260,调制解调处理器以及基带处理器等实现。
95.天线1和天线2用于发射和接收电磁波信号。设备中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
96.移动通信模块250可以提供应用在设备上的包括2g/3g/4g/5g等无线通信的解决方案。移动通信模块250可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,lna)等。移动通信模块250可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块250还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块250的至少部分功能模块可以被设置于处理器210中。在一些实施例中,移动通信模块250的至少部分功能模块可以与处理器210的至少部分模块被设置在同一个器件中。
97.无线通信模块260可以提供应用在设备上的包括无线局域网(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)等无线通信的解决方案。无线通信模块260可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块260经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器210。无线通信模块260还可以从处理器210接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
98.在一些实施例中,设备的天线1和移动通信模块250耦合,天线2和无线通信模块260耦合,使得设备可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯系统(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)。
99.在本技术的实施例中,无线通信模块260用于设备间建立连接,例如在终端101和终端100之间传输图片、视频、文档等数据,以及在终端101和终端100之间传输控制指令。
100.显示屏294用于显示接收的其他设备的应用程序的用户界面等。显示屏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)等。在一些实施例中,设备可以包括1个或n个显示屏294,n为大于1的正整数。
101.终端100可以通过isp,摄像头293,视频编解码器,gpu,显示屏294以及应用处理器等实现拍摄功能。
102.isp用于处理摄像头293反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给isp处理,转化为肉眼可见的图像。isp还可以对图像的噪点,亮度,肤色进行算法优化。isp还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,isp可以设置在摄像头293中。
103.摄像头293用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,ccd)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,cmos)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给isp转换成数字图像信号。isp将数字图像信号输出到dsp加工处理。dsp将数字图像信号转换成标准的rgb,yuv等格式的图像信号。在一些实施例中,设备可以包括1个或n个摄像头293,n为大于1的正整数。
104.下面以拍照应用场景为例,结合多个实施例介绍本技术提供的一种实时数据共享
和指令操作控制方法。
105.实施例一
106.实施例一中,控制方可以控制一个被控方进行拍照。控制方可以是前述终端100,被控方可以是前述终端101。这样,使用终端100的用户在请别人帮自己拍照时,可以实时观看别人终端(即终端101)上采集的图像、相机构图方式、相机变焦信息、相机特效等,还可以直接控制终端101改变拍摄参数,使得最终获得的照片能更贴近使用终端100的用户的想法。
107.为了便于描述实施例,将终端100的相机app的用户界面称为第一用户界面;终端101的相机app的用户界面称为第二用户界面。
108.终端100和终端101开启相机app,终端100搜索发现并连接附近设备终端101。
109.在一些可能的实施例中,终端100可以通过如前述图1b所示出的方式搜索发现并连接附近设备终端101,在终端100和终端101建立连接后,终端100和终端101再分别开启相机app,本技术在此不做限定。
110.在一些可能的实施例中,可以通过终端101搜索附近设备,在终端101发现附近终端100后,由终端101向终端100发送连接请求,本技术在此不做限定。
111.终端101向终端100传输第二用户界面,同时终端101将第二用户界面的取景框中的图像以固定周期(例如0.01秒)传输至终端100,终端100的相机app接收并显示终端101的第二用户界面和终端101以固定周期(例如0.01秒)传输的第二用户界面的取景框中的图像。
112.在一些可能的实施例中,终端100搜索发现并连接附近设备终端101后,终端100只用于显示第二用户界面和第二用户界面的取景框中的图像,终端100不需要打开相机app,本技术在此不做限定。
113.终端100可以控制终端101的拍摄,例如加上自己喜欢的特效,想要拍的瘦一点和白一点等。终端100的第一用户界面接收用户第一操作(例如选择“瘦身”特效),终端100根据用户第一操作(例如选择“瘦身”特效)生成“瘦身”控制指令,终端100将“瘦身”控制指令传输至终端101,终端101接收并响应“瘦身”控制指令,终端101识别“瘦身”控制指令中的“瘦身”参数(例如“瘦身”程度和“瘦身”部位等),终端101的相机app根据“瘦身”参数对终端101的第二用户界面的取景框中的图像进行图像处理,处理后的图像所显现的拍摄对象的体型符合终端100的“瘦身”用户操作对应的“瘦身”需求;终端101每隔固定时间(例如0.01秒)发送终端101的第二用户界面的取景框中的图像(包括根据“瘦身”参数对终端101的相机app的用户界面的取景框中的图像进行了图像处理之后的图像)至终端100,终端100的相机app显示终端101每隔固定时间(例如0.01秒)发送的第二用户界面的取景框中的图像(包括根据“瘦身”参数对第二用户界面的取景框中的图像进行了图像处理之后的图像)。
114.终端100接收用户第二操作(例如按下拍摄控件),终端100根据用户第二操作(例如按下拍摄控件)生成拍照控制指令,终端100延迟几秒(例如三秒)后将该拍照控制指令发送至终端101,终端101接收并响应拍照控制指令,终端101将拍摄的图像以图片格式保存至终端101的相册;终端101将拍摄的图像发送至终端100;同时,终端100接收并将拍摄的图像以图片格式保存至终端100的相册。
115.在一些可能的实施例中,终端100可以根据用户第二操作生成拍照控制指令,并将
拍照控制指令发送至终端101,终端101接收拍照控制指令,并延迟一段时间(例如五秒)后作出响应,终端101执行拍照操作。即,终端100可以将生成的拍照控制指令延迟一段时间后再发送给终端101,或者,也可以是终端101在接收拍照控制指令后,延迟一段时间再执行拍照操作。这样,当用户在终端100上按下拍摄控件后,可以有足够的时间把终端100放置在不影响拍照效果的位置上,例如把终端100放入衣服口袋后再进行拍照。
116.在一些可能的实施例中,在终端100确认拍照预览效果已满足用户期望时,终端100的用户可以通知终端101的用户执行拍照操作,此时,终端101可以接收用户操作(例如按下拍摄控件),终端101拍摄照片并将拍摄的图像以图片格式保存至终端101的相册;终端101将拍摄的图像发送至终端100;终端100接收图像并将拍摄的图像以图片格式保存至终端100的相册,本技术在此不做限定。
117.首先,介绍实施例一涉及的人机交互。
118.图3a所示的是终端100的主屏幕的用户界面,用户界面中显示了多个应用图标(包括相机应用图标301、图库应用图库302)。
119.图3a中的相机应用图标301可以接收用户操作(例如单击),响应于该操作,终端100可以显示出如图3b所示的第一用户界面303。
120.在一些实施例中,终端100的相机app仅用于显示终端101的第二用户界面和终端101的第二用户界面的取景框中的图像、控制终端101的拍摄,终端100不进行拍摄行为,因此终端100的相机硬件设备可以不开启,节省消耗。本技术在此不做限定。
121.图3b所示的是终端100显示自己的相机app的用户界面303和取景图像的ui图,用户界面303也可以称为第一用户界面303,第一用户界面303包括预览框304、多个拍摄模式选项、拍摄控件306、最近一次拍摄图片略缩图区域307、旋转拍摄方向控件。
122.其中,多个拍摄模式选项包括闪光灯控件、特效控件、设置控件305。
123.预览框304中显示的终端100的相机app的当前取景图像。图3b中的设置控件305可以接收用户操作(例如单击),响应于该操作,终端100显示如图3c所示的设置界面308。
124.旋转拍摄方向控件为切换前置或后置摄像头控件。
125.图3c-图3f所示的是终端100搜索和发现附近设备(例如终端101)的ui图。
126.图3c所示的设置界面308包括分辨率控件,分辨率是“[4:3]13mp”;地理位置开关控件,地理位置开启;设备发现和连接控件309,设备发现和连接选项当前为关闭状态;拍摄静音开关控件,拍摄静音开启;定时拍摄开关控件,定时拍摄关闭;声控拍摄开关控件,声控拍摄关闭。设备发现和连接控件309可以接收用户操作(例如单击),响应于该操作,终端100开启设备发现和连接功能。
[0127]
响应于设备发现和连接开关309显示开启状态,终端100的相机app的用户界面显示如图3d所示的提示框310,该提示框310用于提醒终端100的用户是否开始搜索和发现附近设备,提示框310中包括确认控件311和取消控件312。
[0128]
确认控件311可以接收用户操作(例如单击),响应于该操作,终端100的相机app的用户界面显示如图3e所示的提示框313,提示框313包括“正在搜索附近设备...”的提示信息,提示框313内的提示信息用于提醒用户终端100正在搜索附近设备。
[0129]
响应于终端100的搜索和发现附近设备操作,终端100的相机app的用户界面显示如图3f所示的附近设备列表314,该列表314用于显示终端100搜索和发现的附近设备的设
备名称,列表314中包括有附近设备的设备名称“huawei p30 pro”、“danneil”、“huawei mate20 pro”,还包括有连接控件315、连接控件316、连接控件317,连接控件315、连接控件316、连接控件317可以接收用户操作(例如单击),与列表314中的设备名称对应的设备建立连接。
[0130]
例如,连接控件315接收用户操作(例如单击),终端100可与终端101(设备名称“huawei p30 pro”)建立连接;连接控件316接收用户操作(例如单击),终端100可与终端102(设备名称“danneil”)建立连接;连接控件317接收用户操作(例如单击),终端100可与终端103(设备名称“huawei mate20 pro”)建立连接。示例性地,连接控件315接收用户操作(例如单击),响应于该操作,终端100(设备名称“versual”)向终端101(设备名称“huawei p30 pro”)发送建立连接请求。
[0131]
图3g-图3i所示的是终端101响应终端100的建立连接请求并与终端101建立连接的ui图。
[0132]
响应于终端100的建立连接请求,终端101的相机app用户界面显示如图3g所示的提示框318,该提示框318中包括有“要连接“versual”吗”的提示信息、确定控件319和取消控件320,该提示框318中的提示信息用于提示终端101的用户是否同意与终端100(设备名称“versual”)建立连接。
[0133]
提示框318中的确定控件319可以接收用户操作(例如单击),响应于该操作,终端100的相机app的用户界面显示验证码提示框,该验证码提示框内的验证码为终端100预设的验证码,例如该验证码提示框内的验证码可以是“12345”。终端100的用户可将验证码提示框内显示的验证码“12345”告诉操作终端101的用户。
[0134]
在一些实施例中,当提示框318中的确定控件319接收用户操作后,终端100也可以不弹出验证码。终端100的用户可查看预先设置的用于连接的验证码,并将预先设置的验证码告诉操作终端101的用户。
[0135]
在另外一些实施例中,当终端100向终端101发送建立连接请求后,也可以由操作终端100的用户在终端100上输入用于建立连接的二维码,本技术对此不做限制。
[0136]
终端101的相机app的用户界面显示如图3h所示的提示框321,该提示框321用于提醒用户输入验证码。提示框321可以接收用户点击操作输入验证码,例如验证码可以是“12345”,终端101响应于用户输入的验证码,终端101将验证码“12345”发送至终端100,终端100接收终端101发送的验证码“12345”,若该验证码“12345”与终端100预设置的验证码一致,则终端101的相机app的用户界面显示如图3i所示的提示框322,提示框322中包括“versual连接成功!”的提示信息,该提示框322中的提示信息用于提示终端101与终端100连接成功。
[0137]
终端100的相机app也会显示提示信息,该提示信息用于提示终端100与终端101连接成功。
[0138]
在一些实施例中,若终端101与终端100之前已经建立过连接,则当终端100再次向终端101发起建立连接请求时,终端101可以省略接收用户输入验证码的步骤,直接与终端100建立连接,简化用户操作。本技术在此不做限定。
[0139]
终端100与终端101建立连接后,终端101将第二用户界面传输至终端100,并且终端101将第二用户界面的取景框中的取景图像以固定时间(例如0.01秒)传输至终端100,终
端100的相机app显示第二用户界面和显示终端101每隔固定时间(例如0.01秒)发送的第二用户界面的取景框中的取景图像。
[0140]
图3j所示的相机用户界面323是终端101显示自己的相机app的用户界面,相机用户界面323也可以称为第二用户界面323,第二用户界面323包括取景框331、多个拍摄模式选项、拍摄控件329、最近一次拍摄图片略缩图区域330、旋转拍摄方向控件328。
[0141]
其中,多个拍摄模式选项包括感光度(international standards organization,iso)控件325、快门速度(shutter)控件326、特效(effect)控件327。
[0142]
取景框331中显示的是终端101的相机app的取景图像,可以理解的是,终端101的相机app每隔固定时间(例如0.01秒)获取终端101的相机app的当前取景图像并将取景图像显示在取景框331中。取景框331中显示的人物即为操作终端100的用户的图像。
[0143]
旋转拍摄方向控件328为切换前置或后置摄像头控件。
[0144]
在一些实施例中,如图3j所示,第二用户界面323还包括终端101的相机app拍摄参数列表324,拍摄参数列表324中包括拍摄参数iso,iso的值为100,拍摄参数shutter,shutter的值为500,拍摄参数effect,effect为美白(white)。本技术在此不做限定。
[0145]
可以理解的是,终端101接收用户操作修改了拍摄参数,则拍摄参数列表324中的对应的拍摄参数的值显示的是用户操作修改的拍摄参数的值。例如,用户修改了拍摄参数iso,并将iso的值修改为110,则拍摄参数列表324中拍摄参数iso的值显示为110。
[0146]
图3k-图3l是终端100侧的相机app由显示自己的相机app的取景图像和终端100的第一用户界面变换为终端100侧的相机app显示终端101每隔固定时间(例如0.01秒)发送的第二用户界面的取景框中的图像和终端101的第二用户界面的ui图。
[0147]
图3k为终端100的相机app的用户界面显示的是自己的相机app的取景图像和终端100的第一用户界面,对图3k的描述参见ui图3b,在此不再赘述。
[0148]
图3l为终端100的相机app显示的终端101每隔固定时间(例如0.01秒)发送的第二用户界面的取景框中的图像和终端101的第二用户界面,图3l包括用户界面332、和拍摄参数列表334和取景框333中的取景图像。
[0149]
其中,用户界面332为终端101向终端100传输的第二用户界面,对用户界面332的介绍参见ui图3j实施例中对第二用户界面323的介绍,在此不再赘述。
[0150]
取景框333中的取景图像为终端101每隔固定时间(例如0.01秒)向终端101发送的第二用户界面的取景框中的图像。
[0151]
拍摄参数列表334内的拍摄参数为终端101向终端100传输的终端101的相机app拍摄参数列表内的拍摄参数,具体的参见ui图3j实施例中对终端101的相机app拍摄参数列表324的介绍,在此不再赘述。
[0152]
在一些实施例中,终端100的显示屏和终端101的显示屏大小不一样,因此终端101将终端101的第二用户界面发送至终端100,终端100显示的终端101的第二用户界面成比例放大或缩小。本技术在此不做限定。
[0153]
在一些实施例中,终端100和终端101可能不是一个型号的终端设备,因此拍摄参数列表331和拍摄参数列表334的形状和显示位置可能不同。对于拍摄参数列表331和拍摄参数列表334的形状和显示位置在此不做限定。
[0154]
在一些实施例中,终端100的第一用户界面可以不显示拍摄参数列表334。本技术
在此不做限定。
[0155]
图4a-图4e是终端100侧接收用户第一操作(例如选择“瘦身”特效)的ui图,终端100根据用户第一操作(例如选择“瘦身”特效)生成“瘦身”控制指令,终端100将“瘦身”控制指令传输至终端101,终端101接收并响应“瘦身”控制指令,终端101识别“瘦身”控制指令中的“瘦身”参数(例如“瘦身”程度和“瘦身”部位等),终端101的相机app根据“瘦身”参数对终端101的第二用户界面的取景框中的图像进行图像处理,处理后的图像所显现的拍摄对象的体型符合终端100的“瘦身”用户操作对应的“瘦身”需求;终端101每隔固定时间(例如0.01秒)发送终端101的第二用户界面的取景框中的图像(包括根据“瘦身”参数对终端101的相机app的用户界面的取景框中的图像进行了图像处理之后的图像)至终端100,终端100的相机app显示终端101每隔固定时间(例如0.01秒)发送的第二用户界面的取景框中的图像(包括根据“瘦身”参数对第二用户界面的取景框中的图像进行了图像处理之后的图像)。
[0156]
如图4a,终端100的相机app的用户界面332里的多个拍摄模式选项(例如effect)可以接收用户操作(例如单击),响应于该操作,终端101的第二用户界面显示特效选择提示框,该特效选择提示框包括多种特效指令控件,例如“美白”控件、“磨皮”控件、“瘦身”控件、“长腿”控件等。
[0157]
在一些实施例中,不限于上述列举特效指令控件,特效选择提示框可以接收用户三指向左滑动操作,不限于三指滑动,还可以是双指滑动、单指滑动;不限于向左滑动操作,还可以是向右滑动操作、悬浮向左或向右滑动操作,本技术在此不作限定,等等。终端100响应于用于三指作用于特效选择提示框向左滑动操作,特效选择提示框将显示隐藏的特效指令控件,例如聚焦控件、调整拍摄速度控件等等,本技术在此不做限定。
[0158]
示例性的,所述“瘦身”控件可以接收用户操作(例如单击),终端100根据用户选择的“瘦身”特效生成“瘦身”控制指令,终端100将“瘦身”控制指令传输至终端101,终端101接收并响应“瘦身”控制指令,终端101的第二用户界面显示如图4b所示的提示框335,提示框335中包括“versual触发了“瘦身”特效”的提示信息,该提示框335中的提示信息用于提示终端101的用户终端100的用户触发了“瘦身”特效。
[0159]
终端101识别“瘦身”控制指令中的“瘦身”参数(例如“瘦身”程度和“瘦身”部位等),终端101的相机app根据“瘦身”参数对终端101的第二用户界面的取景框中的图像进行图像处理,处理后的图像所显现的拍摄对象的体型符合终端100的“瘦身”用户操作对应的“瘦身”需求
[0160]
如图4c所示,终端101的第二用户界面的取景框显示终端101根据“瘦身”参数对第二用户界面的取景框中的图像进行了图像处理之后的图像。
[0161]
如图4c所示,图4c为终端101的相机app显示的终端101根据“瘦身”参数对第二用户界面的取景框中的图像进行了图像处理之后的图像和终端101的第二用户界面的ui图,图4c包括第二用户界面323、拍摄参数列表324和取景框331中的终端101根据“瘦身”参数对第二用户界面的取景框中的图像进行了图像处理之后的图像。
[0162]
终端101响应于终端100触发的“瘦身”特效,图4c所示的拍摄参数列表324中的对应的拍摄参数的值显示的是终端100的用户操作修改的拍摄参数的值。
[0163]
图4c中拍摄参数列表324中拍摄参数和拍摄参数值包括,拍摄参数iso,iso的值为100,拍摄参数shutter,shutter的值为500,拍摄参数effect,effect为“瘦身”(thin)。
[0164]
图4d-图4e是终端100的相机app由显示终端101每隔固定时间(例如0.01秒)发送的第二用户界面的取景框中的图像切换为显示终端101每隔固定时间(例如0.01秒)发送的第二用户界面的取景框中根据“瘦身”参数对第二用户界面的取景框中的图像进行了图像处理之后的图像的ui图。
[0165]
图4d为终端100的相机app显示终端101每隔固定时间(例如0.01秒)发送的第二用户界面的取景框中的图像的ui图,该用户界面的介绍参见ui图3l,在此不再赘述。
[0166]
图4e为终端100的相机app显示终端101每隔固定时间(例如0.01秒)发送的第二用户界面的取景框中根据“瘦身”参数对第二用户界面的取景框中的图像进行了图像处理之后的图像的ui图。图4e包括用户界面332、拍摄参数列表334和取景框333中的取景图像(根据“瘦身”参数对第二用户界面的取景框中的图像进行了图像处理之后的图像)。
[0167]
拍摄参数列表344内的拍摄参数为终端101响应于终端100触发的“瘦身”控制指令后,终端101向终端100传输的的终端101的相机app的拍摄参数。
[0168]
图4c中拍摄参数列表334中拍摄参数和拍摄参数值包括,拍摄参数iso,iso的值为100,拍摄参数shutter,shutter的值为500,拍摄参数effect,effect为“瘦身”(thin)。
[0169]
如图5a-图5d所示,终端100接收用户第二操作(例如按下拍摄控件),终端100根据用户第二操作(例如按下拍摄控件)生成拍照控制指令,终端100延迟几秒(例如三秒)后将拍照控制指令传送至终端101,终端101接收并响应拍照控制指令,终端101的相机app将拍摄的图像显示在第一区域,并将拍摄的图像保存至终端101的相册,第一区域用于显示第二相机app最近一次拍摄图像的略缩图;终端101将拍摄的图像发送至终端100;同时,终端100显示拍摄的图像在第二区域,并将拍摄的图像保存至终端100的相册,第二区域用于显示第一相机app最近一次拍摄图像的略缩图。
[0170]
如图5a所示,终端100的拍摄控件可以接收用户操作(例如单击),终端100根据用户操作生成拍照控制指令,终端100延迟几秒(例如三秒)后,终端100将拍照控制指令传送至终端101,这样终端100的用户可以有时间把手里操作的终端100放到不影响拍照的位置。同时,终端101的第二用户界面会显示提示信息,该提示信息用于提示终端101的用户终端100的用户触发了拍照控制指令,终端101将于三秒后开始拍照。
[0171]
如图5b所示,终端101接收并响应拍照控制指令,终端101的相机app将拍摄的终端101的第二用户界面的取景框中的取景图像显示在第一区域335,并将拍摄的终端101的第二用户界面的取景框中的取景图像以图片格式保存至终端101的相册,第一区域335用于显示终端101的相机app最近一次拍摄图像的略缩图。
[0172]
终端101将拍摄的终端101的第二用户界面的取景框中的取景图像发送至终端100;同时,终端100将拍摄的终端101的第二用户界面的取景框中的取景图像显示在第二区域,并将拍摄的终端101的第二用户界面的取景框中的取景图像以图片格式保存保存至终端100的相册,第二区域用于显示终端100的相机app最近一次拍摄图像的略缩图。
[0173]
终端100可以接收用户作用于图库应用图标312的操作(例如单击),响应于该操作,该终端100可以显示如图5c所示的图库用户界面336。
[0174]
如图5c所示,该图库用户界面336中包括有一个或多个相册选项(例如,相机相册、截屏目录相册、微信相册、微博相册,huawei p30 pro相册337,等等)。其中,每个相册选项下方都有该相册的名称及相册中照片和/或视频数目,每个相册中包括有一个或多张图片
的缩略图(例如,缩略图338)。例如,相机相册中包括有771张照片,截屏目录相册中包括有446张照片,微信相册中包括有225张照片,微博相册中包括有172张照片,huawei p30 pro相册337中包括有1张照片。该图库用户界面336中还包括有新建相册控件。该新建相册控件可用于触发在图库用户界面336中建立新的相册。
[0175]
其中,huawei p30 pro相册名称是终端101的设备名称。终端100与终端101连接后,终端100控制终端101拍摄的图像保存在终端100的相册内,该拍摄图像保存至终端100的相册内的相册的名称以终端101的设备名称命名。
[0176]
终端100可以接收用户作用于缩略图338的操作(例如单击),响应于该操作,终端100可以显示如图5d所示的图片展示界面339。
[0177]
如图5d所示,该图片展示界面339的标题可以是“2020年2月15日”。图片展示界面339中显示包括有图片340和菜单341。其中,该菜单341中包括有分享按钮342、收藏按钮343、编辑按钮344、删除按钮345、更多按钮346。分享按钮342可用于触发打开文件分享界面。收藏按钮343可用于触发收藏该图片340到图片收藏文件夹。编辑按钮344可用于触发对图片340的旋转、修剪、增加滤镜、虚化等编辑功能。删除按钮345可用于触发删除该图片340。更多按钮346可用于触发打开更多与该图片340相关的功能。
[0178]
在一些实施例中,该菜单341为可选的。该菜单341可以在该图片展示界面339中隐藏,例如,用户单击图片340可以隐藏该菜单341,再次单击图片340可以显示该菜单341,本技术不作限制。
[0179]
终端100控制终端101进行拍摄时,终端100可以接收用户操作,终端101也可以接收用户操作,终端100接收的用户操作与终端101接收的用户操作可能存在操作冲突,操作冲突可以是对于相同操作的冲突,举例来说,终端100接收用于调节快门速度的操作,终端101也接收用于调节快门速度的操作,此时需要确定优先响应哪个设备接收的用户操作。操作冲突还可以是对于不同操作的冲突,举例来说,终端100接收用于调节焦距的操作,终端101接收用于拍摄图像的操作,此时也需要确定响应哪个设备接收的用户操作。处理操作冲突可以采取以下四种方式中的任意一种:
[0180]
方式一、时间优先级。在预设时间区间(例如0.2秒)内,终端100接收用户操作时间早于终端101接收用户操作时间,则终端100响应用户操作,终端101不再响应用户操作,即第一操作的优先级高于第二操作的优先级。
[0181]
方式二、用户优先级。在预设时间区间(例如0.2秒)内,终端100接收用户操作,终端100为控制方,终端101接收用户操作,终端101为被控制方,则终端100响应用户操作,终端101不再响应用户操作;即控制方操作优先级高于被控制方。
[0182]
在一些实施例中,控制方与被控制方哪个优先级更高是可以设置的,本技术在此不做限定。
[0183]
方式三、操作优先级。在预设时间区间(例如0.2秒)内,终端100接收用户操作(例如调节焦距),终端101接收用户操作(例如按下拍摄按钮),则终端101响应用户操作(例如按下拍摄按钮);即拍摄操作的优先级高于调节焦距操作的优先级。操作优先级的关系例如为:拍照动作》变焦动作,对焦动作》变焦动作,拍照动作》对焦动作,拍照动作》特效调节操作。
[0184]
方式四、操作合理性。在预设时间区间(例如0.2秒)内,终端100先接收用户操作
(调节焦距为2.0x),然后终端101接收用户操作(调节焦距为1.0),终端100继续接收用户操作(调节焦距为3.0),在这样的场景中,控制方和被控制方的操作意图出现了冲突,控制方100希望焦距变大,即由2.0-3.0,在控制方100增大焦距的过程中,被控制方输入了减小焦距的操作,此时调节焦距为1.0的操作应当丢弃,即终端101接收的操作被舍弃。
[0185]
需要说明的是,上述四种处理操作冲突的方式仅用于解释本技术,不应构成限定。
[0186]
需要说明的是,上述预设时间区间(例如0.2秒)仅用于解释本技术,不应构成限定。
[0187]
在拍摄完成后,终端100与终端101可以断开连接,可以采用以下三种方式中的任意一种方式:
[0188]
方式一、终端100和终端101任意一个设备退出相机app,则终端100与终端101断开连接。
[0189]
方式一、终端100和终端101任意一个设备关闭了蓝牙功能或wi-fi直连等无线通信功能,则终端100与终端101断开连接。
[0190]
方式三、终端100和终端101任意一个设备在相机app的用户界面中设置界面里关闭了设备发现和连接功能,则终端100与终端101断开连接。方式三与搜索和发现附近设备方法相似,在此不再赘述。
[0191]
需要说明的是,上述三种方式仅用于解释本技术,不应构成限定。
[0192]
基于上述实施例一的人机交互,介绍本技术实施例一的方法流程。
[0193]
图6示出了实施例一提供的一种数据共享和指令操作控制方法流程。其中,该方法流程图中涉及的设备包括有终端100和终端101。
[0194]
如图6所示,该方法包括:
[0195]
s601、终端100开启第一相机app,显示第一用户界面;其中,第一用户界面为第一相机app的用户界面,第一相机app安装在终端100上;第一用户界面包括取景框、多个拍摄模式选项和拍摄控件。
[0196]
其中,第一用户界面的取景框中显示的是第一相机app获取的取景图像。
[0197]
第一用户界面的多个拍摄模式选项包括闪光灯控件、特效控件、设置控件。
[0198]
s602、终端101开启第二相机app,显示第二用户界面;其中,第二用户界面为第二相机app的用户界面,第二相机app安装在终端101上;第二用户界面包括取景框、多个拍摄模式选项和拍摄控件。
[0199]
其中,第二用户界面的取景框中显示的是第二相机app获取的取景图像。
[0200]
第二用户界面的多个拍摄模式选项包括iso控件325、shutter控件326、effect控件327。
[0201]
s603、终端100与终端101建立连接。
[0202]
终端100与向终端101发起建立连接请求,终端101的第二用户界面显示提示框318,该提示框318用于提示终端101的用户,终端100触发了建立连接请求。
[0203]
终端101接收用户的确认连接操作,终端101的第二用户界面显示提示框321,该提示框321用于提示终端101的用户输入验证码。
[0204]
终端100接收终端101的用户输入的验证码,终端100验证终端101的用户输入的验证码与终端100预设的验证码一致,则终端100与终端101建立连接。
[0205]
具体的,终端100与终端101建立连接的方法和步骤可以参考上述图3b-图3i所示实施例,在此不再赘述。
[0206]
s604、终端101将第二用户界面发送至终端100。
[0207]
在一些实施例中,终端101只需执行一次将第二用户界面传输至终端100的操作。
[0208]
s605、终端101每隔固定时间(例如0.01秒)发送第二用户界面取景框中的图像至终端100。
[0209]
终端101的第二相机app每隔固定时间(例如0.01秒)获取第二界面的取景框中的取景图像并将取景图像显示在第二界面的取景框中。
[0210]
终端101将发送第二相机app每隔固定时间(例如0.01秒)获取第二界面的取景框中的取景图像至终端100。
[0211]
s606、终端100显示第二用户界面。
[0212]
终端100接收并显示第二用户界面,即终端100的第一相机app显示第二用户界面。
[0213]
在一些实施例中,终端100的显示屏和终端101的显示屏大小不一样,因此终端101将终端101的第二用户界面发送至终端100,终端100的第一相机app显示的终端101的第二用户界面成比例放大或缩小。本技术在此不做限定。
[0214]
在一些实施例中,终端100接收并显示终端101发送的拍摄参数列表324中的拍摄参数和拍摄参数值。本技术在此不做限定。
[0215]
s607、终端100响应于终端101每隔固定时间(例如0.01秒)发送第二用户界面取景框中的图像,终端100显示终端101每隔固定时间(例如0.01秒)发送第二用户界面取景框中的图像
[0216]
终端100接收终端101每隔固定时间(例如0.01秒)发送的第二用户界面取景框中的图像并显示在终端100的第二用户界面的取景框中。
[0217]
s608、终端100的第二用户界面接收用户第一操作(例如选择拍摄参数)。
[0218]
例如,第一操作可以是选择“瘦身”特效。
[0219]
选择“瘦身”特效可以包括选择“瘦身”部位,例如瘦脸、瘦腿、瘦肚子等部位;
[0220]
选择“瘦身”特效还可以包括选择“瘦身”程度,例如瘦脸百分之三十、瘦腿百分之二十、瘦肚子百分之五十等;
[0221]
不限于选择“瘦身”特效,还可以是选择变焦参数等拍摄参数,本技术在此不做限定。
[0222]
s609、终端100根据用户第一操作(例如选择“瘦身”特效)生成“瘦身”控制指令。
[0223]“瘦身”控制指令是一种指令,“瘦身”控制指令可用于触发终端101对取景框中的图像进行“瘦身处理”,“瘦身”控制指令中包含了一些“瘦身”参数(瘦身程度、瘦身部分等)。这样,终端101就能够根据“瘦身”参数对终端101的用户界面的取景框中里的图像进行图像处理,处理后的终端101的用户界面的取景框中的图像包括的拍摄对象的体型符合“瘦身”参数所要求/所描述的体型。
[0224]
例如用户选择的“瘦身”特效的“瘦身”部位为瘦脸,“瘦身”程度为百分之三十,则“瘦身”控制指令中携带了“瘦身”参数,“瘦身”参数包括“瘦身”部位为脸、“瘦身”程度为百分之三十。
[0225]
终端101就能够根据“瘦身”参数对终端101的用户界面的取景框中里的图像进行
图像处理,对终端101的用户界面的取景框中的图像包括的拍摄对象脸部进行变瘦操作,变瘦的程度为原图像的百分之三十瘦。
[0226]
s610、终端100将“瘦身”控制指令发送至终端101。
[0227]
s611、终端101识别“瘦身”控制指令中的“瘦身”参数(例如“瘦身”程度和“瘦身”部位等)。
[0228]
终端101接收终端100发送的“瘦身”控制指令,终端101识别“瘦身”控制指令中的“瘦身”参数,“瘦身”参数包括“瘦身”部位为脸、“瘦身”程度为百分之三十。
[0229]
s612、终端101根据“瘦身”参数对第二用户界面的取景框中的图像进行图像处理,处理后的图像所显现的拍摄对象的体型符合终端100的“瘦身”用户操作对应的“瘦身”需求。
[0230]
终端101就能够根据“瘦身”参数对终端101的用户界面的取景框中里的图像进行图像处理,对终端101的用户界面的取景框中的图像包括的拍摄对象脸部进行变瘦操作,变瘦的程度为原图像的百分之三十瘦。
[0231]
在一些实施例中,终端101响应于“瘦身”控制指令,终端101的第一相机app的拍摄参数列表324内的拍摄参数effect的显示结果由原本的“white”变换为“thin”。
[0232]
s613、终端101每隔固定时间(例如0.01秒)发送第二用户界面的取景框中的图像(包括根据“瘦身”参数对第二用户界面的取景框中的图像进行了图像处理之后的图像)至终端100。
[0233]
在一些实施例中,终端101将第二相机app的拍摄参数发送至终端100。本技术在此不做限定。
[0234]
s614、终端100显示终端101每隔固定时间(例如0.01秒)发送第二用户界面的取景框中的图像(包括根据“瘦身”参数对第二用户界面的取景框中的图像进行了图像处理之后的图像)。
[0235]
终端100接收并将终端101每隔固定时间(例如0.01秒)发送第二用户界面的取景框中的图像(包括根据“瘦身”参数对第二用户界面的取景框中的图像进行了图像处理之后的图像)显示在终端100的第二用户界面的取景框中。
[0236]
在一些实施例中,终端100接收终端100的第二相机app发送的拍摄参数,终端100的第二用户界面显示终端100的第二相机app发送的拍摄参数。本技术在此不做限定。
[0237]
s615、终端100接收用户第二操作(例如按下拍照控件)。
[0238]
s616、终端100根据用户第二操作(例如“拍照”)生成“拍照”控制指令。
[0239]
s617、终端100向终端101发送“拍照”控制指令。
[0240]
终端100的第二用户界面的拍摄控件可以接收用户操作(例如单击),响应于该用户操作,终端100根据该用户操作生成“拍照”控制指令,终端100将“拍照”控制指令发送至终端101。
[0241]
s618、终端101将拍摄的图像显示在第一区域,并将拍摄的图像以图片格式保存至相册,第一区域用于显示第二相机app最近一次拍摄图像的略缩图。
[0242]
终端101接收并响应终端100发送的“拍照”控制指令,终端101将拍摄第二用户界面的取景框中的取景图像,终端101将拍摄的图像显示在终端101的第二用户界面的第一区域,并将拍摄的图像以图片格式保存至终端101的相册,第一区域用于显示第二相机app最
近一次拍摄图像的略缩图。
[0243]
s619、终端101将第二相机app拍摄的图像以图片格式发送至终端100。
[0244]
s620、终端100将拍摄的图像显示在第二区域,并将第二相机app拍摄的图像以图片格式保存至相册,第二区域用于显示第二相机app最近一次拍摄图像的略缩图。
[0245]
终端100接收终端100发送的第二相机app拍摄的图像,终端100将拍摄的图像显示在终端100的第二用户界面的第二区域,并将拍摄的图像保存至终端100的相册,第二区域用于显示终端101向终端100发送的第二相机app拍摄的图像。
[0246]
s621、终端101获取并显示第二用户界面的取景框中的图像。
[0247]
终端101的第二相机app每隔固定时间(例如0.01秒)获取第二界面的取景框中的取景图像并将取景图像显示在终端101的第二用户界面的取景框中。
[0248]
s622、终端101每隔固定时间(例如0.01秒)发送终端101的第二用户界面取景框中的图像至终端100。
[0249]
s623、终端100显示终端101每隔固定时间(例如0.01秒)发送的第二用户界面取景框中的图像。
[0250]
终端100接收终端101每隔固定时间(例如0.01秒)发送终端101的第二用户界面取景框中的图像,终端100并将终端101的第二用户界面取景框中的图像显示在终端100的第二用户界面的取景框中。
[0251]
s624、终端100与终端101断开连接。
[0252]
终端100与终端101断开连接后,终端100显示第一用户界面;其中,第一用户界面为第一相机app的用户界面,终端100的第一用户界面中的取景框显示的是终端100自己的取景图像。
[0253]
终端101显示第二用户界面;其中,第二用户界面为第二相机app的用户界面,终端101的第二用户界面中的取景框显示的是终端101自己的取景图像。
[0254]
终端100与终端101断开连接的方法参见前述实施例一的ui图部分介绍的终端100与终端101断开连接三种方式中的任意一种方式,在此不再赘述。
[0255]
终端100与终端101建立连接后,终端100可以显示终端101的取景图像,终端100可以控制终端101的拍摄,例如如何拍摄,例如如何调整角度,开启什么样的滤镜和特效等。通过该实施例,两台终端设备只需打开相机app,无需通过任何账号或互联网就可以建立连接,终端100与终端101可以进行快速的拍照实时画面共享,操作控制。提高了数据传输实时性,方便人们的交互。
[0256]
实施例二
[0257]
实施例二中,控制方可以控制多个(例如两个)被控方进行拍照。控制方可以是终端100,被控方可以是终端101和终端102。
[0258]
为了便于描述实施例,将终端100的相机app的用户界面称为第一用户界面;终端101的相机app的用户界面称为第二用户界面,终端102的相机app的用户界面称为第三用户界面。
[0259]
终端100搜索并连接附近设备终端101和终端102,终端100的第一用户界面可以显示终端101或终端102任意一个设备的相机app的用户界面和取景图像。示例性的,终端100与终端101第一建立连接,终端101向终端100传输第二用户界面和以固定周期(例如0.01
秒)传输终端101第二用户界面中的取景框中的取景图像,终端100的相机app接收并显示第二用户界面和第二用户界面中的取景框中的取景图像。
[0260]
同时终端100可以切换控制终端101或终端102任意一个设备进行拍摄,以满足用户对多种拍摄效果的需求,例如终端100控制终端101使用“瘦身”特效,终端100控制终端102使用取景框大小为“1:1”的窗口进行拍摄。
[0261]
终端100接收用户第一操作(例如选择控制设备),终端100响应用户第一操作(例如选择控制设备),终端100将数据传输通道切换为与终端102已建立的第二数据传输通道。
[0262]
终端100接收用户第二操作(例如选择使用取景框长宽比为“1:1”的窗口进行拍摄),终端100根据用户第二操作(例如选择使用取景框长宽比为“1:1”的窗口进行拍摄)生成“1:1”拍摄控制指令,终端100将“1:1”拍摄控制指令传输至终端102,终端102接收并响应“1:1”拍摄控制指令,终端102识别“1:1”拍摄控制指令中的拍摄参数(例如取景框长宽比为1:1等),终端102的相机app根据拍摄参数对终端102的第二用户界面的取景框的大小进行调整,处理后的取景框的大小符合终端100的用户对拍摄图像大小的需求;终端102发送终端102的第二用户界面的取景框中的图像至终端100,终端100的相机app显示终端102发送的第二用户界面的取景框中的图像。
[0263]
终端100接收用户第三操作(例如按下拍摄控件),终端100根据用户第三操作(例如按下拍摄控件)生成拍照控制指令,终端100延迟几秒(例如三秒)后将该拍照控制指令发送至终端102,终端102接收并响应拍照控制指令,将拍摄的图像以图片格式保存至终端102的相册;终端102将拍摄的图像发送至终端100;终端102将拍摄的图像以图片格式保存至相册。
[0264]
在一些可能的实施例中,终端102也可以接收用户第二操作(例如按下拍摄控件),终端102将拍摄的图像以图片格式保存至终端102的相册;终端102将拍摄的图像发送至终端100;终端100接收并将拍摄的图像以图片格式保存至终端100的相册,本技术在此不做限定。
[0265]
可以理解的是,终端100仅用于显示终端101或终端102的用户界面和取景图像,控制终端101或终端102进行拍摄,终端100不进行拍摄行为,终端100的相机硬件设备可以不开启,节省消耗。本技术在此不做限定。
[0266]
首先,介绍实施例二涉及的人机交互。
[0267]
终端100的相机app显示自己的相机app的用户界面和取景图像具体介绍参见实施例一的图3b,在此不再赘述。
[0268]
终端101的相机app显示自己的相机app的用户界面和取景图像具体介绍参见实施例一的图3j,在此不再赘述。
[0269]
图7a为终端102的相机app显示自己的相机app的用户界面和取景图像的ui图。图7a所示的相机用户界面347也可以称为第三用户界面347,第三用户界面347包括取景框348、多个拍摄模式选项、最近一次拍摄图片略缩图区域355、拍摄控件354、旋转拍摄方向控件353。
[0270]
其中,多个拍摄模式选项包括iso控件350、shutter控件351、effect控件352。
[0271]
取景框348中显示的终端102的相机app的取景图像。可以理解的是,终端102的相机app每隔固定时间(例如0.01秒)获取终端102的相机app的当前取景图像并将取景图像显
示在取景框348中。
[0272]
在一些实施例中,如图7a所示,第三用户界面347还包括终端102的相机app拍摄参数列表349,拍摄参数列表349中包括拍摄参数iso,iso的值为120,拍摄参数shutter,shutter的值为600,拍摄参数effect,effect为美白(white)。本技术在此不做限定。
[0273]
可以理解的是,终端102接收用户操作修改了拍摄参数,则拍摄参数列表349中的对应的拍摄参数的值显示的是用户操作修改的拍摄参数的值。
[0274]
首先,终端100与终端101和终端102建立连接。
[0275]
本实施例中,终端100搜索和发现终端101和终端102并与终端101和终端102建立连接的方法参考实施例一,在此不再赘述。
[0276]
终端100与终端101建立第一连接,则终端100与终端101建立第一数据传输通道,终端101向终端100传输第二用户界面和以固定周期(例如0.01秒)向终端100传输终端101的第二用户界面中的取景图像。终端100与终端102建立第二连接,则终端100与终端102建立第二数据传输通道,终端102向终端100传输第三用户界面和以固定周期(例如0.01秒)向终端100传输终端101的第三用户界面中的取景图像。
[0277]
终端100与终端101建立第一连接,终端101向终端100传输第二用户界面和以固定周期(例如0.01秒)向终端100传输终端101的第二用户界面中的取景图像。
[0278]
终端100可以控制终端101使用“瘦身”特效,具体的参见实施例一ui图4a-4e,在此不再赘述。
[0279]
终端100可以切换控制终端100的相机app显示的是终端101或终端102任意一个设备的用户界面和取景图像。
[0280]
如图7b-图7d所示,终端100接收用户第一操作(例如选择控制设备),终端100响应用户第一操作(例如选择控制设备),终端100将与终端101建立第一数据传输通道切换为与终端102已建立的第二数据传输通道。终端100的相机app显示的是终端102的第三用户界面和终端102的第三用户界面取景框中的取景图像。
[0281]
响应用户第一操作(例如选择控制设备),终端100的相机app的第一用户界面显示如图7b所示的选择提示框356,提示框356包括“请选择您要控制的设备?”的提示信息,提示框356中还包括有与终端100已建立连接的设备的设备名称控件“huawei p30 pro”、“danneil”,设备名称控件“huawei p30 pro”和设备名称控件“danneil”可以接收用户操作(例如单击),与提示框356中的设备名称对应的设备建立数据传输通道。例如,设备名称控件“huawei p30 pro”接收用户操作(例如单击),终端100可与终端101(设备名称“huawei p30 pro”)建立数据传输通道;设备名称控件“danneil”接收用户操作(例如单击),终端100可与终端102(设备名称“danneil”)建立数据传输通道。示例性地,如图7b所示,设备名称控件“danneil”接收用户操作(例如单击),响应于该操作,终端100(设备名称“versual”)与终端102(设备名称“danneil”)建立数据传输通道。
[0282]
如图7c-图7d所示,终端100侧的相机app的用户界面由显示终端101的相机app的用户界面和取景图像变换为显示终端102的相机app的用户界面和取景图像。
[0283]
终端100(设备名称“versual”)与终端102(设备名称“danneil”)建立数据传输通道,终端102向终端100传输第三用户界面和以固定周期(例如0.01秒)向终端100传输终端102的第三用户界面取景画面中的取景图像,终端100的相机app接收并显示第三用户界面
和终端102以固定周期(例如0.01秒)向终端100传输终端102的第三用户界面的取景画面中的取景图像。
[0284]
图7c为终端100的相机app显示终端101的相机app的用户界面和取景图像,对图7c的介绍参见ui图3l,在此不再赘述。
[0285]
图7d为终端100的相机app显示的是终端102的相机app的第三用户界面和终端102以固定周期(例如0.01秒)向终端100传输终端102的第三用户界面的取景画面中的取景图像。图7d包括用户界面357、取景框358、拍摄参数列表359和取景框358中的取景图像。
[0286]
其中,用户界面357为终端102向终端100传输的第三用户界面,对用户界面357的介绍参见ui图7a实施例中对第三用户界面347的介绍,在此不再赘述。
[0287]
取景框358中的取景图像为终端102每隔固定时间(例如0.01秒)向终端100发送的终端102的第三用户界面的取景框中的取景图像。
[0288]
拍摄参数列表359内的拍摄参数为终端102向终端100传输的终端102的相机app拍摄参数列表内的拍摄参数,具体的参见ui图7a实施例中对终端102的相机app拍摄参数列表349的介绍,在此不再赘述。
[0289]
在一些实施例中,终端100的显示屏和终端102的显示屏大小不一样,因此终端102将终端102的第三用户界面发送至终端100,终端100显示的终端102的第三用户界面成比例放大或缩小。本技术在此不做限定。
[0290]
在一些实施例中,终端100和终端102可能不是一个型号的终端设备,因此拍摄参数列表349和拍摄参数列表359的形状和显示位置可能不同。对于拍摄参数列表349和拍摄参数列表359的形状和显示位置在此不做限定。
[0291]
在一些实施例中,终端100的第一用户界面可以不显示拍摄参数列表359。本技术在此不做限定。
[0292]
终端100可以控制终端102的拍摄,控制终端102的拍摄效果与终端101不一样,满足用户对多种拍摄效果的需求。
[0293]
例如,终端100控制终端102使用取景框的长宽比为“1:1”的窗口进行拍摄。
[0294]
终端102识别“1:1”拍摄控制指令中的拍摄参数(例如取景框长宽比为1:1等),终端102的相机app根据拍摄参数(例如取景框长宽比为1:1等)对终端102的第三用户界面的取景框的大小进行调整,处理后的取景框的大小符合终端100的用户对拍摄图像大小的需求。
[0295]
如图7e所示,终端102的第三用户界面的取景框显示的是终端102根据拍摄参数(取景框长宽比例为1:1等)对第三用户界面的取景框大小进行调整之后的取景图像。
[0296]
图7e包括用户界面359、拍摄参数列表361和取景框360中的取景图像。
[0297]
终端102响应于终端100触发的“1:1”拍摄控制指令,取景框360的大小调整为长宽比为1:1,取景框360中的取景图像大小随着取景框360的大小调整而调整。
[0298]
图7f-图7g是终端100的相机app由显示终端102每隔固定时间(例如0.01秒)发送的第三用户界面的取景框中的图像切换为显示终端102每隔固定时间(例如0.01秒)发送的第二三用户界面的取景框大小进行调整之后的取景图像的ui图。
[0299]
图7f为终端100的相机app显示终端102每隔固定时间(例如0.01秒)发送的第三用户界面的取景框中的图像的ui图,该用户界面的介绍参见ui图7d,在此不再赘述。
[0300]
图7g为终端100的相机app显示终端102每隔固定时间(例如0.01秒)发送的第三用户界面的取景框大小进行调整之后的取景图像的ui图。图7g包括用户界面362、拍摄参数列表364和取景框363中的取景图像(根据拍摄参数(例如取景框长宽比例为1:1等)对第三用户界面的取景框大小进行调整之后的取景图像)。
[0301]
取景框363中的取景图像为终端102每隔固定时间(例如0.01秒)向终端100发送的终端102的第三用户界面的取景框360中的取景图像。
[0302]
拍摄参数列表364内的拍摄参数为终端102向终端100传输的终端102的相机app拍摄参数列表内的拍摄参数,具体的参见ui图7a实施例中对终端102的相机app拍摄参数列表349的介绍,在此不再赘述。
[0303]
终端100接收用户第三操作(例如按下拍摄控件),终端100根据用户第三操作(例如按下拍摄控件)生成拍照控制指令,终端100将拍照控制指令传送至终端102,终端102接收并响应拍照控制指令,终端102的相机app将拍摄的图像显示在第三区域,并将拍摄的图像以图片格式保存至终端102的相册,第三区域用于显示终端102的相机app最近一次拍摄图像的略缩图;终端102将拍摄的图像发送至终端100;同时,终端100显示拍摄的图像在第二区域,并将拍摄的图像以图片格式保存至终端100的相册,第二区域用于显示终端100的相机app最近一次拍摄图像的略缩图。具体内容与上述实施例一图5a-图5d所示实施例类似,在此不再赘述。
[0304]
终端100与终端102断开连接的方法与终端100与终端101断开连接的方法类似,本技术在此不再赘述。
[0305]
终端100控制终端101和终端102涉及的冲突处理参见实施例中终端100与终端101的操作冲突处理方法,本技术在此不再赘述。
[0306]
基于上述实施例二的人机交互,介绍本技术实施例二的方法流程。
[0307]
图8示出了实施例二提供的一种数据共享和指令操作控制方法流程图。其中,该方法流程图中涉及的设备包括有终端100、终端101和终端102。
[0308]
如图8所示,该方法包括:
[0309]
s801、终端100开启第一相机app,显示第一用户界面;其中,第一用户界面为第一相机app的用户界面,第一相机app安装在终端100上;第一用户界面包括取景框、多个拍摄模式选项和拍摄控件。
[0310]
其中,第一用户界面的取景框中显示的是第一相机ap获取的取景图像。
[0311]
第一用户界面的多个拍摄模式选项包括闪光灯控件、特效控件、设置控件。
[0312]
s802、终端101开启第二相机app,显示第二用户界面;其中,第二用户界面为第二相机app的用户界面,第二相机app安装在终端101上;第二用户界面包括取景框、多个拍摄模式选项和拍摄控件。
[0313]
其中,第二用户界面的取景框中显示的是第二相机app获取的取景图像。
[0314]
第二用户界面的多个拍摄模式选项包括iso控件325、shutter控件326、effect控件327。
[0315]
s803、终端102开启第三相机app,显示第三用户界面;其中,第三用户界面为第三相机app的用户界面,第三相机app安装在终端101上;第三用户界面包括取景框、多个拍摄模式选项和拍摄控件。
[0316]
其中,第三用户界面的取景框中显示的是第三相机app获取的取景图像。
[0317]
第三用户界面的多个拍摄模式选项包括iso控件350、shutter控件351、effect控件352。
[0318]
s804、终端100与终端101建立连接。
[0319]
s805、终端100与终端102建立连接。
[0320]
具体的,终端100与终端101建立连接的方法和步骤、终端100与终端102建立连接的方法和步骤可以参考上述实施例一图3b-图3i所示实施例,在此不再赘述。
[0321]
s806、终端101将第二用户界面发送至终端100。
[0322]
在一些实施例中,终端100与终端101第一建立连接,则终端100与终端101建立数据传输通道,终端101向终端100传输第二用户界面。
[0323]
s807、终端101每隔固定时间(例如0.01秒)发送第二用户界面取景框中的图像至终端100。
[0324]
s808、终端100响应于终端101发送的第二用户界面,终端100显示第二用户界面。
[0325]
s809、终端100响应于终端101每隔固定时间(例如0.01秒)发送第二用户界面取景框中的图像,终端100显示终端101每隔固定时间(例如0.01秒)发送第二用户界面取景框中的图像。
[0326]
对实施例二的方法流程中的s806、s807、s808、s809、的介绍参见实施例一的方法流程中的s604、s605、s606、s607。本技术在此不再赘述。
[0327]
s810、终端100接收用户第一操作(例如选择控制设备)。
[0328]
终端100响应用户第一操作(例如选择控制设备),终端100的相机app的第一用户界面显示如图7b所示的选择提示框356,提示框356包括“请选择您要控制的设备?”的提示信息,提示框356中还包括有与终端100已建立连接的设备的设备名称控件“huawei p30 pro”、“danneil”,设备名称控件“huawei p30 pro”和设备名称控件“danneil”可以接收用户操作(例如单击),与提示框356中的设备名称对应的设备建立数据传输通道。
[0329]
示例性地,设备名称控件“danneil”接收用户操作(例如单击),响应于该操作,终端100(设备名称“versual”)与终端102(设备名称“danneil”)建立数据传输通道。
[0330]
s811、终端102将第三用户界面发送至终端100。
[0331]
在一些实施例中,终端102只需执行一次将第三用户界面传输至终端100的操作。
[0332]
在一些实施例中,终端102的第二用户界面还包括终端102的相机app拍摄参数列表349,拍摄参数列表349中包括拍摄参数iso,iso的值为120,拍摄参数shutter,shutter的值为600,拍摄参数effect,effect为美白(white)。终端102将拍摄参数列表349中的拍摄参数和拍摄参数值发送至终端100。
[0333]
s812、终端102每隔固定时间(例如0.01秒)发送终端102的第三用户界面取景框中的图像至终端100。
[0334]
终端102的第三相机app每隔固定时间(例如0.01秒)获取第三用户界面的取景框中的取景图像并将取景图像显示在第三用户界面的取景框中。
[0335]
s813、终端100响应于终端102发送的第三用户界面,终端100显示第三用户界面。
[0336]
终端100接收并显示第三用户界面,即终端100的第一相机app显示第三用户界面。
[0337]
在一些实施例中,终端100的显示屏和终端102的显示屏大小不一样,因此终端102
将终端102的第二用户界面发送至终端100,终端100的第一相机app显示的终端102的第三用户界面成比例放大或缩小。本技术在此不做限定。
[0338]
在一些实施例中,终端100接收并显示终端102发送的拍摄参数列表49中的拍摄参数和拍摄参数值。本技术在此不做限定。
[0339]
s814、终端100响应于终端102每隔固定时间(例如0.01秒)发送第三用户界面取景框中的图像,终端100显示终端102每隔固定时间(例如0.01秒)发送第三用户界面取景框中的图像。
[0340]
终端100接收终端102每隔固定时间(例如0.01秒)发送的第三用户界面取景框中的图像并显示在终端100的第三用户界面的取景框中。
[0341]
s815、终端100接收用户第二操作(例如选择使用取景框长宽比为“1:1”的窗口进行拍摄)。
[0342]
s816、终端100根据用户第二操作(例如选择取景框长宽比为“1:1”的窗口进行拍摄)生成“1:1”拍摄控制指令。
[0343]
s817、终端100将“1:1”拍摄控制指令发送至终端102。
[0344]
s818、终端102识别“1:1”拍摄控制指令中的拍摄参数(例如取景框长宽比为1:1等)。
[0345]
s819、终端102根据拍摄参数对第三用户界面中的取景框的大小进行调整,调整后的取景框的大小符合终端100的用户对拍摄图像大小的需求。
[0346]
s820、终端102每隔固定时间(例如0.01秒)发送第三用户界面的取景框中的图像(包括根据拍摄参数对第三用户界面的取景框的大小进行调整后的取景图像)至终端100。
[0347]
s821、终端100显示每隔固定时间(例如0.01秒)发送第三用户界面的取景框中的图像(包括根据拍摄参数对第三用户界面的取景框的大小进行调整后的取景图像)。
[0348]
对实施例二的方法流程中的s815、s816、s817、s818、s819、s820、s821的详细介绍参见ui图7e-图7g实施例,在此不再赘述。
[0349]
s822、终端100接收用户第三操作(例如拍照)。
[0350]
s823、终端100根据用户第三操作(例如“拍照”)生成“拍照”控制指令。
[0351]
s824、终端100将“拍照”控制指令发送至终端102。
[0352]
s825、终端102将拍摄的图像显示在第三区域,并将拍摄的图像保存至相册,第三区域用于显示第三相机app最近一次拍摄图像的略缩图。
[0353]
s826、终端102将第二相机app拍摄的图像发送至终端100。
[0354]
s827、终端100将拍摄的图像显示在第二区域并将拍摄的图像保存至相册,第二区域用于显示第一相机app最近一次拍摄图像的略缩图。
[0355]
s828、终端102获取并显示第三用户界面的取景框中的图像。
[0356]
s829、终端102每隔固定时间(例如0.01秒)将第三用户界面取景框中的图像发送至终端100。
[0357]
s830、终端100显示终端102每隔固定时间(例如0.01秒)发送的第三用户界面取景框中的图像。
[0358]
s831、终端100与终端102断开连接。
[0359]
终端100与终端102断开连接后,终端100显示第一用户界面;其中,第一用户界面
为第一相机app的用户界面,终端100的第一用户界面中的取景框显示的是终端100自己的取景图像。
[0360]
终端102显示第三用户界面;其中,第三用户界面为第三相机app的用户界面,终端102的第三用户界面中的取景框显示的是终端102自己的取景图像。
[0361]
s832、终端100与终端101断开连接。
[0362]
终端100与终端101断开连接后,终端100显示第一用户界面;其中,第一用户界面为第一相机app的用户界面,终端100的第一用户界面中的取景框显示的是终端100自己的取景图像。
[0363]
终端101显示第二用户界面;其中,第二用户界面为第二相机app的用户界面,终端101的第二用户界面中的取景框显示的是终端101自己的取景图像。
[0364]
对实施例二的方法流程中的s822、s823、s824、s825、s826、s827、s828、s829、s830、s831、s832的介绍参见实施例一的方法流程中的s615、s616、s617、s618、s619、s620、s621、s622、s623、s624。本技术在此不再赘述。
[0365]
通过本技术实施例,终端100可以通过搜索与发现附近设备(例如终端101和终端102),终端100可以与终端101和终端102,终端100可以查看终端101或终端102时取景图像面,并且终端100可以切换控制终端101或终端102进行拍摄,以满足用户对多种拍摄效果的需求。
[0366]
本技术是基于系统原生机制的跨进程能力,提供一个能够在近距离快速建立连接并能够在设备之间进行能力共享和指令操作控制的方法。
[0367]
在拍照应用场景中,近距离(例如15米以内)均配置有摄像头装置的两台设备(例如终端100和终端101)建立连接后,终端100和终端101可以进行能力共享和操作控制,实现了近距离跨设备通信。
[0368]
具体的终端100的相机app可以显示终端101的相机app的取景图像,同时终端100的相机app也可以控制终端101的相机app进行拍摄(例如取景,缩放,拍照、特效等操作)。终端100将控制指令发送至终端101,终端101接收并响应于该控制指令,终端100将响应于控制指令控制后的取景图像发送给终端100,终端100接收并显示终端101发送的控制指令控制后的取景图像。
[0369]
上述终端100和终端101可以进行数据共享和操作控制依赖于近场跨设备通信技术。
[0370]
下面介绍本技术中近距离跨设备通信的架构。
[0371]
如图9a所示,图9a为本技术提供的一种近距离跨设备通信的架构图。包括分布式服务(distribution service)、数据管理器(data manager)、分布式控制器(distribution controller)、分布式binder(distribute binder)、分布式数据流(distribute stream)。
[0372]
分布式服务(distribution service)用于解析应用行为的能力。当终端设备(例如终端100)需要发起一次近场设备的通信(例如数据传输和指令控制)时,分布式服务接管当前的业务处理。
[0373]
数据管理器(data manager)和分布式控制器(distribution controller)是分布式服务(distribution service)中的两大组件。
[0374]
数据管理器(data manager)用于数据传输管理。本技术不改动跨进程数据传输通
道。而是在此基础上,进行了代理,调度,缓存和分发。最终,数据管理器(data manager)将终端100中进程间通信的数据封装为分布式数据流(distribute stream)通过socket通道传输到另一个终端设备(例如终端101)。
[0375]
分布式控制器(distribution controller)即近场分布式调度指令控制中心。当终端设备(例如终端100)发起一次跨设备的指令控制时,分布式服务(distribution service)会将相关的请求传递到分布式控制器(distribution controller)中,分布式控制器(distribution controller)则接管当前的能力,将指令打包成分布式binder(distribute binder),分布式binder(distribute binder)通过socket通道传输到对端设备(例如终端101)。
[0376]
分布式binder(distribute binder)是原生binder的一层封装,即基于系统中原生的binder机制,生成的binder处理方法,能够将原本跨进程存在的binder转化为跨设备的binder,并在另一端设备成功解析为本地的binder,其负责在socket通信的数据流结构中携带本地的binder信息,服务id,授权信息等。对于分布式binder(distribute binder)将在图10中详细介绍。
[0377]
分布式数据流(distribute stream)是进程间通信的数据的一层封装。对分布式数据流(distribute stream)将在图10中详细介绍。
[0378]
如图9b所示,图9b为数据管理器(data manager)控制数据跨设备传输的示意图。
[0379]
数据管理器(data manager)中含有三个重要的模块:缓冲区(buffer),缓冲区开关(buffer switch),代理(proxy)。
[0380]
缓冲区(buffer):由于网络传输的速率往往不够稳定且速率根据具体的物理链路不同存在瓶颈,造成流数据传输达不到本地跨进程的性能指标,因此本发明在数据管理器(data manager)中增加缓冲区(buffer),例如其大小可以约束在n*1024*1024*16(n为队列数量)。
[0381]
缓冲区开关(buffer switch):由于buffer较多的情况下,数据可能存在需要调度的情况。因此本发明在数据管理器(data manager)中增加缓冲区开关(buffer switch)。其作用是根据不同业务的数据流优先级进行调度。优先级来自于相机app在传输数据时赋予的优先级。如果相机app没有设定,则采用自动排序方法(例如已经传输中的队列优先级》意外中断的队列优先级》排队中的优先级)。
[0382]
代理(proxy)指的是连接相机app和传输通道socket的代理。由于相机app不需要直接操作socket对象,因此本发明的代理(proxy)代替应用完成这个动作。
[0383]
当终端101的相机app进行取景操作时,终端101将终端101的相机app取景图像转换为数据流(data stream),由终端101的分布式服务(distribution service)将数据流(data stream)转交给数据管理器(data manager)进行处理。
[0384]
数据管理器(data manager)将数据流(data stream)送入buffer队列排队,同时将所述数据管理器(data manager)拆分为若干子单元,每个子单元包括有标志位;此时缓冲区开关(buffer switch)决策当前拆分成若干子单元的字节数组数据是否可以被调出。如果可以,数据管理器(data manager)将拆分成若干子单元的字节数组数据进入代理(proxy)中。如果不可以,则继续等待switch调度。代理(proxy)收到数据后将数据进行socket的基础数据封装,数据管理器(data manager)将数据封装为分布式数据流
(distribute stream)通过socket通道传输到终端100。
[0385]
能力为指的是相机app的基础业务。例如相机的变焦,拍照,特效,预览、缩放等都是一系列的基础能力。
[0386]
如图9c所示,所述相机app的能力包括拍照能力(capture ability)、缩放能力(zoom ability)、预览能力(preview exchange)、特效应用能力(effect apply ability)等。所述相机app能够对所述能力做出响应。
[0387]
下面介绍本技术实施例中,终端101如何将终端101的相机app的相机用户界面和终端101的相机app的取景图像发送至终端100的。
[0388]
参见图10,图10为本技术提供的一种设备间的远程数据传输示意图。
[0389]
图10涉及的模块有分布式服务(distribution service)中的组件数据管理器(data manager)。首先终端101的相机app收到数据(data)传输的请求,将数据(data)转换为数据流(data stream),通过数据管理器(data manager)将数据流(data stream)封装为分布式数据流(distribute stream)发送到终端100上。
[0390]
同时终端100收到终端101发送的分布式数据流(distribute stream)后,终端100通过终端100的数据管理器(data manager)将其还原为原始的数据(data),从而达到两个终端设备通信的目的。
[0391]
具体的,参见以下步骤:
[0392]
步骤1、终端101打开相机app,终端101的相机app用户界面显示相机的取景图像。终端100同样需要打开同相机app。两个设备之间建立连接,终端100向终端终端101发起建立连接请求。终端101可以选择同意或拒绝。同意,则建立连接;否则不建立连接。
[0393]
步骤2、终端101开始进行相机的取景,从预览数据中获取得到的每一帧预览画面作为一帧实时数据并转换为一个字节数组数据。
[0394]
步骤3、终端101将所述字节数组数据传给终端101内部的分布式服务(distribution service),分布式服务(distribution service)将数据转交内部的数据管理器(data manager)处理,之后进入缓冲区(buffer)队列排队,同时将所述字节数组数据拆分为若干子单元,每个子单元包括有标志位;此时缓冲区开关(buffer switch)决策当前拆分成若干子单元的字节数组数据是否可以被调出。如果可以,则拆分成若干子单元的字节数组数据进入代理(proxy)中。如果不可以,则继续等待缓冲区开关(buffer switch)调度。代理(proxy)收到数据后将数据进行socket的基础数据封装,将数据封装为分布式数据流(distribute stream)。
[0395]
步骤4、通过两个设备之间的socket通道,数据管理器(data manager)将分布式数据流(distribute stream)直接发送给终端100。
[0396]
步骤5、终端100的分布式服务(distribution service)监听socket的端口,此时发现有数据传入,即读取数据,将其交给数据管理器(data manager)处理。
[0397]
步骤6、终端100的数据管理器(data manager)将数据进行解析,根据拆分成若干子单元的字节数组数据和每个子单元的标志位,数据管理器(data manager)将数据还原为原始的字节数组数据,并根据标志位等待当前一帧数据是否还原完成。如果没有,继续等待。如果完成,则继续。
[0398]
步骤7、还原后的一帧数据可以通知给终端100的相机app,供其使用。终端100的相
机app此时可以显示终端101的取景图像。
[0399]
下面介绍半申请实施例中,终端100的相机app如何控制如终端101的相机app进行取景、变焦、使用特效、拍照等操作。
[0400]
参见图11,图11为本技术提供的一种设备间的远程控制方法。设备间的远程控制实质上是在两个设备之间的远程binder调用的过程。
[0401]
图11主要描述了一次在两个设备之间的远程binder调用的过程。涉及的模块有:分布式控制器(distribution controller),分布式binder(distribute binder)。首先终端设备的相机app将跨设备调用的请求转换为binder指令,通过本发明的分布式控制器(distribution controller)承接流程,将binder指令(binder command)封装为分布式binder(distribute binder)发送到对方的终端设备。同时对方的终端设备收到分布式binder(distribute binder)后,通过对方的终端设备的cotroller将其还原为原始的binder指令(binder command),从而达到设备间的远程控制。
[0402]
具体的,参见以下步骤:
[0403]
步骤1、终端101打开相机app,终端101的相机app用户界面显示相机的取景图像。终端100同样需要打开同相机app。两个设备之间建立连接,终端100向终端终端101发起建立连接请求。终端101可以选择同意或拒绝。同意,则建立连接;否则不建立连接。
[0404]
步骤2、终端100的相机app显示终端101的相机app的取景图像。
[0405]
步骤3、终端100的相机app发出控制(例如选择“瘦身”特效)操作,终端100将特效指令操作封装为aidl接口数据。
[0406]
步骤4、终端100的分布式服务(distribution service)中的组件分布式控制器(distribution controller)接管指令调用流程。在原生的binder调用过程中,分布式控制器(distribution controller)根据用户的请求和标记位,将实际操作权从原生流程中抢夺过来。
[0407]
步骤5、终端100中的分布式控制器(distribution controller)将特效操作指令进行二次封装,封装为分布式binder(distribute binder)对象。并将将封装好的分布式binder(distribute binder)对象通过socket通道发送至终端101。
[0408]
步骤6、终端101的分布式服务(distribution service)此时监听socket端口,发现有数据传入,读取数据,根据类型交给分布式控制器(distribution controller)处理。终端101的分布式控制器(distribution controller)根据分布式binder(distribute binder)数据结构还原为原始的binder数据结构,即特效操作指令。
[0409]
步骤7、终端101的分布式服务(distribution service)主动发起一次binder调用,通知终端101的相机app能力进行响应。终端101的相机app能力得到调用指令后,则立刻进行特效(例如瘦身)指令操作。
[0410]
步骤8、(例如瘦身)的相机app能力完成这个动作后,则同样执行步骤3-6将此次操作的返回结果发给终端100。
[0411]
步骤9、终端100可以确认结果。同时终端101的相机app每隔固定时间(例如0.01秒)获取终端101的相机app的取景图像,终端101还需要将终端101的相机app每隔固定时间(例如0.01秒)获取终端101的相机app的取景图像发送至终端100。
[0412]
本技术提供了一种数据共享和指令操作控制方法,本技术是基于系统原生机制的
跨进程能力,提供一个设备之间无需通过任何账号或互联网能够在近距离快速建立连接并能够进行数据共享和指令操作控制的方法。该方法提高了数据传输的安全性和实时性,方便人们的交互。
[0413]
以上实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的范围。
再多了解一些

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

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

相关文献