CN115460233A - 基于应用的设备连接关系建立方法及相关装置 - Google Patents
基于应用的设备连接关系建立方法及相关装置 Download PDFInfo
- Publication number
- CN115460233A CN115460233A CN202110552602.8A CN202110552602A CN115460233A CN 115460233 A CN115460233 A CN 115460233A CN 202110552602 A CN202110552602 A CN 202110552602A CN 115460233 A CN115460233 A CN 115460233A
- Authority
- CN
- China
- Prior art keywords
- electronic device
- application
- electronic
- session
- service
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 161
- 238000004891 communication Methods 0.000 claims description 89
- 230000000694 effects Effects 0.000 claims description 85
- 230000008569 process Effects 0.000 claims description 37
- 238000004590 computer program Methods 0.000 claims description 7
- 244000035744 Hura crepitans Species 0.000 description 143
- 230000004044 response Effects 0.000 description 54
- 230000009471 action Effects 0.000 description 25
- 238000010586 diagram Methods 0.000 description 15
- 230000006870 function Effects 0.000 description 14
- 238000007726 management method Methods 0.000 description 12
- 238000012545 processing Methods 0.000 description 12
- 238000010295 mobile communication Methods 0.000 description 9
- 210000004027 cell Anatomy 0.000 description 8
- 230000001976 improved effect Effects 0.000 description 8
- 238000012546 transfer Methods 0.000 description 7
- 230000005236 sound signal Effects 0.000 description 6
- 125000004122 cyclic group Chemical group 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 229920001621 AMOLED Polymers 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 210000000988 bone and bone Anatomy 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000009434 installation Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 230000003321 amplification Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 238000013529 biological neural network Methods 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 239000004020 conductor Substances 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000002650 habitual effect Effects 0.000 description 1
- 230000001939 inductive effect Effects 0.000 description 1
- 239000010985 leather Substances 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000012913 prioritisation Methods 0.000 description 1
- 239000002096 quantum dot Substances 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000010187 selection method Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003238 somatosensory effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
- H04L67/125—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Multimedia (AREA)
- Computer And Data Communications (AREA)
Abstract
本申请提供一种基于应用的设备连接关系建立方法及相关装置。第一电子设备首次通过第一应用调用第二电子设备提供第一服务时,可以存储第一电子设备和第二电子设备的连接信息。该连接信息可包括第二电子设备的设备标识、第一服务的标识。当第一电子设备再次通过第一应用调用其它电子设备提供第一服务时,第一电子设备可以根据上述连接信息调用第二电子设备提供第一服务。上述方法可以快速建立多个电子设备之间的连接关系。用户可以不用在多个电子设备上分别进行操作,这简化了多个电子设备建立连接时的用户操作。
Description
技术领域
本申请涉及终端技术领域,尤其涉及一种基于应用的设备连接关系建立方法及相关装置。
背景技术
随着物联网的发展,在一些应用场景中,用户可能需要同时使用多个电子设备协同工作。例如,在通过一个学习应用进行课程学习的应用场景中,用户可以使用大屏播放课程视频,同时使用平板记笔记以及完成课后习题。
目前,电子设备上的应用一般是响应于用户作用在该应用的图标上的用户操作而打开。对于上述需要多个电子设备协同工作的应用场景,用户每一次都需要分别在这多个电子设备上进行操作,来建立这多个电子设备之间的连接关系,以及打开这多个电子设备上用于协同工作以实现一个应用场景的多个应用。上述过程用户操作繁琐,难以快速建立多个电子设备之间的连接关系。
发明内容
本申请实施例提供一种基于应用的设备连接关系建立方法及相关装置。其中,第一电子设备可以获取已存储的连接信息。该连接信息可包括第二电子设备的设备标识、第一服务的服务标识。根据该连接信息,第一电子设备调用第二电子设备提供第一服务。该方法可以快速建立多个电子设备之间的连接关系。
第一方面,本申请提供一种基于应用的设备连接关系建立方法。该方法可应用于通信系统。该通信系统可包括第一电子设备和第二电子设备。第一电子设备安装有第一应用。第二电子设备安装有用于提供第一服务的应用。在该方法中,第一电子设备可获取第一会话的第一快照信息。第一会话为第一电子设备通过第一应用调用一个或多个电子设备提供一项或多项服务所进行的通信。第一快照信息可包括第一连接信息。第一连接信息包括第二电子设备的设备标识、第一服务的标识。第一电子设备可根据第一连接信息向第二电子设备发送第一指令。第一指令可用于指示第二电子设备提供第一服务。第二电子设备接收到第一指令,提供第一服务。
结合第一方面,在一些实施例中,第一电子设备可接收到第二指令,该第二指令可用于指示第一电子设备通过第一应用调用第二电子设备提供第一服务。第一电子设备可以创建第一会话,并存储第一快照信息。第一电子设备可以根据第二指令向第二电子设备发送上述第一指令。
由上述实施例可以看出,第一电子设备首次通过第一应用调用第二电子设备提供第一服务时,可以存储第一电子设备和第二电子设备之间的第一连接信息。当第一电子设备再次通过第一应用调用其它电子设备提供第一服务时,第一电子设备可以根据上述第一连接信息调用第二电子设备提供第一服务。上述方法可以快速建立多个电子设备之间的连接关系。用户可以不用在多个电子设备上分别进行操作,这简化了多个电子设备建立连接时的用户操作。
上述第一服务的标识可用于指示第一服务的具体内容。例如,上述第一服务为课程视频播放服务。上述第一服务的标识可以为指示课程视频播放服务的数据。根据第一服务的标识,第一电子设备可以调用其它电子设备提供第一服务。
第一电子设备在创建上述第一会话时,可以为第一会话分配一个存储沙箱。每一个会话均可被分配有一个存储沙箱。一个存储沙箱的位置可以有电子设备的设备账号(如华为账号)、该电子设备在会话中调用的应用标识、该这一个存储沙箱对应的会话的会话标识来确定。每个会话的存储沙箱是隔离的。电子设备可以根据根据一个会话的存储沙箱的位置获取这一个会话的快照信息。
上述第一电子设备接收到的第二指令可以来自于作用在第一应用中的用户操作。示例性的,第一电子设备运行第一应用,显示第一应用的用户界面。第一电子设备接收到作用在第一应用的用户界面中用于调用其它电子设备提供第一服务的用户操作。第一电子设备可以搜索到一个或多个可提供第一服务的电子设备。这一个或多个可提供第一服务的电子设备包括第二电子设备。响应于选择第二电子设备的用户操作,第一电子设备可以接收到上述第二指令,并根据上述第二指令向第二电子设备发送上述第一指令。其中,第一电子设备可以存储与第二电子设备之间的第一连接关系。当第一电子设备再次调用其它电子设备提供第一服务时,第一电子设备可以根据上述第一连接关系调用第二电子设备提供第一服务。
结合第一方面,在一些实施例中,上述第一会话具有第一会话标识。第一会话的会话标识可以由第一电子设备的设备账号和第一应用的应用标识确定。第一电子设备可以根据第一会话标识获取上述第一快照信息。另外,在第一电子设备通过第一应用调用第二电子设备提供第一服务时,第一电子设备可以将上述第一会话标识传递给第二电子设备。第一会话标识可以包含在上述第一指令中。
结合第一方面,在一些实施例中,第一电子设备可以向第二电子设备指示提供第一服务的应用。具体的,第二电子设备安装有第二应用。第二应用可用于提供第一服务。上述第一连接信息中还可包括第二应用的应用标识。第一电子设备根据第一连接信息向第二电子设备发送第一指令。该第一指令可以用于指示第二电子设备运行第二应用来提供第一服务。
上述第二应用可以是一个分布式应用中提供第一服务的程序实体。例如,第二应用与第一应用是同一个分布式应用中提供不同服务的程序实体。上述第二应用的应用标识可包括第二应用所属分布式应用的应用包名和第一服务的程序实体的服务包名。或者,上述第二应用可以是前述传统应用。第二应用的应用标识可以为第二应用的应用包名。
结合第一方面,在一些实施例中,第一电子设备可以不指示第二电子设备提供第一服务的应用。第二电子设备中可能包含多个可提供第一服务的应用。第二电子设备可以从这多个可提供第一服务的应用中选取出一个应用来提供第一服务。具体的,第二电子设备安装有第二应用和第三应用。第二应用和第三应用均可用于提供第一服务。当接收到来自第一电子设备的第一指令,第二电子设备可以判断第二应用是否可用。若判断出第二应用可用,第二电子设备可以运行第二应用,提供第一服务。若判断出第二应用不可用,第二电子设备可以判断第三应用是否可用。若判断出第三应用可用,第二电子设备可以运行第三应用,提供第一服务。
一个应用不可用的情况可以包括:这一个应用在电子设备中被删除,电子设备无法找到该应用、电子设备无法再次安装这一个应用。
其中,若第二电子设备中多个可提供第一服务的应用中存在与第一应用属于同一个分布式应用的应用,第二电子设备可以优先选取与第一应用属于同一个分布式应用的应用来提供第一服务。
结合第一方面,在一些实施例中,第二电子设备可以将提供第一服务的应用的第一活动信息发送给第一电子设备。其中,第一活动信息可包括第一服务被提供过程中用于指示应用的用户界面在第一时刻呈现内容的数据。第一时刻为第一服务被提供过程中的任一时刻。第一电子设备可以在第一会话的存储沙箱中存储第一活动信息。第一活动信息包含于第一快照信息。
在第二电子设备提供第一服务的过程中,第二电子设备可以每隔预设时间段周期性发送提供第一服务的应用的活动信息。可选的,第二电子设备可以在结束提供第一服务时将提供第一服务的应用的活动信息发送给第一电子设备。活动信息可以例如是播放视频的视频标识、播放进度、在用户界面接收到用户输入的数据等等。其中,第一电子设备在存储第二电子设备中提供第一服务的应用的活动信息时,可以利用最新一次接收到的活动信息来更新前一次接收到的活动信息。即第一电子设备可以仅保存最新一次接收到的活动信息。
结合第一方面,在一些实施例中,第一电子设备再次通过第一应用调用其它电子设备提供第一服务时,可以从第一会话的存储沙箱中获取第一快照信息。第一快照信息中可包括上述第一活动信息。第一电子设备可以将上述第一活动信息发送给第二电子设备。第二电子设备可以根据第一活动信息确定在运行用于提供第一服务的应用初始时刻应用的用户界面的呈现内容。例如,上述第一服务为课程视频播放服务。上述第一活动信息包括提供第一服务的应用在第一时刻播放课程视频的视频标识(或课程标识)、播放进度。第二电子设备在开始运行提供第一服务的应用时,可以将用户界面中需要播放的视频以及进度调整为第一活动信息中指示的视频以及播放进度。
由上述实施例可知,第一电子设备除了可以根据第一快照信息中的第一连接信息快速与第二电子设备建立连接,调用第二电子设备提供第一服务,还可以根据第一快照信息中的第一活动信息使得第二电子设备将提供第一服务的应用的状态恢复至第一时刻的状态。这样,用户在第一时刻之前在提供第一服务的应用上的操作痕迹可以被保存,用户的使用体验得以提高。
结合第一方面,在一些实施例中,第一电子设备在首次通过一个应用调用其它电子设备提供一项服务时,第一电子设备可以查找自己是否通过其它应用调用其它电子设备提供与上述一项服务同类型的服务。若查找到,第一电子设备可以推荐通过上述通过其它应用调用其它电子设备提供与上述一项服务同类型的服务对应的连接关系。
具体的,第一电子设备还安装有第四应用。第一电子设备可以接收到第三指令。第三指令用于指示第一电子设备通过第四应用调用电子设备提供第一服务。第一电子设备可以从一个会话或多个会话的快照信息中查找包含第一服务的标识的连接信息,得到第一连接信息。上述一个会话或多个会话是第一电子设备创建的。第一电子设备可以根据第一连接信息向第二电子设备发送第四指令,并创建第二会话,存储第二会话的第二快照信息。第四指令可用于指示第二电子设备提供第一服务。第二会话为第一电子设备通过第四应用调用一个或多个电子设备提供一项或多项服务所进行的通信。第二快照信息可包括第二连接信息。第二连接信息可包括第二电子设备的设备标识、第一服务的标识。第二电子设备接收到第四指令,提供第一服务。
其中,第一电子设备中各会话的存储沙箱是隔离的。例如,上述第一会话的存储沙箱仅能被第一电子设备中的第一应用访问,而不能被第一电子设备中的第四应用访问。第一电子设备可以将各会话的快照信息中的连接信息存储至协同记录存储模块。该协同记录存储模块可以被第一电子设中的一个或多个应用访问。第一电子设备可以将第一会话的存储沙箱中获取第一连接信息,并将第一连接信息存储至协同记录存储模块。第一电子设备通过第一应用调用其它电子设备提供第一服务时,可以从协同记录存储模块查找到包含第一服务的标识的第一连接信息。进一步的,根据第一连接信息,第一电子设备可以通过第四应用调用第二电子设备提供第一服务。
不限于查找包含第一服务的标识的连接信息,第一电子设备还可以查找与第一服务的类型相同的服务对应的连接信息。服务的类型可以提供这一项服务需要电子设备所执行的动作的类型。服务的类型可以由服务的标识确定。例如,服务的标识为指示课程视频播放服务的数据。即这一项服务为课程视频播放服务。那么这一项服务的类型可以为视频播放类。第一电子设备可以从协同记录存储模块中查找所有服务的类型为视频播放类的服务对应的连接信息。
上述实施例可以方便用于调用自己习惯的电子设备来协同工作,提供了用户的使用体验。
结合第一方面,在一些实施例中,第一电子设备获取第一会话的第一快照信息之后,可以先判断第二电子设备是否可用。若判断出第二电子设备不可用,第一电子设备可以从搜索到的多个电子设备中选取出第三电子设备,并调用第三电子设备提供第一服务。上述第三电子设备为上述多个被搜索到的电子设备中可用且可提供第一服务的一个电子设备。
其中,第一电子设备可以通过向第二电子设备发送询问消息来确定第二电子设备是否可用。若第一电子设备接收到来自第二电子设备对上述询问消息的应答消息,且该应答消息指示第二电子设备可用,则第一电子设备可以确定第二电子设备可用。否则,第一电子设备确定第二电子设备不可用。
第一电子设备在通过第一应用调用其它电子设备提供第一服务时,除了获取第一会话的第一快照信息,还可以搜索可提供第一服务的电子设备。其中,第一电子设备可以搜索与自己处于同一局域网(例如同一家庭Wi-Fi)的电子设备。即上述被搜索到的多个电子设备与第一电子设备处于同一局域网。
在一种可能的实现方式中,第一电子设备具体可以根据第一规则从搜索到的多个电子设备中选取出第三电子设备。其中,第三电子设备为这多个电子设备中可用、可提供第一服务且优先级最高的电子设备。第一规则包括:与第一电子设备的设备账号相同且设备类型相同的电子设备的优先级>与第一电子设备的设备账号相同且设备类型不同的电子设备的优先级>与第一电子设备的设备账号不同但设备类型相同的电子设备的优先级>与第一电子设备的设备账号不同且设备类型不同的电子设备的优先级。
可选的,第一电子设备的设备账号相同且设备类型不同的电子设备有多个,或者与第一电子设备的设备账号不同且设备类型不同的电子设备有多个。那么,第一规则还可包括:在设备类型不同的多个电子设备中,电子设备的优先级由电子设备的私密度确定,电子设备的私密度越低,电子设备的优先级越高。电子设备的私密度包括:电视=音箱<平板<手表=手机。
第一电子设备调用私密度高的电子设备提供第一服务可能需要用户在私密度高的电子设备上确认。私密度越低的电子设备,排序越靠前。第一电子设备优先选择私密度低的电子设备可以简化连接过程中的用户操作,提高设备连接的效率。
结合第一方面,在一些实施例中,第一电子设备获取第一会话的第一快照信息之后,还可以根据第一连接信息在用户界面显示第二电子设备选项。第一电子设备可以检测到作用于第二电子设备选项的第一用户操作。该第一用户操作用于触发第一电子设备向第二电子设备发送第一指令。响应于该第一用户操作,第一电子设备可以向第二电子设备发送第一指令。
上述第二电子设备选项可以以不同的显示状态显示在用户界面中。具体的,第一电子设备可以判断第二电子设备是否可用。若判断出第二电子设备可用,第一电子设备可将第二电子设备选项显示为第一状态。第一状态用于指示第二电子设备可用。若判断出第二电子设备不可用,第一电子设备可将第二电子设备选项显示为第二状态。第二状态用于指示第二电子设备不可用。
结合第一方面,在一些实施例中,一个会话对应的通信系统可以包括多级连接。创建这一个会话的电子设备可以存储这多级连接中每个节点之间的连接信息,并将这些连接信息存储至这一个会话的存储沙箱中。根据这些连接信息,创建这一个会话的电子设备可以恢复这多级连接。
具体的,通信系统还可包括第四电子设备。第四电子设备安装有用于提供第二服务的应用。第一快照信息包括第三连接信息。第三连接信息包括源设备信息和目的设备信息。第三连接信息中的源设备信息包括第二电子设备的设备标识、第一服务的标识。第三连接信息中的目的设备信息包括第四电子设备的设备标识、第二服务的标识。第一电子设备获取第一会话的第一快照信息之后,第一电子设备可以将第三连接信息发送给第二电子设备。第二电子设备可以根据第三连接信息,利用提供第一服务的应用向第四电子设备发送第五指令。第五指令用于指示第四电子设备提供第二服务。第四电子设备接收到第五指令,提供第二服务。
源设备可以为调用其它电子设备提供服务的电子设备。目的设备可以为接收到调用指令提供服务的电子设备。
结合第一方面,在一些实施例中,第二电子设备接收到第六指令。第六指令用于指示第二电子设备通过提供第一服务运行的应用调用第四电子设备提供第二服务。第二电子设备根据第六指令向第四电子设备发送上述第五指令。
若第二电子设备判断出自己开启提供第一服务的应用的方式为主动开启,第二电子设备创建第三会话,并存储第三会话的第三快照信息。主动开启表示电子设备接收到作用在一个应用上用于开启这一个应用的用户操作,而开启这一个应用。第三会话为第二电子设备通过提供第一服务的应用调用一个或多个电子设备提供一项或多项服务所进行的通信,第三快照信息包括第三连接信息。其中,第二电子设备可以为上述第三会话分配存储沙箱,来存储上述第三快照信息。
若第二电子设备判断出自己开启提供第一服务的应用的方式为被动开启,第二电子设备将第三连接信息发送给第一电子设备。第一电子设备在第一会话的存储沙箱中存储第三连接信息。被动开启表示电子设备接收到其它电子设备用于提供一项服务的调用指令,而开启用于提供这一项服务的应用。
由上述实施例可知,第一电子设备可以通过第一应用调用第二电子设备提供第一服务。在第二电子设备被第一电子设备调用提供第一服务的基础上,第二电子设备通过提供第一服务的应用调用第四电子设备提供第四服务。其中,第一电子设备可以将第一会话的第一会话标识传递给第二电子设备。第二电子设备将第一会话的会话标识传递给第四电子设备。第二电子设备可以将自己与第四电子设备的连接信息发送给第一电子设备。第一电子设备可以跟自己存储的连接信息恢复自己与第二电子设备的连接关系,以及第二电子设备与第四电子设备的连接关系。上述方法可以快速建立多个电子设备之间的连接关系。用户可以不用在多个电子设备上分别进行操作,这不仅简化了多个电子设备建立连接时的用户操作,还方便用户调用自己习惯的电子设备,更快地进入到熟悉的应用场景,提高了用户体验。
在上述实施例中,第二电子设备发送给第四电子设备的第五指令可包括提供第二服务的应用(如第五应用)的应用标识。那么,第四电子设备根据第五指令,运行第五应用来提供第二服务。
结合第一方面,在一些实施例中,第一快照信息还包括第四连接信息,第四连接信息包括源设备信息和目的设备信息,第四连接信息中的源设备信息包括第二电子设备的设备标识、第一服务的标识,第四连接信息中的目的设备信息包括第一电子设备的设备标识、第一应用的应用标识。第一电子设备获取第一会话的第一快照信息之后,第一电子设备可以将第四连接信息发送给第二电子设备。第二电子设备根据第四连接信息,利用提供第一服务的应用向第一电子设备发送第七指令,第七指令用于指示第一电子设备调用第一应用。第一电子设备比较自己的第一层级标识和第二电子设备的第二层级标识,确定第一层级标识低于第二层级标识,第一电子设备拒绝响应第七指令。一个会话中的一个电子设备具有层级标识,一个电子设备的层级标识由一个电子设备与创建一个会话的电子设备之间的连接距离确定,与创建一个会话的电子设备之间的连接距离越远,一个电子设备的层级标识越高。
由上述实施例可知,第一电子设备通过第一应用调用第二电子设备提供第二服务,而第二电子设备又通过提供第二服务的应用调用第一电子设备运行第一应用。上述循环调用的问题可能导致两个电子设备之间的连接信息在这两个设备之间循环传递,浪费这两个电子设备的计算资源和存储资源。而上述实施例可以避免一个会话中的电子设备之间出现循环调用的问题,实现了对电子设备计算资源和存储资源的节约。
第二方面,本申请提供一种基于应用的设备连接关系建立方法。其中,第一电子设备获取第一会话的第一快照信息,第一电子设备安装有第一应用,第一会话为第一电子设备通过第一应用调用一个或多个电子设备提供一项或多项服务所进行的通信,第一快照信息包括第一连接信息,第一连接信息包括第二电子设备的设备标识、第一服务的标识。第二电子设备安装有用于提供第一服务的应用。第一电子设备根据第一连接信息向第二电子设备发送第一指令,第一指令用于指示第二电子设备提供第一服务。
结合第二方面,在一些实施例中,第一电子设备接收到第二指令,第二指令用于指示第一电子设备通过第一应用调用第二电子设备提供第一服务。第一电子设备可以创建第一会话,并在第一会话的存储沙箱中存储第一快照信息。第一电子设备可以根据第二指令向第二电子设备发送第一指令。
由上述实施例可以看出,第一电子设备首次通过第一应用调用第二电子设备提供第一服务时,可以存储第一电子设备和第二电子设备之间的第一连接信息。当第一电子设备再次通过第一应用调用其它电子设备提供第一服务时,第一电子设备可以根据上述第一连接信息调用第二电子设备提供第一服务。上述方法可以快速建立多个电子设备之间的连接关系。用户可以不用在多个电子设备上分别进行操作,这简化了多个电子设备建立连接时的用户操作。
结合第二方面,在一些实施例中,第一会话具有第一会话标识,第一会话标识由第一电子设备的设备账号和第一应用的应用标识确定。第一会话标识可用于第一电子设备获取第一快照信息。第一指令可包含第一会话标识。
结合第二方面,在一些实施例中,第二电子设备安装有第二应用。第二应用用于提供第一服务。第一连接信息还包括第二应用的应用标识。第一指令用于指示第二电子设备运行第二应用来提供第一服务。
结合第二方面,在一些实施例中,第一电子设备接收并存储第二电子设备发送的第一活动信息,第一活动信息包含于第一快照信息。第一活动信息包括第二电子设备提供第一服务的过程中用于指示提供第一服务的应用的用户界面在第一时刻呈现内容的数据。第一时刻为第二电子设备提供第一服务的过程中的任一时刻。
结合第二方面,在一些实施例中,第一电子设备获取第一会话的第一快照信息之后,可以将第一快照信息中的第一活动信息发送给第二电子设备。第一活动信息用于确定第二电子设备在运行提供第一服务的应用初始时刻应用的用户界面的呈现内容。
结合第二方面,在一些实施例中,第一电子设备在首次通过一个应用调用其它电子设备提供一项服务时,第一电子设备可以查找自己是否通过其它应用调用其它电子设备提供与上述一项服务同类型的服务。若查找到,第一电子设备可以推荐通过上述通过其它应用调用其它电子设备提供与上述一项服务同类型的服务对应的连接关系。
具体的,第一电子设备还安装有第四应用。第一电子设备接收到第三指令,第三指令用于指示第一电子设备通过第四应用调用电子设备提供第一服务。第一电子设备从一个会话或多个会话的快照信息中查找包含第一服务的标识的连接信息,得到第一连接信息。一个会话或多个会话是第一电子设备创建的。第一电子设备根据第一连接信息向第二电子设备发送第四指令,并创建第二会话,存储第二会话的第二快照信息。第二快照信息可以存储在第二会话的存储沙箱中。第四指令用于指示第二电子设备提供第一服务。第二会话为第一电子设备通过第四应用调用一个或多个电子设备提供一项或多项服务所进行的通信。第二快照信息包括第二连接信息,第二连接信息包括第二电子设备的设备标识、第一服务的标识。
结合第二方面,在一些实施例中,第一电子设备获取第一会话的第一快照信息之后,可以判断第二电子设备是否可用。若判断出第二电子设备不可用,第一电子设备从搜索到的多个电子设备中选取出第三电子设备,并调用第三电子设备提供第一服务。第三电子设备为多个电子设备中可用且可提供第一服务的一个电子设备。
结合第二方面,在一些实施例中,第一电子设备可以根据第一规则从搜索到的多个电子设备中选取出第三电子设备。第三电子设备为被搜索到的多个电子设备中可用、可提供第一服务且优先级最高的电子设备。第一规则包括:与第一电子设备的设备账号相同且设备类型相同的电子设备的优先级>与第一电子设备的设备账号相同且设备类型不同的电子设备的优先级>与第一电子设备的设备账号不同但设备类型相同的电子设备的优先级>与第一电子设备的设备账号不同且设备类型不同的电子设备的优先级。
结合第二方面,在一些实施例中,第一电子设备的设备账号相同且设备类型不同的电子设备有多个,或者与第一电子设备的设备账号不同且设备类型不同的电子设备有多个。第一规则还包括:在设备类型不同的多个电子设备中,电子设备的优先级由电子设备的私密度确定,电子设备的私密度越低,电子设备的优先级越高。电子设备的私密度包括:电视=音箱<平板<手表=手机。
结合第二方面,在一些实施例中,第一电子设备获取第一会话的第一快照信息之后,可以根据第一快照信息中的第一连接信息在用户界面显示第二电子设备选项。第一电子设备检测到作用于第二电子设备选项的第一用户操作,第一用户操作用于触发第一电子设备向第二电子设备发送第一指令。
上述第二电子设备选项可以以不同的显示状态显示在用户界面中。具体的,第一电子设备可以判断第二电子设备是否可用。若判断出第二电子设备可用,第一电子设备可将第二电子设备选项显示为第一状态。第一状态用于指示第二电子设备可用。若判断出第二电子设备不可用,第一电子设备可将第二电子设备选项显示为第二状态。第二状态用于指示第二电子设备不可用。
结合第二方面,在一些实施例中,第一快照信息还包括第三连接信息,第三连接信息包括源设备信息和目的设备信息,第三连接信息中的源设备信息包括第二电子设备的设备标识、第一服务的标识,第三连接信息中的目的设备信息包括第四电子设备的设备标识、第二服务的标识。第四电子设备安装有用于提供第二服务的应用。第一电子设备获取第一会话的第一快照信息之后,可以将第一快照信息中的第三连接信息方给第二电子设备。第三连接信息使得第二电子设备通过提供第一服务的应用向第四电子设备发送第五指令,第五指令用于指示第四电子设备提供第二服务。
上述方法可以快速建立多个电子设备之间的连接关系。用户可以不用在多个电子设备上分别进行操作,这不仅简化了多个电子设备建立连接时的用户操作,还方便用户调用自己习惯的电子设备,更快地进入到熟悉的应用场景,提高了用户体验。
结合第二方面,在一些实施例中,第一快照信息还包括第四连接信息。第四连接信息包括源设备信息和目的设备信息,第四连接信息中的源设备信息包括第二电子设备的设备标识、第一服务的标识,第四连接信息中的目的设备信息包括第一电子设备的设备标识、第一应用的应用标识。第一电子设备获取第一会话的第一快照信息之后,可以将第四连接信息发送给第二电子设备。第四连接信息使得第二电子设备通过提供第一服务的应用向第一电子设备发送第七指令,第七指令用于指示第一电子设备调用第一应用。第一电子设备接收到第七指令,比较自己的第一层级标识和第二电子设备的第二层级标识,确定第一层级标识低于第二层级标识,第一电子设备拒绝响应第七指令。一个会话中的一个电子设备具有层级标识,一个电子设备的层级标识由一个电子设备与创建一个会话的电子设备之间的连接距离确定,与创建一个会话的电子设备之间的连接距离越远,一个电子设备的层级标识越高。
由上述实施例可知,第一电子设备通过第一应用调用第二电子设备提供第二服务,而第二电子设备又通过提供第二服务的应用调用第一电子设备运行第一应用。上述循环调用的问题可能导致两个电子设备之间的连接信息在这两个设备之间循环传递,浪费这两个电子设备的计算资源和存储资源。而上述实施例可以避免一个会话中的电子设备之间出现循环调用的问题,实现了对电子设备计算资源和存储资源的节约。
第三方面,本申请提供一种基于应用的设备连接关系建立方法。其中,第二电子设备可以接收到来自第一电子设备的第一指令。第二电子设备安装有用于提供第一服务的应用。第一指令用于指示第二电子设备提供第一服务。第一指令是第一电子设备根据第一连接信息发送的。第一连接信息包括第二电子设备的设备标识、第一服务的服务标识。第一连接信息包含于第一会话的第一快照信息。第一电子设备安装有第一应用。第一会话为第一电子设备通过第一应用调用一个或多个电子设备提供一项或多项服务所进行的通信。根据第一指令,第二电子设备可以提供第一服务。
结合第三方面,在一些实施例中,第二电子设备中安装有第二应用。第二应用用于提供第一服务。上述第一连接信息还包括第二应用的应用标识。第一指令可用于指示第二电子设备运行第二应用来提供第一服务。当接收到第二指令,第二电子设备可以运行第二应用,提供第一服务。
结合第三方面,在一些实施例中,第二电子设备安装有第二应用和第三应用。第二应用和第三应用均用于提供第一服务。第二电子设备接收到第一指令之后,可以判断第二应用是否可用。若判断出第二应用可用,第二电子设备运行第二应用,提供第一服务。若判断出第二应用不可用,第二电子设备判断第三应用是否可用。若判断出第三应用可用,第二电子设备运行第三应用,提供第一服务。
结合第三方面,在一些实施例中,第二电子设备提供第一服务之后,可以将提供第一服务的应用(如第二应用或第三应用)的第一活动信息发送给第一电子设备。其中,第一活动信息包括第一服务被提供过程中用于指示提供第一服务的应用的用户界面在第一时刻呈现内容的数据。第一时刻为第一服务被提供过程中的任一时刻。
结合第三方面,在一些实施例中,除了上述第一指令,第二电子设备还可以接收到第一电子设备发送的第一活动信息。根据第一活动信息,第二电子设备可以确定在运行用于提供第一服务的应用初始时刻该应用的用户界面的呈现内容。
结合第三方面,在一些实施例中,除了上述第一指令,第二电子设备还可以接收到第一电子设备发送的第三连接信息。第三连接信息包括源设备信息和目的设备信息。第三连接信息中的源设备信息包括第二电子设备的设备标识、第一服务的标识。第三连接信息中的目的设备信息包括第四电子设备的设备标识、第二服务的标识。第四电子设备安装有用于提供第二服务的应用。根据第三连接信息,第二电子设备可以利用提供第一服务的应用向第四电子设备发送第五指令。第五指令用于指示第三电子设备提供第二服务。
结合第三方面,在一些实施例中,第二电子设备接收到第六指令,第六指令用于指示第二电子设备通过提供第一服务运行的应用调用第四电子设备提供第二服务。第二电子设备根据第六指令向第四电子设备发送第五指令。若第二电子设备判断出自己开启提供第一服务的应用的方式为主动开启,第二电子设备创建第三会话,并存储第三会话的第三快照信息;主动开启表示电子设备接收到作用在一个应用上用于开启这一个应用的用户操作,而开启这一个应用。第三会话为第二电子设备通过提供第一服务的应用调用一个或多个电子设备提供一项或多项服务所进行的通信,第三快照信息包括第三连接信息。若第二电子设备判断出自己开启提供第一服务的应用的方式为被动开启,第二电子设备将第三连接信息发送给第一电子设备。被动开启表示电子设备接收到其它电子设备用于提供一项服务的调用指令,而开启用于提供这一项服务的应用。
上述实施例可以快速建立多个电子设备之间的连接关系。用户可以不用在多个电子设备上分别进行操作,这不仅简化了多个电子设备建立连接时的用户操作,还方便用户调用自己习惯的电子设备,更快地进入到熟悉的应用场景,提高了用户体验。
第四方面,本申请提供一种通信系统。该通信系统至少包括第一电子设备、第二电子设备。其中,第一电子设备、第二电子设备配合执行如第一方面中任一可能的实现方式。
第五方面,本申请提供一种电子设备。该电子设备包括:通信装置、存储器、处理器。存储器可用于存储计算机程序,处理器可用于调用计算机程序,使得电子设备执行如第二方面或第三方面中任一可能的实现方式。
第六方面,本申请提供一种芯片,该芯片应用于电子设备,该芯片包括一个或多个处理器,该处理器用于调用计算机指令以使得该电子设备执行如第一方面或第二方面中任一可能的实现方式。
第七方面,本申请提供一种包含指令的计算机程序产品,其特征在于,当上述计算机程序产品在电子设备上运行时,使得该电子设备执行如第一方面或第二方面中任一可能的实现方式。
第八方面,本申请提供一种计算机可读存储介质,包括指令,其特征在于,当上述指令在电子设备上运行时,使得该电子设备执行如第一方面或第二方面中任一可能的实现方式。
可以理解地,上述第四方面提供的通信系统、第五方面提供的电子设备、第六方面提供的芯片、第七方面提供的计算机程序产品和第八方面提供的计算机可读存储介质均用于执行本申请实施例所提供的方法。因此,其所能达到的有益效果可参考对应方法中的有益效果,此处不再赘述。
附图说明
图1是本申请实施例提供的一种分布式应用的结构示意图;
图2A~图2I是本申请实施例提供的一些电子设备建立连接关系的场景示意图;
图3A~图3F是本申请实施例提供的另一些电子设备建立连接关系的场景示意图;
图4A~图4D是本申请实施例提供的另一些电子设备建立连接关系的场景示意图;
图5A~图5D是本申请实施例提供的另一些电子设备建立连接关系的场景示意图;
图6~图10是本申请实施例提供的一些通信系统的结构示意图;
图11是本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合附图对本申请实施例中的技术方案进行清楚、详尽地描述。其中,在本申请实施例的描述中,除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B;文本中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况,另外,在本申请实施例的描述中,“多个”是指两个或多于两个。
以下,术语“第一”、“第二”仅用于描述目的,而不能理解为暗示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征,在本申请实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。
本申请提供一种基于应用的设备连接关系建立方法。在该方法中,电子设备100在首次通过应用A与其它电子设备建立通信连接,并请求上述其它电子设备协同工作以实现应用场景A之后,可以存储电子设备100与上述其它电子设备的连接信息。上述连接信息可包括在上述协同工作过程中电子设备100的设备标识、与电子设备100连接的电子设备的设备标识、与电子设备100连接的电子设备在协同工作过程中各自调用的应用标识。当电子设备100再次通过应用A请求电子设备协同工作以实现上述应用场景A时,电子设备100可以根据自己存储的上述连接信息与历史协同设备建立通信连接,并指示历史协同设备调用在曾经实现应用场景A时各自调用的应用。上述历史协同设备即为上述与电子设备100曾经建立过通信连接并协同工作实现应用场景A的电子设备。可以看出,上述方法可以快速建立多个电子设备之间的连接关系。用户可以只需要在电子设备100上进行操作,而不用分别在多个电子设备上进行操作,来建立这多个电子设备的连接关系。这简化了多个电子设备建立连接时的用户操作。
上述电子设备100与其它电子设备建立的通信连接可以例如是无线保真(wireless fidelity,Wi-Fi)网络通信连接等短距离通信连接。本申请实施例对上述通信连接的具体方式不作限定。
多个电子设备协同工作可以表示这多个电子设备之间建立有通信连接,且这多个电子设备进行通信,交互数据和指令,分别执行不同的功能。上述多个电子设备分别执行不同的功能所组成的场景可以是这多个电子设备协同工作实现的一个应用场景。示例性的,手机中安装有学习应用。该学习应用可用于提供课程习题的答案。电视中安装有播放课程视频的应用。平板中安装有记笔记和答题的应用。手机可以通过该学习应用与电视和平板建立通信连接。手机可以指示电视调用播放课程视频的应用。手机可以指示平板调用记笔记和答题的应用。那么,学生可以在电视上观看课程视频,并通过平板记笔记和完成课程习题。家长可以通过手机中的学习应用来检查学生课程习题的完成结果。可以看出,上述手机、电视、平板可以协同工作,实现学生观看课程视频、记录笔记、完成课后习题以及家长检查学生完成的课后习题的应用场景。
需要进行说明的是,在上述设备连接关系建立方法中,电子设备100可以是主设备。主设备可用于存储协同工作过程中主设备与其它电子设备的连接信息。并且,主设备可用于根据自己存储的连接信息建立多个电子设备的连接关系。主设备建立多个电子设备的连接关系的具体实现方式在后续实施例中进行具体介绍,这里先不展开说明。
在一些实施例中,在电子设备100和其它电子设备实现上述应用场景A的协同工作的过程中,电子设备100调用的应用A与其它电子设备各自调用的应用可以属于同一个分布式应用。或者,这些应用也可以不属于同一个分布式应用。
本申请实施例涉及分布式应用。为了便于理解本申请提供的方法,下面先对相关概念进行介绍。
1、分布式应用(distributed application)和服务
一个分布式应用可以提供多项服务。服务也可以称为功能(ability)。一个分布式应用的程序安装包可包括这多项服务的程序安装包。这多项服务的程序安装包可分别安装在多个不同的电子设备中。其中,一个电子设备可安装这多项服务中一项或若干项服务的程序安装包。这一项或若干项服务的程序安装包中的程序实体可以称为这一个电子设备中的一个应用。也即是说,一个分布式应用可以支持以服务为单位进行安装。一个分布式应用中的多项服务可分布在多个不同的电子设备中。这多个不同的电子设备可以协同工作,分别调用这一个分布式应用中的各项服务来共同完成一项任务,实现一个应用场景。
下面以课程学习分布式应用为例来介绍上述分布式应用和服务之间的关系。
如图1所示,课程学习分布式应用可提供以下多项服务:习题答案提供服务,课程视频播放服务,记笔记和答题服务。其中,手机中可包括习题答案提供服务的程序安装包。电视中可包括课程视频播放服务的程序安装包。平板中可包括记笔记和答题服务的程序安装包。在一种可能的应用场景中,手机可以是家长的手机。响应于家长的用户操作,手机可以指示电视调用课程视频播放服务,来播放课程视频。并且,手机还可以指示平板调用记笔记和答题服务,来显示用于记笔记和答题的用户界面。其中,学生可以观看电视播放的课程视频,并在平板200上记录笔记和完成课程习题。另外,平板200可以将完成的课程习题发送给手机。手机可以调用习题答案提供服务,来检查上述课程习题的完成结果。
由图1可以看出,手机、电视和平板可以协同工作,分别调用课程学习分布式应用中的各项服务,来实现学生观看课程视频、记录笔记、完成课后习题以及家长检查学生完成的课后习题的应用场景。
一个分布式应用的程序安装包可具有应用包名。每一个服务的程序安装包可具有服务包名。在一种可能的实现方式中,当一个电子设备下载一个分布式应用中一个服务的程序安装包,这一个服务的程序安装包的存储路径可以为:…/<应用包名>/<服务包名>/…。示例性的,图1所示课程学习分布式应用的应用包名可以为com.example.study。记笔记和答题服务的服务包名可以为StudyNotepadServiceAbility。平板中记笔记和答题服务的程序安装包的存储路径可以为:…/<com.example.study>/<StudyNotepadServiceAbility>/…。其中,该课程分布式应用下的多项服务的存储路径均可以为:…/<com.example.study>/…。本申请实施例对上述应用包名和服务包名的具体名称不作限定。
图1仅为本申请示例性提供的一种分布式应用及其对应的服务,不应对本申请构成限定。
在一些实施例中,安装有一个服务的程序安装包的电子设备中可包括与这一个服务对应的图标。响应于作用在该图标上的用户操作,电子设备可以调用这一个服务。即上述图标可相当于调用与该图标对应的服务的入口。用户可以触摸一个服务对应的图标,来触发电子设备调用这一个服务。不限于上述图标的形式,电子设备还可以通过其它形式为用户提供调用服务的入口。
可选的,安装有一个服务的程序安装包的电子设备可以响应于与之协同工作的电子设备的指示,调用这一个服务。即安装有一个服务的程序安装包的电子设备中可以没有供用户直接调用这一个服务的入口。例如,在如图1所示的课程学习分布式应用中。电视中包括课程视频播放服务的程序安装包。但电视中没有供用户直接调用课程视频播放服务的入口。响应于相关用户操作,手机可以指示电视调用课程视频播放服务(即电视运行课程视频播放服务对应的程序)。
本申请后续实施例中的应用可以指提供分布式应用中各项服务的程序实体,或者也可以指传统应用,如系统、系统等系统中的相机应用、图库应用、视频应用等等。例如,在图1所示的课程学习分布式应用中,手机安装有习题答案提供应用。该习题答案提供应用可以提供习题答案提供服务。电视中安装有课程视频播放应用。该课程视频播放应用可以提供课程视频播放服务。平板中安装有记笔记和答题应用。该记笔记和答题应用可以提供记笔记和答题服务。电子设备调用一个应用即为调用这一个应用可以提供的服务。例如,电子设备调用课程视频播放应用可以表示电子设备调用课程视频播放服务。上述习题答案提供应用、上述课程视频播放应用、上述记笔记和答题应用均属于同一个分布式应用(课程学习分布式应用),可以具有相同的应用包名(如com.example.study)。一个传统应用也可以提供多项服务。相比于分布式应用,一个传统应用中提供多项服务的程序安装包可作为一个整体安装在一个电子设备上。也即是说上述传统应用不支持以服务为单位进行安装。上述传统应用可提供的多项服务不具有分布在不同电子设备上的能力。一个传统应用可以具有与之对应的应用包名。
本申请后续实施例具体以分布式应用为例来介绍本申请实施例提供的设备连接关系建立方法。
2、会话
在一些实施例中,在协同工作实现一个应用场景的多个电子设备中可存在一个主设备。该主设备可用于建立这多个电子设备在协同工作时的连接关系。由主设备请求,与主设备协同工作的电子设备均为子设备。例如,在图1所示的手机、电视和平板协同工作的场景中。手机可以是主设备。电视和平板可以均为子设备。手机可以与电视建立通信连接,并指示电视调用课程视频播放服务。手机可以与平板建立通信连接,并指示平板调用记笔记和答题服务。
会话可以表示上述主设备、子设备之间进行连接,在协同工作的过程中交互数据。一个会话可具有会话标识。一个会话的会话标识可以由主设备的设备账号(如华为账号),以及运行在主设备上请求子设备协同工作的应用的应用标识来确定。上述设备账号可以唯一标识登录在主设备上的用户。在一种可能的实现方式中,主设备运行应用A对应的程序请求子设备协同工作。上述应用标识可以是上述应用A的应用包名。在另一种可能的实现方式中,主设备运行应用A下服务A对应的程序请求子设备协同工作。上述应用标识仍然为应用A的应用包名。例如,运行在手机上请求子设备(如电视、平板)协同工作的应用为课程学习分布式应用。该应用标识可以是课程学习分布式应用的应用包名(如com.example.study)。本申请实施例对上述设备账号和应用标识的具体内容不作限定。
在一些实施例中,主设备调用一个应用请求子设备协同工作时,可以根据上述设备账号和应用标识查找是否存储有对应的会话标识。若不存在对应的会话标识,主设备可以建立一个会话,并根据设备账号和应用标识确定这一个会话的会话标识。在主设备与各个子设备建立连接时,主设备可以将这一个会话的会话标识传递给各个子设备。在协同工作实现一个应用场景的过程中,主设备和子设备均可存储有同一个会话标识。主设备和子设备在协同工作中通信是在上述同一个会话标识所指示的会话下进行的。
主设备建立一个会话的过程可以为确定这一个会话的会话标识,以及为这一个会话分配一个存储沙箱的过程。该存储沙箱可用于存储在这一个会话下主设备和子设备之间交互的数据、以及主设备和子设备之间的连接信息。
若存在对应的会话标识,主设备可以将查找到的会话标识传递给各个子设备。主设备和子设备在该会话标识对应的会话下交互的数据可以存储至该会话的存储沙箱中。在一些实施例中,当查找到对应的会话标识,主设备可以根据会话的存储沙箱中存储的设备之间的连接信息与相应的子设备建立连接。也即是说,在主设备与子设备曾经建立过连接来实现一个应用场景的情况下,若主设备再次需要请求其它电子设备协同工作来实现这一个应用场景,主设备可以根据会话的存储沙箱中存储的设备之间的连接信息快速与曾经连接过的子设备建立连接。这极大地简化了设备之间建立连接的用户操作。
一个会话的生命周期起始于主设备首次调用一个应用请求子设备协同工作之时。其中,主设备首次调用一个应用请求子设备协同工作之时,主设备查找不到与设备账号和应用标识对应的会话标识。主设备可以定期或不定期清理会话。若一个会话的会话标识与这一个会话的存储沙箱被删除,则这一个会话结束。在一种可能的实现方式中,主设备可以根据最近最少使用(least recently used,LRU)算法对会话进行清理。具体实现方法可以参考现有技术中LRU算法的实现过程。本申请实施例对主设备清理会话的方法不作限定。
其中,在一个会话已经建立的情况下,若主设备和各个子设备中的一个或多个电子设备退出自己在这一个会话中调用的应用,这一个会话仍然存在。即主设备中仍可存储这一个会话的会话标识以及存储沙箱中的数据。例如,在图1所示的课程学习分布式应用中,若电视结束调用课程视频播放服务,不再播放课程视频。利用上述课程学习分布式应用,手机在与电视、平板协同工作时建立的会话仍然存在。
在一些实施例中,在协同工作完成一个应用场景的过程中,主设备和子设备分别调用属于一个分布式应用的服务。主设备可以在该次协同工作与子设备连接时,向各子设备传递同一个会话的会话标识。在另一些实施例中,在协同工作完成一个应用场景的过程中,主设备和子设备调用的服务不属于同一个分布式应用。主设备让仍可在该次协同工作与子设备连接时,向各子设备传递同一个会话的会话标识。该同一个会话的会话标识可由在该次协同工作时,主设备上的设备账号和应用标识来确定。例如,在图1所示的课程学习分布式应用中,电视中的课程视频播放服务不可用(如电视已经课程视频播放服务的程序安装包清理,且暂时无法获取该程序安装包)。在手机指示电视播放课程视频时,电视可以调用其它应用(如华为视频应用)来播放课程视频。其中,手机可以将会话标识传递给电视。该会话标识可以由登录在手机上的设备账号以及课程学习分布式应用的应用标识确定。
3、快照信息(snapshot)
快照信息是指定数据的复制品。快照信息可用于数据备份和恢复。与一个会话关联的快照信息可包括这一个会话下电子设备之间的连接信息。上述连接信息可包括源设备的设备标识、目的设备的设备标识、目的设备上被调用应用的应用标识、目的设备上被调用应用中服务的服务标识(可选的)。上述源设备为指示其它电子设备调用相关应用的电子设备。上述目的设备为接收调用指令调用相关应用的电子设备。例如,在手机指示电视调用课程视频播放应用的场景中,手机为源设备,电视为目的设备。可选的,上述连接信息还可包括源设备上请求其它电子设备协同工作的应用的应用标识等信息。本申请实施例对此不作限定。
在一些实施例中,与一个会话关联的快照信息还可包括这一个会话下各电子设备调用对应的应用时的活动(activity)信息。示例性的,在手机指示电视调用课程视频播放应用的场景中,上述活动信息可以包括电视播放课程视频的课程标识、播放进度。电视可以将该活动信息发送给手机。手机可以将该活动信息存储至与之关联的会话的存储沙箱中。在手机指示平板调用记笔记和答题应用的场景中,上述活动信息可以包括记录的笔记数据以及答题数据等。平板可以将该活动信息发送给手机。手机可以将该活动信息存储至与之关联的会话的存储沙箱中。
与一个会话关联的快照信息可存储在建立这一个会话的主设备中。即主设备中为这一个会话分配的存储沙箱中可存储与这一个会话关联的快照信息。
主设备可以周期性记录与一个会话关联的快照信息。例如,主设备可以每隔1分钟获取一次与一个会话关联的快照信息,并利用当前这一次获取到的快照信息更新存储沙箱中最近一次获取到的快照信息。可选的,主设备可以响应用户操作来记录与一个会话关联的快照信息。例如,在手机指示电视调用课程视频播放应用的场景中,响应于作用在电视上用于退出课程视频播放的用户操作,电视可以将退出课程视频播放时播放课程视频的课程标识、播放进度发送给主设备。主设备可以将上述播放课程视频的课程标识、播放进度存储至对应会话的存储沙箱中。本申请实施例对触发主设备记录快照信息的用户操作不作限定。
4、存储沙箱
一个存储沙箱为电子设备中内存的一块存储区域。电子设备可以为上述一个会话分配一个存储沙箱。存储沙箱可用于存储与一个会话关联的快照信息(如在这一个会话下电子设备之间的连接信息、在这一个会话下各电子设备调用对应的应用时的活动信息)。
一个存储沙箱的位置可以由电子设备的设备账号(如华为账号)、该电子设备在会话中调用的应用标识以及该会话的会话标识来确定。示例性的,一个存储沙箱的位置可以是:…/data/user/<设备账号>/<应用标识>/<会话标识>/…。上述应用标识可以是应用的应用包名。每个会话的存储沙箱是隔离的。电子设备可以根据根据一个会话的存储沙箱的位置获取与这一个会话关联的快照信息。
在图1所示的课程学习分布式应用中,手机可以通过已安装的习题答案提供应用指示电视调用课程视频播放服务,并指示平板调用记笔记和答题服务。手机可以创建会话。该会话是在手机登录当前的设备账号时基于课程学习分布式应用的会话。手机可以为该会话分配存储沙箱。该存储沙箱的位置可以是:…/data/user/<手机的设备账号>/<课程学习分布式应用的应用包名>/<会话标识>/…。手机可以将该会话标识传递给电视和手机。其中,电视可以为该会话标识对应的会话分配存储沙箱。电视中该存储沙箱的位置可以是:…/data/user/<电视的设备账号>/<课程学习分布式应用的应用包名>/<会话标识>/…。电视可以将播放课程视频的课程标识、播放进度等数据存储至电视中该会话的存储沙箱。手机可以为该会话标识对应的会话分配存储沙箱。手机中该存储沙箱的位置可以是:…/data/user/<手机的设备账号>/<课程学习分布式应用的应用包名>/<会话标识>/…。手机可以将笔记数据以及答题数据等数据存储至该手机中该会话的存储沙箱。
基于图1所示的课程学习分布式应用,下面介绍本申请实施例提供的一种建立设备连接关系的场景。
图2A~图2I示例性示出了一种建立设备连接关系的场景示意图。
如图2A所示,电子设备100(如手机)可以显示用户界面210。用户界面210显示了一个放置有应用图标的页面。该页面可包括多个应用图标(例如,时钟应用图标、文件管理应用图标、华为视频应用图标、学习应用图标211等等)。上述多个应用图标下方还可显示有页面指示符,以表明当前显示的页面与其他页面的位置关系。页面指示符的下方有多个托盘图标(例如,相机应用图标、联系人应用图标、拨号应用图标、信息应用图标)。托盘图标在页面切换时保持显示。本申请实施例对用户界面410上显示的内容不作限定。
上述学习应用图标211为指示课程学习分布式应用的应用图标。在一些实施例中,电子设备100中包含习题答案提供服务的程序安装包。那么,响应于作用在学习应用图标211的用户操作,电子设备100可以显示包含习题答案的用户界面。
在一些实施例中,除了上述习题答案提供服务的程序安装包,电子设备100中课程学习分布式应用的程序安装包中还可包括设备连接程序。上述设备连接程序可用于电子设备100与其它电子设备建立通信连接,指示其它电子设备调用课程学习分布式应用可提供的服务(如课程视频播放服务,记笔记和答题服务)。可选的,电子设备100中还可包含课程视频视频播放服务的程序安装包、记笔记和答题服务的程序安装包。即电子设备100可以调用习题答案提供服务、课程视频播放服务、记笔记和答题服务这多项服务。
这里具体以电子设备100可以调用习题答案提供服务、课程视频播放服务、记笔记和答题服务这多项服务为例进行介绍。
响应于作用在学习应用图标211的用户操作,电子设备100可以显示如图2B所示的登录界面220。登录界面220可包括账号名称输入框221、密码输入框222、登录控件223和注册控件224。其中:
注册控件224可用于注册账号。用户可以通过注册控件224在学习应用上注册新的账号。
若注册过账号,用户可以通过输入自己已注册的账号的账号名称和密码登录学习应用。
账号名称输入框221可用于输出登录的账号名称。例如“张三”。
密码输入框222可用于输入登录的密码。
登录控件223可用于触发电子设备100根据账号名称输入框221和密码输入框222中接收到的数据进行登录操作。
当登录成功,电子设备100可以显示如图2C所示的用户界面230。用户界面230可以包括课程选择区域231、“首页”控件232、“学习”控件233、“我的”控件234。其中:
“首页”控件232、“学习”控件233、“我的”控件234可用于指示用户界面230中显示的内容。例如,如图2C所示,“学习”控件233处于被选中状态,用户界面230中显示的内容可为课程选择区域231中包含的各项课程。响应于作用在“首页”控件232、“学习”控件233、“我的”控件234中任意一个控件的用户操作,电子设备100可以切换用户界面230中显示的内容。
课程选择区域231中可包括第一课课程选项、第二课课程选项、第三课课程选项、第四课课程选项等等。可选的,其中每一个课程选中可包括课程进度。例如:第一课课程进度为“已完成0%”。上述课程进度可由课程视频是否播放完成、课后习题是否完成来确定。
响应于作用在第一课课程选项的用户操作,电子设备100可以显示如图2D所示的用户界面240。用户界面240可包括课程视频区域241、视频输出设备选择控件242、课后习题区域243、学生学习设备选择控件244、习题答案区域245。其中:
课程视频区域241中可包括第一课的课程视频。当接收到用于播放课程视频的用户操作,电子设备100可以调用学习应用中的课程视频播放服务,播放第一课的课程视频。
视频输出设备选择控件242可用于电子设备100指示其它电子设备调用课程视频播放服务。
课后习题区域243中可包括第一课的课后习题。可选的,课后习题区域243中还可包括用于记笔记的文本输入框。即电子设备100可以调用记笔记和答题服务,供用户记笔记和完成课后习题。
学生学习设备选择控件244可用于电子设备100指示其它电子设备调用记笔记和答题服务。
习题答案区域245中可包括第一课课后习题的答案。
如图2D所示,响应于作用在视频输出设备选择控件242的用户操作,电子设备100可以搜索附近可用于播放视频的电子设备,并显示如图2E所示的用户界面250。
在一种可能的实现方式中,电子设备100可以搜索与自己处于同一局域网(如同一家庭Wi-Fi),且可用于播放视频的电子设备。用户界面250中可包括设备选择区域251和搜索控件252。其中,搜索控件252可用于触发电子设备100继续搜索与自己处于同一局域网(如同一家庭Wi-Fi)中,且可用于播放视频的电子设备。上述搜索的过程可以例如是电子设备100向与自己处于同一家庭Wi-Fi中的各个电子设备发送消息。该消息可用于询问电子设备是否具有播放视频的能力。当接收到该消息,具有视频播放能力的电子设备可以向电子设备100发送应答消息。那么,电子设备100可以搜索到与自己处于同一家庭Wi-Fi中,且可用于播放视频的电子设备。本申请实施例对电子设备100搜索电子设备的方法不作限定。
设备选择区域251中可包括一个或多个电子设备100搜索到的电子设备的设备选项。例如,张三的平板、张三的电视、李四的平板、李四的电视。本申请实施例对上述设备选项的名称不作限定。响应于作用在上述设备选项中任一个设备选项的用户操作,电子设备100可以与该设备选项对应的电子设备,电子设备100可以指示该电子设备调用课程视频播放服务。
示例性的,响应于作用在设备选项“张三的电视”的用户操作,电子设备100可以指示电子设备200(即张三的电视)调用课程视频播放服务。
在一些实施例中,电子设备200中已安装有上述课程视频播放服务的程序安装包。电子设备200可以调用课程视频播放服务,显示如图2F所示的用户界面260。
如图2F所示,电子设备100和电子设备200之间建立有通信连接(如Wi-Fi通信连接)。电子设备200可以显示用户界面260。该用户界面260为播放课程视频(如第一课的课程视频)的用户界面。其中,用户可以通过作用在遥控器上播放控件或暂停控件的用户操作,来指示电子设备200播放第一课课程视频或者暂停播放第一课课程视频。
在另一些实施例中,电子设备200中还未安装有上述课程视频播放服务的程序安装包。当接收到来自电子设备100用于指示电子设备200调用课程视频播放服务的指令,电子设备200可以获取(如从云服务器获取)课程视频播放服务的程序安装包。当获取了课程视频播放服务的程序安装包,电子设备200可以调用课程视频播放服务,显示如图2F所示的用户界面260。本申请实施例对电子设备200获取课程视频播放服务的程序安装包的方法不作限定。
在另一些实施例中,电子设备200中还未安装有上述课程视频播放服务的程序安装包,且电子设备200获取不到课程视频播放服务的程序安装包。电子设备200可以调用其它可用于播放视频的应用(如视频播放器应用、华为视频应用等等),来播放课程视频。上述被调用的应用可以是电子设备200中默认的,或者,是用户选择的。本申请实施例对此不作限定。其中,电子设备200可以获取(如从电子设备100,或者从云服务器获取)需要播放的课程视频的数据。
当接收到上述作用在视频输出设备选择控件242的用户操作,电子设备100可以根据电子设备100的设备账号(如华为账号)以及学习应用的应用标识(如应用包名)查找自己是否存储有会话标识。若存在会话标识对应的会话(该会话为在电子设备100上登录当前的设备账号时基于学习应用的会话),电子设备100可以从与该会话关联的快照信息中查找是否存在与调用课程视频播放服务的电子设备连接的连接信息。可选的,电子设备100还可以从与该会话关联的快照信息中查找是否存在与调用用于播放视频的应用的电子设备连接的连接信息。
若不存在会话标识对应的会话,电子设备100可以建立会话。该会话的会话标识根据电子设备100的设备账号以及学习应用的应用标识确定。电子设备100可以为该会话分配一个存储沙箱。
在上述电子设备100与电子设备200连接,且电子设备100指示电子设备200播放课程视频的过程中,电子设备100可以将电子设备100与电子设备200的连接信息存储至会话的存储沙箱中。可选的,电子设备100还可以将一个时刻电子设备200播放课程视频的课程标识、播放进度存储至该会话的存储沙箱中。
上述不存在会话标识对应的会话的情况可以包括:电子设备100未曾创建过与该会话标识对应的会话。或者,电子设备100曾经创建过与该会话标识对应的会话。但是,该会话已被删除。上述会话被删除可以表示上述会话对应的会话标识以及会话的存储沙箱被删除。
可以看出,图2D~图2F示例性示出了电子设备100建立会话的场景示意图。
如图2G所示,响应于作用在学生学习设备选择控件244的用户操作,电子设备100可以搜索附近可用于提供记笔记和答题服务的电子设备,并显示如图2H所示的用户界面270。
电子设备100搜索附近可用于提供记笔记和答题服务的电子设备可以参考前述实施例中电子设备100搜索可用于播放视频的电子设备的方法。这里不再赘述。
用户界面270可包括学习设备选择区域271。该学习设备选择区域271中可包括一个或多个电子设备100搜索到的电子设备的设备选项。例如,张三的平板、张三的电视、李四的平板、李四的电视。本申请实施例对上述设备选项的名称不作限定。响应于作用在上述设备选项中任一个设备选项的用户操作,电子设备100可以与该设备选项对应的电子设备,电子设备100可以指示该电子设备调用记笔记和答题服务。
示例性的,响应于作用在设备选项“张三的平板”的用户操作,电子设备100可以指示电子设备300(即张三的平板)调用记笔记和答题服务,显示如图2I所示的用户界面280。
如图2I所示,电子设备100和电子设备300之间建立有通信连接(如Wi-Fi通信连接)。电子设备300可以显示用户界面280。该用户界面280中可包括课程资料、记笔记的文本输入框、课后习题等等内容。即用户可以在电子设备300上记笔记、完成课后习题。
当接收到上述作用在学生学习设备选择控件244的用户操作,电子设备100可以根据电子设备100的设备账号(如华为账号)以及学习应用的应用标识(如应用包名)查找自己是否存储有会话标识。在前述图2D~图2F所示的实施例中,电子设备100建立了会话。该会话为在电子设备100上登录当前的设备账号时基于学习应用的会话。那么,电子设备100可以查找到会话标识对应的会话。电子设备100可以从与该会话关联的快照信息中查找是否存在与调用记笔记和答题服务的电子设备连接的连接信息。
若存在上述与调用记笔记和答题服务的电子设备连接的连接信息,电子设备100可以与该连接信息指示的电子设备连接,并指示该电子设备调用记笔记和答题服务。
在上述电子设备100与电子设备300连接,且电子设备100指示电子设备300调用记笔记和答题服务的过程中,电子设备100可以将电子设备100与电子设备300的连接信息存储至会话的存储沙箱中。可选的,电子设备100还可以将一个时刻电子设备300接收到的笔记和答题数据存储至该会话沙箱中。
可以看出,图2G~图2I示例性示出了电子设备100未在快照信息中查找到连接信息的场景示意图。该连接信息为电子设备100与调用记笔记和答题服务的电子设备的连接信息。
图2A~图2I所示的用户界面仅为示例性说明,不应对本申请构成限定。
由上述图2A~图2I所示的实施例可知,电子设备100在首次请求其它电子设备协同工作,来实现应用场景A时,可以存储自己与上述其它电子设备的连接信息。上述连接信息可包括上述其它电子设备的设备标识、上述其它电子设备在协同工作中各自调用的应用的应用标识、上述其它电子设备在协同工作中各自调用的应用中服务的服务标识(可选的)。上述连接信息可用于电子设备100再次请求其它电子设备协同工作,来实现应用场景A时,与历史协同设备建立连接。并且,电子设备100可以指示历史协同设备调用在曾经实现应用场景A时各自调用的应用。这不仅简化了多个电子设备建立连接时的用户操作,还方便用户调用自己习惯的电子设备,更快地进入到熟悉的应用场景,提高了用户体验。
在一些实施例中,电子设备100可以通过应用A请求与其它电子设备协同工作实现应用场景A。若电子设备100中存在在电子设备100上登录当前的设备账号时基于应用A的会话,且与该会话关联的快照信息中包括实现上述应用场景A时电子设备100与其它电子设备的连接信息,电子设备100可以根据该连接信息恢复与历史协同设备的连接关系,并指示历史协同设备调用在曾经实现应用场景A时各自调用的应用。上述历史协同设备可以是在曾经实现应用场景A时与电子设备100建立过连接关系的电子设备。
下面以电子设备100与其它电子设备建立连接关系时调用学习应用为例,介绍本申请实施例提供的另一种建立设备连接关系的场景。
图3A~图3F示例性示出了另一种建立设备连接关系的场景示意图。
当开启学习应用,电子设备100可以显示如图3A所示的用户界面230。用户界面230包含的内容可以参考前述图2C的介绍。
如图3A所示,第一课课程已完成100%。第二课课程已完成30%。响应于作用在第二课课程选项的用户操作,电子设备100可以显示如图3B所示的用户界面240。用户界面240包含的内容可参考前述图2D的介绍。如图3B所示,课后习题区域243中的一部分习题已被完成。上述图3A所示的课程进度以及图3B所示的答题数据可以是根据与会话A关联的快照信息确定的。上述会话A为在电子设备100上登录当前的设备账号时基于学习应用的会话。
会话A可以是前述图2A~图2I所示建立设备连接关系的过程中建立的。与会话A关联的快照信息可包括:电子设备100的设备标识、电子设备200的设备标识、电子设备200调用服务所属应用的应用标识、电子设备200调用服务的服务标识、电子设备200上播放课程视频的课程表示和播放进度、电子设备300的设备标识、电子设备300调用服务所属应用的应用标识、电子设备300调用服务的服务标识、电子设备300上接收到的笔记数据以及答题数据等。与会话A关联的快照信息存储在电子设备100为会话A分配的存储沙箱中。
响应于作用在视频输出设备选择控件242的用户操作,电子设备100可以从与会话A关联的快照信息中查找是否存在与调用用于播放视频的应用的电子设备的连接信息。可选的,电子设备100还可以搜索与自己处于同一局域网,且可用于播放视频的电子设备。电子设备100搜索用于播放视频的电子设备的方法可以参考前述实施例的介绍。
电子设备100可以显示图3C所示的用户界面250。用户界面250中可包括设备选择区域251。设备选择区域251可包括历史协同设备区域251A和附近可用设备区域251B。
其中,历史协同设备区域251中的设备选项可用于提示用户曾经与电子设备100连接且播放课程视频的电子设备。历史协同设备区域251A中的设备选项为电子设备100根据与会话A关联的快照信息查找到的电子设备的设备选项。例如,在与会话A关联的快照信息中,调用用于播放视频的应用(如提供课程视频播放服务的应用)的电子设备包括电子设备200(即张三的电视)。上述历史协同设备区域251A的设备选项中可包括电子设备200。
附近可用设备区域251B中的设备选项可用于提示用户未曾但可以与电子设备100连接且播放课程视频的电子设备。例如,电子设备100可以搜索与自己处于同一家庭Wi-Fi、可用于播放视频且未曾在自己的指示下播放过课程视频的电子设备。被搜索到的电子设备可以包括张三的平板、李四的平板、李四的电视。附近可用设备区域251B中的设备选项可以包括上述被搜索到的电子设备的设备选项。
如图3C所示,响应于作用在设备选项“张三的电视”的用户操作,电子设备100可以指示电子设备200调用课程视频播放服务。
如图3D所示,响应于作用在学生学习设备选择控件244的用户操作,电子设备100可以从与会话A关联的快照信息中查找是否存在与调用记笔记和答题服务的电子设备的连接信息。可选择的,电子设备100还可以搜索与自己处于同一局域网,且可调用记笔记和答题服务的电子设备。电子设备100搜索用于调用记笔记和答题服务的电子设备的方法可以参考前述实施例的介绍。
电子设备100可以显示图3E所示的用户界面270。用户界面270可包括学习设备选择区域271。学习设备选择区域271中可包括历史学习设备区域271A和附近学习设备区域271B。
其中,历史学习设备区域271A中的设备选项可用于提示用户曾经与电子设备100连接且调用记笔记和答题服务的电子设备。历史学习设备区域271A中的设备选项为电子设备100根据与会话A关联的快照信息查找的电子设备的设备选项。例如,在与会话A关联的快照信息中,调用记笔记和答题服务的电子设备包括电子设备300(即张三的平板)。上述历史学习设备区域271A的设备选项中可包括电子设备300。
附近学习设备区域271B中设备选项可用于提示用户未曾但可以与电子设备100连接且调用记笔记和答题服务的电子设备。例如,电子设备100可以搜索与自己处于同一家庭Wi-Fi、可调用记笔记和答题服务且未曾在自己的指示下调用记笔记和答题服务的电子设备。被搜索到的电子设备可以包括张三的电视、李四的平板、李四的电视。附近学习设备区域271B中的设备选项可以包括上述被搜索到的电子设备的设备选项。
如图3E所示,响应于作用在设备选项“张三的平板”的用户操作,电子设备100可以指示电子设备300调用记笔记和答题服务。
如图3F所示,电子设备100与电子设备200、电子设备300之间建立有通信连接。
电子设备100可以指示电子设备200调用课程视频播放服务(或者其它用于播放视频的应用、服务),来播放第二课课程视频。当接收到来自电子设备100的指令,电子设备200可以调用课程视频播放服务,显示如图3F所示的用户界面260。用户界面260为播放课程视频的用户界面。
在一种可能的实现方式中,电子设备100可以从会话A的快照信息中确定出指示电子设备200播放课程视频时课程视频的课程标识和播放进度。上述课程视频的课程标识和播放进度可以为电子设备100最近一次更新会话A的快照信息中的数据。电子设备100可以将上述课程视频的课程标识和播放进度发送给电子设备200。电子设备200可以根据上述课程视频的课程标识和播放进度,在用户界面260中从上述播放进度指示的位置处开始播放上述课程标识对应的课程视频。例如,在电子设备100最近一次更新会话A的快照信息中,电子设备200播放课程视频的课程标识为第二课课程视频。第二课课程视频的播放进度为“3:04”。“3:04”可以表示第二课课程视频播放时3分4秒的位置处。电子设备100指示电子设备200调用课程视频播放服务时,可以将上述课程视频的课程标识以及播放进度发送给电子设备200。那么,电子设备200可以从3分4秒的位置处开始播放第二课课程视频。
在另一种可能的实现方式中,电子设备100与电子设备200建立图3F所示的通信连接时,可以将会话A的会话标识传递给电子设备200。电子设备200可以为会话A分配存储沙箱。电子设备200中该会话A的存储沙箱可用于存储播放课程视频的课程标识和播放进度等等数据。电子设备200可以周期性记录播放课程视频的课程标识和播放进度。或者,电子设备200可以响应用户操作(例如退出课程视频播放的用户操作)来记录播放课程视频的课程标识和播放进度。当接收到来自电子设备100用于调用课程视频播放服务的指令,电子设备200可以调用课程视频播放服务。其中,电子设备200可以根据会话A的存储沙箱中最近一次记录的数据来播放课程视频。例如,电子设备200中会话A的存储沙箱中最近一次记录的数据为:播放课程视频的课程标识为第二课课程视频的课程标识、播放进度为“3:04”。电子设备200可以从3分4秒的位置处开始播放第二课课程视频。
如图3F所示,电子设备100可以指示电子设备300调用记笔记和答题服务。当接收到来自电子设备100的指令,电子设备300调用记笔记和答题服务,显示如图3F所示的用户界面280。用户界面该280中可包括课程资料、记笔记的文本输入框、课后习题等等内容。即用户可以在电子设备300上记笔记、完成课后习题。
如用户界面280所示,电子设备300可以显示最近一次接收到的笔记数据和答题数据。即用户可以从曾经记录的笔记处继续记笔记,并从曾经完成的课后习题处继续完成课后习题。其中,上述最近一次接收到的笔记数据和答题数据可以是电子设备100发送的,也可以是电子设备300从自己存储的会话A的存储沙箱中获取的。
上述图3A~图3F所示的用户界面仅为示例性说明,不应对本申请构成限定。
由上述图3A~图3F所示的实施例可知,在电子设备100再次请求其它电子设备协同工作,来实现应用场景A时,电子设备100可以获取曾经实现应用场景A时建立的会话A的快照信息。根据该快照信息,电子设备100可以恢复与历史协同设备的连接关系,并指示历史协同设备调用在曾经实现应用场景A时各自调用的应用。上述历史协同设备可以是在曾经实现应用场景A时与电子设备100建立过连接关系的电子设备。这样,用户可以不用分别在多个电子设备上进行操作,来建立这多个电子设备的连接关系。这不仅简化了多个电子设备建立连接时的用户操作,还方便用户调用自己习惯的电子设备,更快地进入到熟悉的应用场景,提高了用户体验。
另外,上述会话A的快照信息中还可包括在实现应用场景A时,电子设备100和历史协同设备各自调用应用的活动信息。根据该活动信息,电子设备100和历史协同设备调用应用实现应用场景A时可以将应用的状态恢复至活动信息指示的状态。该活动信息例如是视频的播放进度。电子设备可以从活动信息指示的播放进度来播放视频。这样,电子设备100和历史协同设备可以从最近一次中断协同工作的位置处继续协同工作,来实现应用场景A。
在一些实施例中,电子设备100中存储有会话A的会话标识以及会话A的快照信息。上述会话A的快照信息中包括电子设备100与电子设备200的连接信息、电子设备100电子设备300的连接信息。电子设备100与电子设备200、电子设备300协同工作可以实现应用场景A。响应于触发电子设备100与其它电子设备连接来实现应用场景A的用户操作,电子设备100可以获取A的快照信息。根据该快照信息,电子设备100可以自动与电子设备200、电子设备300连接,并指示电子设备200、电子设备调用相关应用来实现应用场景A。即,电子设备100可以自动恢复曾经建立过的连接关系,提高设备建立连接关系的效率。用户可以不用进行图3C和图3E所示选择设备的用户操作。这可以简化上述设备连接过程中的用户操作。
在一些实施例中,在电子设备100首次通过应用A请求与其它电子设备协同工作实现应用场景A时,电子设备100可以查询自己是否通过其它应用与其它电子设备进行过同类型的协同工作。上述同类型的协同工作可以表示电子设备100指示其它电子设备进行相同的动作。上述相同的动作例如是:播放视频的动作、文档编辑的动作等等。本申请实施例对上述动作的类型不作限定。
若电子设备100查询到自己通过其它应用与其它电子设备进行过同类型的协同工作,电子设备100可以推荐上述同类型的协同工作过程中电子设备的连接关系。例如,电子设备100查询到自己通过应用B请求电子设备200调用播放视频的应用来播放视频。在电子设备100首次通过应用A请求其它电子设备播放视频时,电子设备100可以提示用户应用B曾经调用过电子设备200中播放视频的应用来播放视频。响应于选择上述电子设备200的用户操作,电子设备100可以通过应用A调用电子设备200中播放视频的应用来播放视频。
图4A~图4D示例性示出了另一种建立设备连接关系的场景示意图。
图4A所示的用户界面410可以参考前述图2A中用户界面210的介绍。用户界面410可包括网盘应用A图标411、网盘应用B图标412。即电子设备100中安装有网盘应用A的程序安装包、网盘应用B的程序安装包。
响应于作用在网盘应用B图标的用户操作,电子设备100可以显示如图4B所示的用户界面420。用户界面420可包括文档显示区域421、编辑控件422、分享控件423、下载控件424和删除控件425。其中:
文档显示区域421可用于显示文档内容。
分享控件423可用于分享文档显示区域421中的文档内容。
下载控件424可用于下载文档显示区域421中的文档内容。
删除控件425可用于将文档显示区域421中的文档内容从网盘应用B对应的云服务器中删除。
编辑控件422可用于编辑文档显示区域421中的文档内容。响应于作用在编辑控件422的用户操作,电子设备100可以搜索附近可用于编辑文档的电子设备,并显示如图4C所示的选项框426。选项框426A可包括本地编辑选项426A、推荐设备选择区域426B、可用设备选择区域426C、设备搜索控件426D。其中:
本地编辑选项426A可用于触发电子设备100调用自己安装的可用于进行文档编辑的应用,对图4B所示文档显示区域421中的文档内容进行编辑。
可用设备选择区域426C中可包括一个或多个电子设备的设备选项。这一个或多个电子设备可以是电子设备100搜索到的且未曾在自己的指示下进行文档编辑的电子设备。其中,电子设备100可以在与自己处于同一家庭Wi-Fi的电子设备中搜索。本申请实施例对电子设备100搜索附近可用于编辑文档的电子设备的方法不作限定。
设备搜索控件426D可用于可用于触发电子设备100继续搜索与自己处于同一局域网(如同一家庭Wi-Fi)中,且可用于编辑文档的电子设备。
推荐设备选择区域426B可包括一个或多个电子设备的设备选项。这一个或多个电子设备可以是曾经根据电子设备100的指示调用过用于进行文档编辑的应用的电子设备。示例性的,推荐设备选择区域426B包括电子设备300(即张三的平板)的设备选项、以及电子设备300的推荐信息“上次网盘应用A文档编辑协同使用文档编辑应用A”。也即是说,电子设备100曾经通过网盘应用A指示电子设备300调用文档编辑应用A进行文档编辑。电子设备100中存储有会话B的快照信息。上述会话B为在电子设备100上登录当前的设备账号时基于网盘应用A的会话。会话B的快照信息可包括:电子设备100的设备标识、电子设备300的设备标识、电子设备300调用应用的应用标识(如文档编辑应用A的应用包名)、电子设备300的动作类型(即文档编辑的动作)。电子设备100中可存在协同记录存储模块。该协同记录存储模块可用于存储电子设备100指示其它电子设备进行不同类型的协同工作的数据。这些数据可包括电子设备100和与之协同工作的电子设备各自调用的应用的应用标识、与电子设备100协同工作的电子设备所进行的动作的类型。那么,电子设备100在上述会话B中指示电子设备300进行文档编辑的相关数据可存储至上述协同记录存储模块。响应于作用在图4B所示编辑控件的用户操作,电子设备100可以从上述协同记录存储模块中查找电子设备100是否与指示过其它电子设备调用用于进行文档编辑的应用。
响应于作用在电子设备300的设备选项的用户操作,电子设备100可以将图4B所示文档显示区域421中的文档数据发送给电子设备300,并指示电子设备300调用文档编辑应用A。
如图4D所示,电子设备100和电子设备300之间建立有通信连接。当接收到电子设备100发送的文档数据和调用文档编辑应用A的指令,电子设备300可以调用文档编辑应用A,并显示用户界面430。用户界面430可包括文档编辑区域431、保存控件432和取消控件433。文档编辑区域431可用于显示文档内容。保存控件432可用于触发电子设备300保存文档编辑区域431中经过编辑的文档内容。响应于作用在保存控件432的用户操作,电子设备300还可以将经过编辑的文档内容发送给电子设备100。取消控件433用于触发电子设备删除对文档编辑区域431中文档内容的编辑操作。
需要进行说明的是,电子设备100首次通过网盘应用B指示电子设备300调用文档编辑应用A的过程中,电子设备100可以建立会话C,并为会话C分配存储沙箱。会话C的存储沙箱中可用于存储会话C的快照信息。该会话C的快照信息可包括:电子设备100的设备标识、电子设备300的设备标识、电子设备调用应用的应用标识(如网盘应用B的应用包名)、电子设备300的动作类型(即文档编辑的动作)。电子设备100在上述会话C中指示电子设备300进行文档编辑的相关数据可存储至上述协同记录存储模块。
上述图4A~图4D所示的用户界面仅为示例性说明,不应对本申请构成限定。
由上述图4A~图4D所示的实施例可知,电子设备100可以将自己指示其它电子设备进行不同类型的协同工作的数据存储在协同记录存储模块。在电子设备100通过应用A请求其它电子设备协同工作时,电子设备100可以从上述协同记录存储模块查找自己是否通过其它应用与其它电子设备进行过同类型的协同工作。若查找到,电子设备100可以通过应用A请求查找到的连接信息所指示的电子设备来进行上述同类型的协同工作。这可以方便用户调用自己习惯的电子设备来协同工作,提高用户的使用体验。
图5A~图5D示例性示出了另一种建立设备连接关系的场景示意图。
电子设备100可以显示如图5A所示的负一屏界面510。负一屏界面510可包括搜索栏510、应用栏512、快捷工具栏513和新闻栏514。其中:
搜索栏510可用于在电子设备100本地或者在线搜索信息(如应用、新闻、文件等等)。
应用栏512中可包括一个或多个电子设备100最近使用的应用(如扫码应用、付款码应用、音乐应用等等)。例如,响应于作用在付款码应用的用户操作,电子设备100可以显示付款码。本申请实施例对应用栏512中的应用不作限定。
新闻514可用于显示新闻信息。本申请实施例对新闻514中显示的新闻信息不作限定。
快捷工具栏513可包括天气控件513A、快递控件513B和协同设备推荐控件513C。天气控件513可用于查看天气情况(如温度等)。快递控件513B可用于查看快递信息(如快递的物流状态等)。协同设备推荐控件513C可用于获取电子设备100中安装的应用可以请求协同工作的电子设备的信息。快捷工具栏513中还可以包括更多或更少的控件,本申请实施例对此不作限定。
响应于作用在协同设备推荐控件513C的用户操作,电子设备100可以显示如图5B所示的用户界面520。用户界面520可以包括第一推荐框521、第二推荐框522和第三推荐框523。
其中:
第一推荐框521可用于显示电子设备100通过学习应用请求协同工作的电子设备信息。第一推荐框521中可包括学习应用图标521A、上次使用设备521B、附近协同推荐设备521C。电子设备100中的学习应用可用于提供前述实施例中的习题答案提供服务。该学习应用即为前述实施例中课程学习分布式应用中的习题答案提供应用。上次使用设备521B中的电子设备即为前述实施例中的历史协同设备。电子设备100曾经通过学习应用指示上次使用设备521B中的电子设备调用相关的应用进行协同工作。示例性的,上次使用设备521B包括名称为“张三的平板”的电子设备(即电子设备300)和名称为“张三的电视”的电子设备(即电子设备200)。上述会话A为在电子设备100上登录当前的设备账号时基于学习应用的会话。其中,电子设备300为学习终端,可以表示电子设备100指示电子设备300调用的应用为记笔记和答题应用。电子设备300提供记笔记和答题服务,显示如图3F所示的用户界面280。电子设备200为视频输出设备,可以表示电子设备100指示电子设备200进行协同工作的类型为播放视频。电子设备200可以调用用于播放视频的应用(如课程视频播放应用、华为视频应用),播放课程视频,显示如图3F所示的用户界面260。上述电子设备200和电子设备300的信息可以是电子设备100从会话A的存储沙箱中获取的。具体的获取方式可以参考前述实施例的介绍,这里不再赘述。
在一些实施例中,电子设备100可以确定历史协同设备是否处于可用状态。例如,当从会话1的存储沙箱中获取到电子设备200的设备标识,电子设备100可以向电子设备200发送询问消息。若接收到来自电子设备200的回应,电子设备100可以确定电子设备200处于可用状态。若未接收到来自电子设备200的回应(如电子设备200处于断电状态,无法响应电子设备100的询问消息),电子设备200可以确定电子设备200处于不可用状态。本申请实施例对电子设备100确定历史协同设备是否处于可用状态的实现方式不作限定。
电子设备100可以对处于不可用的历史协同设备进行标记,以提示用户该历史协同设备不可用。例如,电子设备100确定上述电子设备200处于不可用状态。上次使用设备521B中的电子设备200可以呈现为灰色。本申请实施例对电子设备100标记不可用的历史协同设备的方法不作限定。
在一些实施例中,电子设备100在请求其它电子设备协同工作时,未指定该电子设备中调用的应用。该电子设备中的多个应用均可与电子设备100实现同类型的协同工作。电子设备100可以显示如图5C的应用选择界面530。响应于作用在应用选择界面530中选择任意一个应用选项的用户操作,电子设备100可以指示与自己协同工作的电子设备调用被选择的应用。示例性的,上次使用设备521B中的电子设备均处于可用状态。响应于作用在图5B所示上次使用设备521B的用户操作,电子设备100可以请求上述使用设备521B中的电子设备进行协同工作。其中,电子设备100可以指示电子设备300提供记笔记和答题服务,并指示电子设备200提供课程视频播放服务。电子设备300中用于提供记笔记和答题服务的应用为记笔记和答题应用。电子设备200中用于提供课程视频播放服务的应用包括课程视频播放应用和华为视频应用。电子设备100可以显示如图5C所示的应用选择界面530。应用选择界面530可包括应用选项区域521和确定控件532。应用选项区域521可包括课程视频播放应用的选项和华为视频应用的选项。响应于选择课程视频播放应用的选项的用户操作以及作用在确定控件532的用户操作,电子设备100可以指示电子设备200调用课程视频播放应用。另外,电子设备300可以调用记笔记和答题应用来提供记笔记和答题服务。
在一些实施例中,电子设备100可以根据会话A的快照信息来指定与自己协同工作的电子设备调用的应用。示例性的,根据会话A的快照信息,电子设备100可以确定自己曾经与电子设备200和电子设备300协同工作的过程中,电子设备200调用的应用为课程视频播放应用,电子设备300调用的应用为记笔记和答题应用。响应于作用在上次使用设备521B的用户操作,电子设备100可以指示电子设备200调用课程视频播放应用,并指示电子设备300调用记笔记和答题应用。
在一些实施例中,电子设备100可以响应作用在上次使用设备521B中任意一个电子设备上的用户操作,并指示该电子设备提供相应的服务。示例性的,响应于作用在上次使用设备521B中名称为“张三的平板”的电子设备的用户操作,电子设备100可以指示名称为“张三的平板”的电子设备提供记笔记和答题服务。进一步的,响应于作用在上次使用设备521B中名称为“张三的电视”的电子设备的用户操作,电子设备100可以指示名称为“张三的电视”的电子设备提供课程视频播放服务。
附近协同推荐设备521C可以包括电子设备100搜索到,但未在电子设备100的指示下进行协同工作的电子设备。例如,名称为“李四的平板”的电子设备和名称为“李四的电视”的电子设备。其中,根据上述会话1的快照信息,电子设备100可以将与历史协同设备同类型的电子设备推荐为与该历史协同设备进行同类型的协同工作的电子设备。例如,名称为“李四的平板”的电子设备与电子设备300是同类型的电子设备。电子设备100可以将名称为“李四的平板”的电子设备确定为学习终端。即响应于作用在附近协同推荐设备521的用户操作,电子设备100可以指示名称为“李四的平板”的电子设备调用记笔记和答题应用。同样的,名称为“李四的电视”的电子设备与电子设备200是同类型的电子设备。电子设备100可以将名称为“李四的电视”的电子设备确定为视频输出设备。即响应于作用在附近协同推荐设备521的用户操作,电子设备100可以指示名称为“李四的电视”的电子设备播放课程视频。电子设备100搜索得到附近协同推荐设备521C中的电子设备的方法可以参考前述图2E所示的实施例,这里不再赘述。
第二推荐框522可用于显示电子设备100通过网盘应用A请求协同工作的电子设备信息。第二推荐框522中可包括网盘应用A图标522A、上次使用设备522B、附近协同推荐设备522C。上次使用设备522B、附近协同推荐设备522C可以参考前述第一推荐框521中的介绍,这里不再赘述。网盘应用A可以是前述实施例中的传统应用。由第二推荐框522可知,电子设备100曾经通过网盘应用A指示名称为“张三的平板”的电子设备进行文档编辑的协同工作。
第三推荐框522可用于显示电子设备100通过网盘应用B请求协同工作的电子设备信息。第三推荐框522中可包括网盘应用B图标523A和附近协同推荐设备523B。附近协同推荐设备523B中可包括电子设备100通过网盘应用B之外的应用请求进行同类型的协同工作的电子设备。示例性的,电子设备100未通过网盘应用B请求其它电子设备进行协同工作。电子设备100可以在前述协同记录存储模块中查找到自己通过网盘应用A指示名称为“张三的平板”的电子设备调用文档编辑应用A。附近协同推荐设备523B中可包括名称为“张三的平板”的电子设备。附近协同推荐设备523B中还可以包括提示语“上次网盘应用A文档编辑协同使用文档编辑应用A”,来向用户推荐同一类型协同工作的记录。
如图5D所示,响应于作用在附近协同推荐设备523B的用户操作,电子设备100可以通过网盘应用B指示名称为“张三的平板”的电子设备调用文档编辑应用A。这样,对于电子设备100中一个未与其它电子设备协同工作的应用,用户也可以方便地在电子设备100上通过该应用调用自己习惯的电子设备来协同工作,提高用户的使用体验。电子设备100推荐同类型的协同工作的电子设备的具体方法可以参考前述图4A~图4D所示的实施例。
用户界面520中还可以包含更多或更少与电子设备100中的应用关联的推荐框。
电子设备100显示图5A所示负一屏界面510的方法可以参考现有技术中的实现方法,本申请实施例对此不作限定。
图5A~图5D示例性示出了一些用户在电子设备100上通过一个应用来请求其它电子设备协同工作的用户操作。其中,电子设备100通过一个应用请求其它电子设备协同工作过程中,电子设备之间建立通信连接的方法、电子设备创建会话和存储会话的快照信息的方法均可以参考前述实施例。相比于图3A~图3F和图4A~图4D所示的用户操作,通过图5A~图5D所示的用户操作,用户可以在负一屏界面510中的快捷工具栏,更便捷地通过一个应用与其它电子设备建立通信连接并请求上述其它电子设备协同工作。
下面基于图2A~图2I所示的场景,介绍本申请实施例提供的一种通信系统500。
图6示例性示出了通信系统500的架构示意图。如图6所示,通信系统500可包括电子设备100、电子设备200和电子设备300。电子设备100、电子设备200和电子设备300中安装有课程学习分布式应用中不同服务的程序安装包。例如,电子设备100中安装有习题答案提供应用。该习题答案提供应用可以提供习题答案提供服务(即ability1)。该习题答案提供应用可以是前述图2A中学习应用图标211对应的应用。电子设备200中安装有课程视频播放应用。该课程视频播放应用可以提供课程视频播放服务(即ability2)。电子设备300中安装有记笔记和答题应用。该记笔记和答题应用可以提供记笔记和答题服务(即ability3)。上述习题答案提供应用、上述课程视频播放应用、上述记笔记和答题应用均属于课程学习分布式应用。上述课程学习分布式应用的应用包名可以例如是com.example.study。可提供一个分布式应用中一项服务的应用还可以具有服务包名。例如,上述记笔记和答题应用还可以具有服务包名,如:.StudyNotePadServiceAbility。本申请对上述应用包名不作限定。可选的,用于提供一个分布式应用中不同服务的应用也可以具有不同的应用包名。
在一些实施例中,电子设备100中的习题答案提供应用还包括设备连接程序。上述设备连接程序可用于电子设备100与其它电子设备协同工作。其中,运行上述设备连接程序,电子设备100可以与设备连接程序中指示的电子设备建立通信连接。电子设备100还可以指示与之连接的电子设备调用相应的应用。可选的,上述设备连接程序和习题答案提供应用可以分别包含于两个独立的程序安装包。当电子设备100安装上述习题答案提供应用和设备连接程序,电子设备100可以通过习题答案提供应用中的接口(如图2D所示的视频输出设备选择控件242、学生学习设备选择控件243)接收相关用户操作,执行设备连接程序,来调用其它电子设备进行协同工作。或者,电子设备100可以通过图5A所示快捷工具栏513中的接口(如协同设备推荐控件513C)接收相关用户操作,执行设备连接程序,来调用其它电子设备进行协同工作。
示例性的,电子设备100中设备连接程序可以为:
上述指令“reqConnections”可用于定义不同类型的协同工作。协同工作的类型可以由电子设备100指示其它电子设备所进行的动作的类型确定。下述表1可说明在定义不同类型的协同工作时需要确定的字段,以及各字段的含义。
字段 | 是否必选 | 描述 |
action | 是 | 动作的类型 |
devices | 是 | 可连接的设备类型 |
bundleName | 否 | 应用包名 |
abilityName | 否 | 服务包名 |
label | 否 | 动作的名称 |
表1
由表1可知,字段“action”、“devices”是必须确定的字段。字段“bundleName”、“abilityName”、“label”是可选的字段。不限于上述字段,定义不同类型的协同工作时还可以包含更多或更少的字段。
由上述设备连接程序可知,上述指令“reqConnections”中定义了两种不同类型的协同工作。其中,第一种类型的协同工作为电子设备100指示其它电子设备播放视频的协同工作。在该第一种类型的协同工作中,电子设备100可以连接的设备类型包括:手机、平板、电视、智能汽车。即电子设备100在搜索电子设备时,可以搜索上述字段“devices”中包括的设备类型。该第一种类型的协同工作没有指定应用包名和服务包名。即电子设备100指示其它电子设备播放课程视频时,不指定上述其它电子设备调用的应用。
在一种可能的实现方式中,电子设备100通过习题答案提供应用指示电子设备200播放课程视频。电子设备200可以优先调用与上述习题答案提供应用属于同一分布式应用的应用(如课程视频播放应用)来播放课程视频。若电子设备200中未安装有上述课程视频播放应用,电子设备100可以调用其它应用(如华为视频应用)来播放课程视频。
在另一种可能的实现方式中,电子设备100曾经通过习题答案提供应用指示电子设备200播放课程视频,且电子设备200调用上述课程视频播放应用来播放课程视频。电子设备100中存储有会话1的快照信息。该会话1为在电子设备100上登录当前的设备账号时基于习题答案提供应用的会话。该会话1的快照信息中可包括上述课程视频播放应用的应用标识(即课程学习分布式应用的应用包名com.example.study)。当电子设备100再次通过习题答案提供应用指示电子设备200播放课程视频时,电子设备100可以将上述课程视频播放应用的应用标识发送给电子设备200,来指示电子设备200调用历史协同应用(即上述课程视频播放应用)播放课程视频。若电子设备200无法调用上述课程视频播放应用,电子设备200也可以调用其它应用(如华为视频应用)来播放课程视频。
在另一种可能的实现方式中,电子设备100通过习题答案提供应用指示电子设备200播放课程视频。电子设备200可以查找可用于播放视频的应用,并显示查找到应用的应用选项。响应于选择上述应用选项中一个应用选项的用户操作,电子设备200可以调用该应用选项对应的应用来播放课程视频。
第二种类型的协同工作为电子设备100指示其它电子设备提供记笔记和答题服务的协同工作。该第二种类型的协同工作指定了应用包名和服务包名。上述应用包名和服务包名可用于指示电子设备协同工作的实现方式。即电子设备100指示其它电子设备提供记笔记和答题服务时,指定上述其它电子设备调用的应用。
示例性的,电子设备100通过习题答案提供应用指示电子设备300调用上述记笔记和答题应用。若电子设备300中安装有记笔记和答题应用,电子设备300可以调用记笔记和答题应用。若电子设备300中没有安装记笔记和答题应用,电子设备300可以向云服务器获取记笔记和答题应用并进行调用。
在一些实施例中,上述设备连接程序中定义一种类型的协同工作时可以仅指定应用包名,而不指定服务包名。示例性的,电子设备100通过习题答案提供应用指示电子设备200调用传统应用(如华为视频应用),来播放课程视频。上述第一种类型的协同工作的定义中可包括字段“bundleName”。该字段“bundleName”的值可以为华为视频应用的应用包名。
上述指令“onConnectAbilityReq”可用于电子设备100与电子设备300建立连接,并指示电子设备300调用记笔记和答题应用。
在一些实施例中,电子设备100首次通过上述习题答案提供应用请求其它电子设备协同工作。例如,电子设备100请求电子设备300调用记笔记和答题应用。电子设备300调用记笔记和答题应用可以显示如图2I所述的用户界面280。电子设备100可以创建图6所示的会话1。电子设备100可以根据电子设备100上登录的设备账号以及习题答案提供应用的应用包名(如com.example.study)确定会话1的会话标识。电子设备100可以为会话1分配存储沙箱(即图6所示的会话1存储沙箱A)。会话1存储沙箱A的位置可以是:…/data/user/<电子设备100的设备账号>/com.example.study/<会话1的会话标识>/…。
由于上述第二种类型的协同工作的定义中指定了应用包名和服务包名,电子设备100可以将上述会话1的会话标识传递给电子设备300,并指示电子设备300调用记笔记和答题应用。电子设备300中,上述会话1的会话标识可以传递至上述记笔记和答题应用。电子设备300可以在本地为会话1分配存储沙箱(即图6所示的会话1存储沙箱C)。会话1存储沙箱C的位置可以是:…/data/user/<电子设备300的设备账号>/com.example.study/<会话1的会话标识>/…。
会话1存储沙箱A可用于存储会话1的快照信息。会话1的快照信息可包括电子设备100与电子设备300的连接信息。该连接信息可包括:电子设备100的设备标识、电子设备300的设备标识、电子设备300调用服务所述应用的应用标识、电子设备300调用服务的服务标识,电子设备300动作的类型。会话1的快照信息还可包括电子设备300中记笔记和答题应用的活动信息。该活动信息可包括:笔记数据、答题数据。不限于上述内容,会话1的快照信息还可以包括更多或更少的内容。
会话1存储沙箱C可用于存储上述电子设备300中记笔记和答题应用的活动信息。当再次调用上述记笔记和答题应用时,电子设备300可以根据会话1存储沙箱C中存储的上述活动信息来确定记笔记和答题应用的状态。这样,电子设备100再次指示电子设备300调用记笔记和答题应用时,电子设备300可以将记笔记和答题应用恢复至最近一次退出记笔记和答题应用的状态。
电子设备100创建会话1的场景不限于上述电子设备100首次通过上述习题答案提供应用请求其它电子设备协同工作的场景。在一些实施例中,电子设备100曾经通过上述习题答案提供应用请求电子设备300调用过记笔记和答题服务,且该过程创建的会话已被清理。那么,电子设备100再次通过上述习题答案提供应用请求其它电子设备协同工作时,电子设备100查找不到响应的会话标识。电子设备100可以创建会话1。该会话1是在电子设备100登录当前设备账号时基于上述习题答案提供应用的会话。
在另一些实施例中,电子设备100通过上述习题答案提供应用请求其它电子设备协同工作时,可以查询到会话1的会话标签。即电子设备100曾经通过上述习题答案提供应用请求其它电子设备协同工作。电子设备100可以从上述会话1存储沙箱A中获取会话1的快照信息。电子设备100可以将会话1的会话标识发送给会话1的快照信息指示的电子设备(如电子设备300),并请求电子设备300调用记笔记和答题应用。其中,电子设备300可以显示如图3F所示的用户界面280。
电子设备100与电子设备200建立连接,并指示电子设备200播放课程视频的指令可以参考上述指令“onConnectAbilityReq”。
在一些实施例中,电子设备100中存储有会话1的会话标识以及会话1的快照信息。该会话1的快照信息可存储在会话1存储沙箱A中。
由于上述第一种类型的协同工作的定义中未指定应用包名和服务包名,电子设备100通过上述习题答案提供应用指示电子设备200播放课程视频时,可以将上述会话1的会话标识传递给电子设备200。电子设备200可以选择一个可用于播放课程视频的应用(如课程视频播放应用、华为视频应用等)。具体的选择方法可以为:选择与上述习题答案提供应用属于同一个分布式应用的应用、根据会话1的快照信息选择电子设备200曾经与电子设备100协同工作时播放视频的应用、根据接收到的用于选择播放课程视频的应用的用户操作进行选择。本申请实施例对电子设备200选择一个可用于播放课程视频的应用的方法不作限定。例如,电子设备200可以选择调用课程视频播放应用。那么在电子设备200中,上述会话1的会话标识可以传递至上述课程视频播放应用。电子设备200可以在本地为会话1分配存储沙箱(即图6所示的会话1存储沙箱B)。会话1存储沙箱B的位置可以是:…/data/user/<电子设备200的设备账号>/com.example.study/<会话1的会话标识>/…。
会话1存储沙箱B可用于存储电子设备200中课程视频播放应用的活动信息。该活动信息可包括电子设备200播放课程视频的课程标识、播放进度。当再次调用上述课程视频播放应用时,电子设备100可以根据会话1存储沙箱B中存储的活动信息来确定课程视频播放应用的状态。这样,电子设备100再次指示电子设备200调用课程视频播放应用时,电子设备200可以将课程视频播放应用恢复至最近一次退出课程视频播放应用的状态。例如,电子设备200可以显示如图3F所示的用户界面260。
若电子设备100首次通过习题答案提供服务指示其它电子设备播放课程视频,且电子设备200被选中,电子设备200调用课程视频播放应用,那么电子设备100可以将电子设备100与电子设备200的连接信息存储至会话1存储沙箱A。上述电子设备100与电子设备200的连接信息可包括:电子设备100的设备标识、电子设备200的设备标识、电子设备200调用服务所述应用的应用标识、电子设备200调用服务的服务标识、电子设备200的动作类型。上述电子设备100与电子设备200的连接信息可以包含与会话1的快照信息。会话1的快照信息还可以包括上述电子设备200课程视频播放应用的活动信息。
若电子设备100曾经通过习题答案提供服务指示电子设备200播放课程视频,并且电子设备200调用课程视频播放应用来播放视频,那么存储在会话1存储沙箱A中会话1的快照信息可包括电子设备100与电子设备200的连接信息。会话1的快照信息还可以包括上述电子设备200课程视频播放应用的活动信息。会话1存储沙箱A中存储有电子设备100与电子设备200的连接信息时,电子设备100通过上述习题答案提供应用请求其它电子设备播放课程视频的方法可以前述实施例中,电子设备100再次通过习题答案提供应用请求其它电子设备调用记笔记和答题服务的方法。这里不再赘述。
下面对电子设备100更新会话1的快照信息的方法进行介绍。
在一些实施例中,电子设备100可以周期性记录会话1的快照信息。
电子设备100可以根据前述实施例中的方法请求电子设备200和电子设备300与自己协同工作。如图6所示,电子设备100可以通过习题答案提供应用指示电子设备200调用课程视频播放应用,并指示电子设备300调用记笔记和答题应用。在上述协同工作的过程中,电子设备100可以在会话1存储沙箱A中存储图6所示会话1的快照信息。
如图6所示,会话1的快照信息可以包括一条或多条记录。其中,一条记录可包括电子设备100与一个电子设备的连接信息、在该连接关系下上述一个电子设备中调用应用的活动信息、这一条记录的记录时间。上述一条记录中的连接信息可以包括源设备标识、目的设备标识、应用标识和服务标识。源设备可以为指示其它电子设备调用相关应用的电子设备(如电子设备100)。目的设备可以为接收调用指令调用相关应用的电子设备(如电子设备200、电子设备300)。应用标识可以为目的设备调用应用的应用包名(如com.example.study)。服务标识可以为目的设备调用服务的服务包名。上述服务标识可以是可选字段。例如,若目的设备调用的应用为不以服务为单位提供程序安装包,该目的设备所在的一条记录中服务标识可以为空。一条记录的记录时间可以由这一条记录的活动信息确定。即上述活动信息可以为目的设备中调用应用在上述记录时间的活动信息。例如,图6所示的第一条记录为电子设备100与电子设备200协同工作的记录。这一条记录的记录时间为t1。这一条记录的活动信息可包括电子设备200在时间为t1时播放课程视频的课程标识以及播放进度。
电子设备100可以周期性记录会话1的快照信息的具体方法可以为:电子设备100可以每隔预设时间段请求获取电子设备200中课程视频播放应用的活动信息。当得到上述活动信息,电子设备100可以更新图6所示会话1的快照信息中第一条记录的活动信息和记录时间。
电子设备200可以在会话1存储沙箱中B中存储课程视频播放应用的活动信息。电子设备200也可以周期性记录上述活动信息。不限于上述课程视频的课程标识、播放进度,会话1存储沙箱B中还可存储有课程视频的缓存数据等等。本申请实施例对此不作限定。
电子设备100记录图6所示会话1的快照信息中第二条记录的方法可以参考前述实施例。会话1的快照信息中一条记录还可以包括更多或更少的字段。例如,一条记录的字段还可以包括目的设备的动作的类型等等。本申请实施例对会话的快照信息的存储形式不作限定。除了图6所示的表格形式,快照信息还可以其它形式存储于存储沙箱中。
在另一些实施例中,电子设备100可以响应用户操作来记录会话1的快照信息。
示例性的,在电子设备100与电子设备200协同工作的过程中,响应于作用在电子设备200上用于退出课程视频播放的用户操作,电子设备200可以将退出课程视频播放时(如t3时刻)播放课程视频的课程标识、播放进度发送给电子设备100。电子设备100可以利用接收到的t3时刻播放课程视频的课程标识、播放进度,来更新会话1的快照信息中第一条记录的活动信息和记录时间。
由图6所示的通信系统500可知,电子设备100通过应用A(如上述习题答案提供应用)请求其它电子设备协同工作实现应用场景A时,电子设备100可以将会话A(如上述会话1)的会话标识传递给与自己协同工作的电子设备。电子设备100可以与自己处于同一会话的电子设备交互数据。上述会话A为在电子设备100上登录当前的设备账号时基于应用A的会话。电子设备100可以利用会话A的快照信息恢复与历史协同设备的连接关系。上述历史协同设备可以是在曾经实现应用场景A时与电子设备100建立过连接关系的电子设备。这样,用户可以不用分别在多个电子设备上进行操作,来建立这多个电子设备的连接关系。这不仅简化了多个电子设备建立连接时的用户操作,还方便用户调用自己习惯的电子设备,更快地进入到熟悉的应用场景,提高了用户体验。
另外,上述会话A的快照信息中还可包括在实现应用场景A时,电子设备100和历史协同设备各自调用应用的活动信息。可选的,历史协同设备本地也可存储有自己调用应用的互动信息。根据上述活动信息,电子设备100和历史协同设备调用应用实现应用场景A时可以将应用的状态恢复至活动信息指示的状态。该活动信息例如是视频的播放进度。电子设备可以从活动信息指示的播放进度来播放视频。这样,电子设备100和历史协同设备可以从最近一次中断协同工作的位置处继续协同工作,来实现应用场景A。
下面介绍本申请实施例提供的另一种通信系统600。
图7示例性示出了通信系统600的架构示意图。如图7所示,通信系统600可包括电子设备100、电子设备200和电子设备400。电子设备100上登录的设备账号与电子设备400上的登录的设备账号不同。
电子设备100、电子设备200和电子设备400中可安装有课程学习分布式应用中不同服务的程序安装包。例如,电子设备100和电子设备400中均安装有习题答案提供应用。该习题答案提供应用可以提供习题答案提供服务(即ability1)。电子设备200中安装有课程视频播放应用。该课程视频播放应用可以提供课程视频播放服务(即ability2)。
电子设备100可以通过自己安装了习题答案提供应用请求电子设备200播放课程视频。电子设备400也可以通过自己安装了习题答案提供应用请求电子设备200播放课程视频。电子设备100和电子设备400请求电子设备200播放课程视频的实现过程可以参考前述图6所示的实施例。
由图7可以看出,在电子设备100通过习题答案提供应用指示电子设备200播放课程视频时,电子设备100可以将会话1的会话标识发送给电子设备200。电子设备200可以调用课程视频播放应用,并为会话1分配存储沙箱(即会话1存储沙箱B)。会话1存储沙箱B的位置可以是:…/data/user/<电子设备200的设备账号>/com.example.study/<会话1的会话标识>/…。在电子设备100和电子设备200基于上述会话1进行通信的过程中,课程视频播放应用可以读取会话1存储沙箱B中的数据,并向会话1存储沙箱B中写入数据。
电子设备400中包括会话2存储沙箱A。会话2存储沙箱A可用于存储会话2的快照信息。该会话2是在电子设备400登录当前设备账号时基于上述习题答案提供应用的会话。在电子设备400通过习题答案提供应用指示电子设备200播放课程视频时,电子设备400可以将会话2的会话标识发送给电子设备200。电子设备200可以调用课程视频播放应用,并为会话2分配存储沙箱(即会话2存储沙箱B)。会话2存储沙箱B的位置可以是:…/data/user/<电子设备200的设备账号>/com.example.study/<会话2的会话标识>/…。在电子设备400和电子设备200基于上述会话2进行通信的过程中,课程视频播放应用可以读取会话2存储沙箱B中的数据,并向会话2存储沙箱B中写入数据。
由上述实施例可以看出,电子设备可以以应用和会话为单位来隔离本地的存储沙箱。
在一些实施例中,一个电子设备可以接收到来自不同电子设备用于调用同一个应用的指令。上述不同电子设备上登录的设备账号不同。上述不同电子设备可以分别向上述一个电子设备发送自己创建的会话的会话标识。当接收到不同会话的会话标识,上述一个电子设备可以为这些不同的会话分别分配存储沙箱。由于上述不同的电子设备指示上述一个电子设备调用同一个应用,则上述不同会话的存储沙箱均可被上述同一个应用读写数据。其中,上述一个电子设备在基于一个会话进行协同工作的过程中,上述一个电子设备调用的应用可以对这一个会话的存储沙箱进行读写数据的操作。即同一个应用在不同会话下可对不同的存储沙箱进行读写数据的操作。
在另一些实施例中,一个电子设备通过应用C指示另一个电子设备调用应用D和应用E。上述一个电子设备中存在会话C的会话标识。该会话C的会话标识是在上述一个电子设备登录当前设备账号时基于上述应用C的会话。上述一个电子设备通过应用C指示上述另一个电子设备调用应用D时,上述一个电子设备可以将会话C的会话标识传递给上述另一个电子设备。上述另一个电子设备可以将本地的存储沙箱D分配给会话C。上述应用D可以对存储沙箱D进行读写数据的操作。上述一个电子设备通过应用C指示上述另一个电子设备调用应用E时,上述一个电子设备可以将会话C的会话标识传递给上述另一个电子设备。上述另一个电子设备可以将本地的存储沙箱E分配给会话C。上述应用E可以对存储沙箱E进行读写数据的操作。即不同应用在同一个会话下可对不同的存储沙箱进行读写数据的操作。
在一些实施例中,一个会话的快照信息可以存储在分布式存储系统中。上述分布式存储系统可以包括多个存储设备。这多个存储设备可以进行数据共享和同步。与一个会话相关的多个电子设备均可以从分布式存储系统中获取这一个会话的快照信息。与一个会话相关的多个电子设备可以为一个会话中的主设备(如电子设备100)和子设备(这一个会话中与电子设备100协同工作的电子设备)。上述方法可以方便与一个会话相关的电子设备获取这一个会话的快照信息。并且,分布式存储系统中的存储设备可以是计算性能和存储性能优于与一个会话相关的多个电子设备的设备。利用上述分布式存储系统,与一个会话相关的多个电子设备可以节省自己的计算资源和存储资源。
下面具体以图8所示的通信系统700来介绍本申请实施例涉及的一种分布式存储的方法。
如图8所示,通信系统700可包括电子设备100、电子设备200、电子设备300和分布式存储系统710。其中,电子设备100可以通过习题答案提供应用指示电子设备200调用课程视频播放应用。这一协同工作过程中的连接信息、课程视频播放应用的活动信息均可包含于会话1的快照信息。会话1为电子设备100在登录当前设备账号时基于习题答案提供应用的会话。电子设备200可以通过习题答案提供应用指示电子设备200地道用课程视频播放应用。这一协同工作过程中的连接信息、课程视频播放应用的活动信息均可包含于会话2的快照信息。会话2为电子设备400在登录当前设备账号时基于习题答案提供应用的会话。电子设备100和电子设备400中登录的设备账号不同。
在一种可能的实现方式中,分布式存储系统710中可包括会话1存储沙箱711、会话2存储沙箱712等等其它为其它会话分配的存储沙箱。分布式存储系统710中一个会话的存储沙箱的位置可以根据这一个会话中主设备的设备账号、主设备上调用子设备协同工作的应用的应用标识、这一个会话的会话标识确定。一个会话相关的多个电子设备均可以对分布式存储系统710中这一个会话的存储沙箱进行读写操作。上述会话1存储沙箱711和会话2存储沙箱712分别为分布式存储系统710为会话1和会话2分配的存储沙箱。
电子设备100建立会话1时,可以指示分布式存储系统710为会话1分配存储沙箱。会话1存储沙箱711的位置可以由电子设备100的设备账号、上述习题答案提供应用的应用标识、会话1的会话标识确定。当电子设备100通过习题答案提供应用请求其它电子设备调用课程视频播放应用时,电子设备100可以从分布式存储系统710的会话1存储沙箱711中获取会话1的快照信息。该会话1的快照信息可包括电子设备100与电子设备200的连接信息。那么,电子设备100可以请求与电子设备200连接,并指示电子设备200调用课程视频播放应用。电子设备100可以将会话1的会话标识传递至电子设备200。电子设备200确定自己在会话1的通信连接中。电子设备200可以将课程视频播放应用的活动信息(如课程视频的课程标识、播放进度)存储至分布式存储系统710的会话1存储沙箱711中。
电子设备400建立会话2时确定上述会话2存储沙箱712的方法可以参考电子设备100建立会话1确定会话1存储沙箱711的方法。电子设备200确定自己在会话2的通信连接中时,可以对上述会话2存储沙箱712进行读写操作。
分布式存储系统710中的多个存储设备可以包括与各会话的主设备、子设备中的一个或多个电子设备。例如,分布式存储系统710中的多个存储设备可以包括电子设备100和电子设备200。可选的,分布式存储系统710中的多个存储设备还可以包括各会话的主设备、子设备以外的电子设备。例如,电子设备100和电子设备200均与同一个路由器连接。在电子设备100通过习题答案提供应用指示电子设备100调用课程视频播放应用的场景中,电子设备100可以指示与自己连接的路由器为会话1分配存储沙箱。该路由器中可存在会话1存储沙箱711。该路由器即可为分布式存储沙箱710中的一个存储设备。
在一种可能的实现方式中,电子设备100可以对路由器中的会话1存储沙箱进行读写操作。电子设备200可以将课程视频播放应用的活动信息发送给电子设备100。进一步的,电子设备100可以将接收到的课程视频播放应用的活动信息存储至会话1存储沙箱711。
在另一种可能的实现方式中,电子设备100可以将路由器中会话1存储沙箱711的位置发送给电子设备200。电子设备200可以从会话1存储沙箱711获取会话1的快照信息,并将课程视频播放应用的活动信息存储至会话1存储沙箱711。这样,若在电子设备100通过习题答案提供应用指示电子设备200播放课程视频的过程中,电子设备100离开,电子设备200可以继续更新会话1的快照信息。
在一些实施例中,一个会话中的主设备、子设备仍可在本地为这一个会话分配图6和图7所示的存储沙箱,并将会话的快照信息存储在本地的存储沙箱中。
本申请实施例对各会话中的主设备、子设备与分布式存储系统710中的存储设备建立通信连接的方法不作限定。具体可以参考现有技术中分布式存储技术的实现方法。
通过上述分布式存储系统,一个会话中的主设备和子设备均可以便捷地获取并记录这一个会话的快照信息。并且,分布式存储系统中的存储设备可以是计算性能和存储性能优于与一个会话相关的多个电子设备的设备。利用上述分布式存储系统,与一个会话相关的多个电子设备可以节省自己的计算资源和存储资源。
在一些实施例中,一个电子设备通过一个应用请求其它电子设备与自己协同工作时,这一个电子设备可以对自己搜索到的电子设备进行优先级排序。这一个电子设备可以选择优先级排序最前且可以进行协同工作的电子设备。
下面对本申请实施例提供的一种电子设备选择与自己协同工作的电子设备的方法进行介绍。
这里具体以电子设备100通过习题答案提供服务来请求其它电子设备播放课程视频的场景为例进行介绍。其中,电子设备100可以建立会话1。会话1可以是在电子设备100登录当前设备账号时基于上述习题答案提供应用的会话。
首先,电子设备100可以从会话1的存储沙箱中获取会话1的快照信息。若会话1的快照信息存在电子设备100请求其它电子设备播放课程视频的连接信息,电子设备100可以可以根据该连接信息指示历史协同设备调用历史协同应用来播放课程视频。例如,会话1的快照信息中包括图6所示会话1存储沙箱A中快照信息的第一条记录。该第一条记录可以表示电子设备100指示电子设备200调用课程视频播放应用。则历史协同设备为电子设备200。历史协同应用为课程视频播放应用。如果电子设备200处于可用状态,电子设备100可以指示电子设备200调用课程视频播放应用。可选的,若电子设备200无法调用课程视频播放应用,电子设备200可以调用其它可用于播放课程视频的应用(如华为视频应用)来播放课程视频。电子设备200处于可用状态可以表示电子设备可以与其它电子设备建立通信连接,并运行自己安装的应用。
在一些实施例中,若电子设备100从会话1的快照信息中查找到多个被指示播放课程视频的历史协同设备,且这多个历史协同设备均处于可用状态,电子设备100可以根据设备类型对这多个历史协同设备进行优先级排序。设备类型可以表示设备的私密度。私密度越低的电子设备,排序越靠前。不同类型的设备的私密度可以为电视=音箱<平板<手表=手机。例如,这多个历史协同设备中包括电视和平板,电子设备100可以优先选取指示电视调用课程视频播放应用。可选的,电子设备100的设备连接程序中包括设备的优先级排序。该优先级排序可以例如是电视、平板、手机、智能汽车。其中电视的优先级排序最前。若这多个历史协同设备中包括电视和平板,电子设备100可以优先选择指示电视调用课程视频播放应用。
电子设备100请求私密度高的电子设备协同工作可能需要用户在私密度高的电子设备上确认。私密度越低的电子设备,排序越靠前。电子设备100优先选择私密度低的电子设备可以简化连接过程中的用户操作,提高设备连接的效率。
在一些实施例中,若电子设备100从会话1的快照信息中查找到上述历史协同设备但历史协同设备处于不可用的状态,电子设备100可以对自己搜索到的但未曾在自己的指示下播放过课程视频的电子设备进行优先级排序。其中,被搜索到的电子设备中的优先级排序从前到后可以为:与历史协同设备的设备账号相同且设备类型相同的电子设备、与历史协同设备的设备账号相同但设备类型不同电子设备、与历史协同设备的设备账号不同但设备类型相同的电子设备、与历史协同设备的设备账号不同且设备类型不同的电子设备。
其中,若上述与历史协同设备的设备账号相同但设备类型不同电子设备有多个,则这多个电子设备可以根据上述私密程度进行优先级排序,或者根据电子设备100的设备连接程序中定义的顺序进行优先级排序。若与历史协同设备的设备账号不同且设备类型不同的电子设备有多个,则这多个电子设备也可以根据上述私密程度进行优先级排序,或者根据电子设备100的设备连接程序中定义的顺序进行优先级排序。电子设备100可以指示优先级排序最前且可以进行协同工作的电子设备来播放课程视频。
在一些实施例中,若电子设备100从会话1的快照信息中未查找到被指示播放课程视频的历史协同设备,电子设备100可以从前述实施例所述的协同记录存储模块中查找电子设备100是否指示过其它电子设备进行过同类型的协同工作(即指示其它电子设备进行播放视频的动作)。例如,电子设备100通过一个应用(习题答案提供应用以外的应用)指示电子设备200调用华为视频应用。电子设备100可以将与电子设备200连接并调用华为视频应用播放课程视频的选项提供给用户。或者,电子设备100可以直接指示电子设备200调用华为视频应用播放课程视频。
在一些实施例中,电子设备100可以将自己搜索到的电子设备按照上述优先级排序的顺序推荐给用户,并接收用于选择设备的用户操作。电子设备100可以指示被选择的电子设备调用课程视频播放应用。
由上述选择协同工作的电子设备的方法可知,一个会话中的主设备可以优先选择请求历史协同设备再次进行协同工作。这方便用户调用自己习惯的电子设备,更快地进入到熟悉的应用场景,提高了用户体验。并且,若历史协同设备不可用,主设备可以根据上述优先级排序选择排序在前且可以协同工作的电子设备进行协同工作。
在一些实施例中,一个会话的主设备和子设备组成的通信系统中可包括多级连接。上述主设备可以将上述多级连接中每个节点之间的连接信息存储至这一个会话的存储沙箱中。根据上述每个节点之间的连接信息,上述主设备可以恢复上述多级连接。
下面以图9所示的通信系统800为例介绍本申请实施例提供的电子设备建立多级连接的方法。
如图9所示,通信系统800可包括电子设备810、电子设备820、电子设备830、电子设备840和电子设备850。其中,电子设备810中可安装有应用811。电子设备820中可安装有应用821。电子设备830中可安装有应用831。电子设备840中可安装有应用841。电子设备850中可安装有应用851。
通信系统800可以是由会话801的主设备和子设备组成的。一个会话的主设备可用于建立这一个会话中协同工作的多个电子设备之间的连接关系。这一个会话的会话标识可以由主设备的设备账号和主设备上请求其它电子设备协同工作的应用的应用标识确定。一个会话可以仅有一个主设备。一个会话的子设备可以为这一个会话中与主设备协同工作的电子设备。如图9所示,会话801的主设备为电子设备810,子设备包括电子设备820、电子设备830、电子设备840和电子设备850。
在会话801中,电子设备810通过应用指示电子设备820调用应用821,并指示电子设备840调用应用841。电子设备820通过应用821指示电子设备830调用应用831。电子设备840通过应用841指示电子设备850调用应用851。其中,一个电子设备可以存储自己开启一个应用的方式。上述开启一个应用的方式可以包括被动开启和主动开启。被动开启可以表示电子设备接收到来自其它电子设备指示调用这一个应用的指令,而开启这一个应用。主动开启可以表示电子设备接收到用于开启这一个应用的用户操作(如作用在这一个应用的应用图标上的用户操作),而开启这一个应用。在电子设备820开启应用821的开启方式为上述被动开启的情况下,电子设备820通过应用821指示电子设备830调用应用831的连接信息包含于会话801的快照信息。若电子设备820主动开启应用821,并通过应用821指示电子设备830调用应用831,电子设备820可以作为主设备创建会话,并将与电子设备830的连接信息存储至自己创建的会话的存储沙箱中。
通信系统800包括两级连接。第一级连接为主设备(即电子设备810)与第一层节点中的电子设备(如电子设备820、电子设备840)之间的连接。第二级连接为上述第一层节点中的电子设备与第二层节点中的电子设备之间的连接。例如,电子设备820和电子设备830之间的连接、电子设备840和电子设备850之间的连接。
在一种可能的实现方式中,电子设备810可以在会话1的存储沙箱中存储如图9所示的连接信息表812。连接信息表812可以包括会话801中每个节点之间的连接信息。这里以会话中的主设备和子设备均在本地为这一个会话分配存储沙箱为例进行说明。即上述连接信息表812可以存储在电子设备810中为会话1分配的存储沙箱。例如,连接信息表812中的字段可以包括源设备中的源应用和目的设备中的目标应用。源设备可以表示一级连接中指示其它电子设备调用相关应用的电子设备。源应用可以表示源设备中用于指示其它电子设备调用相关应用的应用。目的设备可以表示一级连接中接收调用指令调用相关应用的电子设备。目的应用可以表示目的设备接收调用指令所调用的应用。
需要进行说明的是,连接信息表中的数据具体可以是电子设备的设备标识和应用的应用标识。若上述应用可提供一个分布式应用中的一项服务,这个应用的应用标识可以包括这一个分布式应用的应用包名以及这一项服务的服务包名。若上述应用为传统应用,这个应用的应用标识可以为这一个传统应用的应用包名。图9所示的各连接信息标识中用电子设备的标号和应用的标号分别表示电子设备的设备标识和应用的应用标识。上述电子设备的标号和应用的标号不应对本申请构成限定。
由连接信息表812可知,源设备为电子设备810且源应用为应用811时,目的设备可以为电子设备820和电子设备840。其中,电子设备820中的目的应用为应用821。电子设备840中的目的应用为应用841。源设备为电子设备820且源应用为821时,目的设备可以为电子设备830。电子设备830中的目的应用为应用831。源设备为电子设备840且源应用为841时,目的设备可以为电子设备850。电子设备850中的目的应用为应用851。
当接收到用于恢复会话801的快照信息所指示的连接关系的指令时,电子设备810可以根据上述连接信息表812恢复通信系统800中的多级连接。上述用于恢复会话801的快照信息所指示的连接关系的指令可以是上述应用811自动触发的,或者可以是由作用在应用811中的用户操作触发的(如图3B所示视频输出设备选择控件242的用户操作)。本申请实施例对上述指令不作限定。
具体的,电子设备810可以从会话801的存储沙箱中获取上述连接信息表812。根据连接信息表812,电子设备810可以与第一层节点中的电子设备连接,并指示第一层节点中的电子设备调用对应的目的应用。电子设备810还可以将第一层节点中的电子设备与第一层节点后续层级节点中的电子设备之间的连接信息发送给第一层节点中的电子设备。例如,电子设备810可以与电子设备820连接,并通过应用811指示电子设备820调用应用821。电子设备810还可以将电子设备820与电子设备830之间的连接信息发送给电子设备820。那么,电子设备820可以与电子设备830连接,并通过应用821指示电子设备830调用应用831。
在一种可能的应用场景中,电子设备810为手机。应用811为前述实施例中的习题答案提供应用。电子设备820为电视。应用821为前述实施例中的课程视频播放应用。电子设备830为音箱。应用831为音频播放应用。手机可以通过习题答案提供应用指示电视调用课程视频播放应用,并将电视与音箱的连接信息发送给电视。根据上述电视与音箱的连接信息,电视通过课程视频播放应用指示音箱调用音频播放应用。在上述手机、电视和音箱协同工作实现的应用场景中,手机可用于提供习题答案。电视可以显示课程视频的用户界面。音箱可以播放该课程视频的音频。
若在会话801中,电子设备830还与一个电子设备连接,并通过应用831指示这一个电子设备调用相应的应用,连接信息表812中还可以包括电子设备830与这一个电子设备的连接信息。除了电子设备820与电子设备830的连接信息,电子设备810还可以将电子设备830与这一个电子设备的连接信息发送给电子设备820。进一步的,电子设备820可以将电子设备830与这一个电子设备的连接信息发送给电子设备830。这样,电子设备830可以与这一个电子设备连接。
在一些实施例中,一个会话的子设备中可存储自己与后续层级节点中的电子设备之间的连接信息。例如,电子设备820为会话801的子设备。电子设备820可以存储图9所示的连接信息表822。由连接信息表822可知,源设备为电子设备820且源应用为应用821时,目的设备可以为电子设备830。电子设备830中的目的应用为应用831。该连接信息表822可以存储在电子设备820在本地为会话801分配的存储沙箱中。当接收到电子设备810中的应用811调用应用821的指令,电子设备820可以调用应用821,并根据连接信息表822与电子设备830连接,指示电子设备830调用应用831。
连接信息表822还可用于同类型协同推荐。具体的,电子设备820中可包括前述实施例中的协同记录存储模块。电子设备820可以在协同记录存储模块中存储电子设备820与电子设备830协同工作的数据。这些数据可以包括电子设备820和电子设备830在协同工作时各自调用的应用的应用标识(如应用821和应用831的应用标识)、电子设备830调用应用831所进行的动作的类型。若电子设备820通过该已安装的应用823请求其它电子设备协同工作,且该协同工作的类型与电子设备820指示电子设备830所进行的动作的类型相同,电子设备820可以通过应用823指示电子设备830调用应用831。上述协同工作的类型可以由前述设备连接程序中的字段“action”确定。示例性的,上述应用821为课程视频播放应用。应用831为音频播放应用。电子设备820中的协同记录存储模块可包括电子设备820通过应用821指示电子设备830调用应用831的协同工作的数据。当电子设备820通过华为视频应用请求其它电子设备播放音频时,电子设备820可以从协同记录存储模块中查找到上述电子设备820通过应用821指示电子设备830调用应用831的协同工作的数据。那么,电子设备820可以通过华为视频应用指示电子设备830调用应用831来播放音频。
电子设备810通过应用811指示电子设备840调用应用841,以及电子设备840通过应用841指示电子设备850调用应用851的连接过程可以参考前述实施例中电子设备810、电子设备820和电子设备830的连接过程,这里不再赘述。连接信息表812中第一层节点以及后续层级节点中的电子设备之间的连接信息可以是通过层层上报的方式传递至电子设备810。例如,会话801中,电子设备820与电子设备830之间的连接信息可以是由电子设备820发送给电子设备810的。若在会话801中,电子设备830还与一个电子设备连接。电子设备830可以将自己与这一个电子设备的连接信息发送给电子设备820。进一步的,电子设备820可以将电子设备830与这一个电子设备的连接信息发送给电子设备810。
在一些实施例中,电子设备810可以分级恢复上述多级连接。例如,电子设备810可以先恢复第一级连接。该第一级连接可包括:电子设备810与电子设备820的连接、电子设备810与电子设备840的连接。响应于作用在第一层节点中的电子设备上用于请求其它电子设备协同工作的用户操作,电子设备810可以指示第一层节点中的电子设备恢复第二级连接。该第二级连接可包括:电子设备820与电子设备830的连接、电子设备840与电子设备850的连接。
在一些实施例中,电子设备910可以恢复上述多级连接中的一部分连接。例如,响应于作用在电子设备810上用于请求电子设备820协同工作的用户操作,电子设备810可以恢复图9所示电子设备810与电子设备820的连接以及电子设备820和电子设备830的连接。电子设备810与电子设备840的连接可以在电子设备810接收到相应的用户操作后被恢复。
在一些实施例中,会话801的存储沙箱也可以位于分布式存储系统中。会话801中的主设备和子设备均可以对分布式存储系统中会话801的存储沙箱进行读写操作。分布式存储协同为会话801分配存储沙箱的实现方式可以参考前述图8所示的实施例,这里不再赘述。
由图9所示的通信系统可知,不限于图3F所示的单级连接,一个会话中的主设备可以存储多级连接的连接信息。主设备可以根据这多级连接的连接信息恢复该多级连接。这可以简化了多个电子设备建立连接时的用户操作,方便用户调用自己习惯的电子设备,更快地进入到熟悉的应用场景。
在一些实施例中,一个会话中的主设备根据这一个会话的快照信息恢复这一个会话中多个电子设备之间的连接关系时,可能会存在循环调用、历史协同设备不可用等问题。上述循环调用的问题可以表示源设备通过源应用指示目的设备调用目的应用。而上述目的设备又通过目的应用指示上述源设备调用上述源应用。上述循环调用可能导致两个电子设备之间的连接信息在这两个设备之间循环传递,浪费这两个电子设备的计算资源和存储资源。
下面以图10所示的通信系统900为例来介绍避免设备连接过程中出现上述循环调用问题的方法,以及历史协同设备不可用时连接信息的传递方法。
如图10所示,通信系统900可包括电子设备910、电子设备920、电子设备930、电子设备940、电子设备950、电子设备960、电子设备970、电子设备980、电子设备990和电子设备9100。其中,电子设备910、电子设备920、电子设备930、电子设备940、电子设备950、电子设备960、电子设备970、电子设备980、电子设备990和电子设备9100中可分别安装有应用911、应用921、应用931、应用941、应用951、应用961、应用971、应用981、应用991和应用9101。
通信系统900可以是由会话901的主设备和子设备组成的。由前述实施例可知,电子设备910为会话901的主设备。通信系统900中除电子设备910以外的电子设备均为会话901的子设备。通信系统900中各电子设备之间建立连接关系的方法可以参考前述实施例。电子设备910中的连接信息表912、电子设备920中的连接信息表922、电子设备930中的连接信息表932、电子设备950中的连接信息表952、电子设备970中的连接信息表972和电子设备980中的连接信息表920中包含的数据以及作用均可以参考前述图9所示的实施例。这里不再赘述。
在一些实施例中,根据连接信息表912,电子设备910可以利用应用911指示电子设备950调用应用951。电子设备910还可以将电子设备950为源设备的连接信息发送给电子设备950。上述电子设备950为源设备的连接可包括:电子设备950通过应用951指示电子设备960调用应用961、电子设备950通过应用951指示电子设备910调用应用911。那么,在会话901中,电子设备910通过应用911指示电子设备950调用应用951、电子设备950通过应用951指示电子设备910调用应用会导致上述循环调用的问题。其中,电子设备910通过应用911向电子设备950发送调用指令,电子设备950又通过应用951向电子设备910发送调用指令。
为了避免上述循环调用的问题,一个会话中的主设备和子设备可以存储自己的层级标识。一个电子设备的层级标识可以由这一个电子设备与主设备之间的连接距离确定。该连接距离可以表示一个电子设备与主设备之间间隔的设备数量。一个电子设备与主设备之间间隔的设备数据越多,这一个电子设备与主设备之间的连接距离越大,这一个电子设备的层级标识越高。在一种可能的实现方式中,在一个会话中,层级标识高的电子设备指示层级标识低的电子设备调用一个应用时,可以向层级标识低的电子设备发送调用指令。若层级标识低的电子设备识别出该调用指令指示自己调用的应用为在一个会话中已经被调用的应用,层级标识低的电子设备可以不执行该调用指令(如抛弃该调用指令),并向上述层级标识高的电子设备发送应答消息。该应答消息可用于指示上述调用指令是无效指令。在另一种可能的实现方式中,层级标识高的电子设备可以从自己作为源设备的连接信息中,查找是否存在目的设备为层级标识比自己的层级标识低的电子设备的连接信息。若存在,该层级标识高的电子设备可以进一步判断该连接信息中目标应用是否为在这一个会话中已经被调用的应用。若是,该层级标识高的电子设备可以不根据该连接信息向层级标识低的电子设备发送调用指令。这样,一个会话中的两个电子设备之间可以避免上述循环调用的问题,实现了对电子设备计算资源和存储资源的节约。
示例性的,主设备,即电子设备910的层级标识可以为第0层。会话901中与主设备直接连接的子设备(如电子设备920、电子设备950、电子设备970)的层级标识可以为第1层。会话901中与层级标识为第1层的电子设备直接连接的子设备(如电子设备930、电子设备960、电子设备980)的层级标识可以为第2层。会话901中与层级标识为第2层的电子设备直接连接的子设备(如电子设备940、电子设备990)的层级标识可以为第3层。以此类推,可以确定一个会话中层级标识为第4层、第5层……的电子设备。
由连接信息表952可知,电子设备950可以获取到自己作为源设备且电子设备910作为目的设备的连接信息:电子设备950通过应用951指示电子设备910调用应用911。由于应用911为会话901中已经被调用的应用。电子设备950通过应用951向电子设备910发送调用应用911的调用指令,电子设备910可以确定应用911为会话901中已经被调用的应用,且该调用指令的发送设备为层级标识比自己高的电子设备。电子设备910可以抛弃该调用指令并向电子设备950发送上述应答消息。或者,电子设备950可以确定应用911为会话901中已经被调用的应用,且该调用指令的接收设备为层级标识比自己低的电子设备。电子设备950可以删除连接信息表952中自己与电子设备910的连接信息。
在一些实施例中,电子设备970中的连接信息表972可包括:电子设备970与电子设备980的连接信息、电子设备980与电子设备990的连接信息。即在会话901中,电子设备970曾经通过应用971指示电子设备980调用应用981。电子设备980曾经通过应用981指示电子设备990调用应用991。当电子设备970通过应用971请求电子设备980调用应用981时,电子设备970发现电子设备980处于不可用状态。例如电子设备980关机。电子设备970无法连接到980。电子设备970可以根据前述实施例中选择与自己协同工作的电子设备的方法,选择电子设备9100。其中,在会话901中,电子设备970未曾与电子设备9100连接。上述连接信息表912和连接信息表972中查找不到电子设备970与电子设备9100的连接信息。
当电子设备970与电子设备9100连接,且通过应用971指示电子设备调用应用9101时,电子设备970可以将自己与电子设备9100的连接信息加入上述连接信息表972,并将该连接信息发送给电子设备910。电子设备910可以将电子设备970和电子设备9100的连接信息加入连接信息表912。另外,电子设备970可以将会话901的会话标识传递给电子设备9100。
应用9101可以与应用981是相同的应用(例如均为课程视频播放应用),或者应用9101与应用981是不相同的应用,但这两个应用可以提供相同的服务。例如,应用981为课程视频播放应用。应用9101为华为视频应用。这两个应用均可提供播放视频的服务。
由于电子设备980不可用,电子设备970可以终止传输源设备为电子设备980的连接信息。即电子设备980可以不将电子设备980与电子设备990的连接信息发送给电子设备9100,以避免设备连接关系恢复不恰当而影响用户使用体验。
一个会话的快照信息中的连接信息可以根据前述图9和图10所示的方法传递。一个会话的快照信息中应用的活动信息也可以根据前述图9和图10所示的方法传递。这里不再赘述。
在一些实施例中,一个会话的会话标识可以由主设备的设备账号、运行在主设备上请求子设备协同工作的应用的应用标识、运行在主设备上请求子设备协同工作的应用中的应用账号共同确定。也即是说,主设备上的设备账号不变。主设备通过一个应用请求子设备协同工作。若这一个应用上先后登录有不同的应用账号,主设备可以创建不同的会话。一个会话可以是主设备在登录当前设备账号,基于这一个应用中的一个应用账号的会话。一个会话的快照信息可以参考前述实施例。结合应用账号来标识会话的会话标识,主设备可以区分上述应用在登录有不同的应用账号时,子设备上调用的应用的活动信息。
例如,主设备通过前述实施例中的习题答案提供应用指示子设备调用课程视频播放应用。习题答案提供应用上登录的应用账号为用户A和用户B时,子设备上课程视频播放应用中课程视频的播放进度不同。在上述不同的应用账号下,子设备上调用应用的活动信息可以分别存储在不同会话的存储沙箱中。
可选的,上述子设备上调用应用的活动信息可以与上述应用账号关联,并存储在云服务器中。子设备可以从云服务器中获取与上述应用账号关联的活动信息来回复自己调用的应用状态。
本申请实施例对前述实施例提及的各电子设备的类型不作限定。前述实施例中的电子设备可以例如是手机、平板电脑、电视、可穿戴电子设备、车机、笔记本电脑、手持计算机、上网本、个人数字助理(personal digital assistant,PDA)、增强现实(augmentedreality,AR)设备、虚拟现实(virtual reality,VR)设备、人工智能(artificialintelligence,AI)设备等等,还可以是物联网设备(internet of things,IOT)或智能家居设备,例如音箱、空调、冰箱、热水器、灯具等等。
下面介绍本申请实施例提供的一种电子设备100的结构示意图。
如图11所示,电子设备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等。
可以理解的是,本申请实施例示意的结构并不构成对电子设备100的具体限定。在本申请另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
其中,控制器可以是电子设备100的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
USB接口130是符合USB标准规范的接口,具体可以是Mini USB接口,Micro USB接口,USB Type C接口等。USB接口130可以用于连接充电器为电子设备100充电,也可以用于电子设备100与外围设备之间传输数据。也可以用于连接耳机,通过耳机播放音频。该接口还可以用于连接其他电子设备,例如AR设备等。
充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块140可以通过USB接口130接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块140可以通过电子设备100的无线充电线圈接收无线充电输入。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为电子设备供电。
电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,外部存储器,显示屏194,摄像头193,和无线通信模块160等供电。
电子设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。电子设备100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块150可以提供应用在电子设备100上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备(不限于扬声器170A,受话器170B等)输出声音信号,或通过显示屏194显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器110,与移动通信模块150或其他功能模块设置在同一个器件中。
无线通信模块160可以提供应用在电子设备100上的包括无线局域网(wirelesslocal 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转为电磁波辐射出去。
电子设备100通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194用于显示图像,视频等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emittingdiode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrixorganic light emitting diode的,AMOLED),柔性发光二极管(flex light-emittingdiode,FLED),Miniled,MicroLed,Micro-oLed,量子点发光二极管(quantum dot lightemitting diodes,QLED)等。在一些实施例中,电子设备100可以包括1个或N个显示屏194,N为大于1的正整数。
电子设备100可以通过ISP,摄像头193,视频编解码器,GPU,显示屏194以及应用处理器等实现拍摄功能。
ISP用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。ISP还可以对图像的噪点,亮度,肤色进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,ISP可以设置在摄像头193中。
摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,电子设备100可以包括1个或N个摄像头193,N为大于1的正整数。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当电子设备100在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
视频编解码器用于对数字视频压缩或解压缩。电子设备100可以支持一种或多种视频编解码器。这样,电子设备100可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1,MPEG2,MPEG3,MPEG4等。
NPU为神经网络(neural-network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现电子设备100的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器110通过运行存储在内部存储器121的指令,从而执行电子设备100的各种功能应用以及数据处理。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备100使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。
电子设备100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。在一些实施例中,音频模块170可以设置于处理器110中,或将音频模块170的部分功能模块设置于处理器110中。
扬声器170A,也称“喇叭”,用于将音频电信号转换为声音信号。电子设备100可以通过扬声器170A收听音乐,或收听免提通话。
受话器170B,也称“听筒”,用于将音频电信号转换成声音信号。当电子设备100接听电话或语音信息时,可以通过将受话器170B靠近人耳接听语音。
麦克风170C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。
耳机接口170D用于连接有线耳机。
压力传感器180A用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器180A可以设置于显示屏194。压力传感器180A的种类很多,如电阻式压力传感器,电感式压力传感器,电容式压力传感器等。电容式压力传感器可以是包括至少两个具有导电材料的平行板。当有力作用于压力传感器180A,电极之间的电容改变。电子设备100根据电容的变化确定压力的强度。当有触摸操作作用于显示屏194,电子设备100根据压力传感器180A检测所述触摸操作强度。电子设备100也可以根据压力传感器180A的检测信号计算触摸的位置。在一些实施例中,作用于相同触摸位置,但不同触摸操作强度的触摸操作,可以对应不同的操作指令。例如:当有触摸操作强度小于第一压力阈值的触摸操作作用于短消息应用图标时,执行查看短消息的指令。当有触摸操作强度大于或等于第一压力阈值的触摸操作作用于短消息应用图标时,执行新建短消息的指令。
陀螺仪传感器180B可以用于确定电子设备100的运动姿态。在一些实施例中,可以通过陀螺仪传感器180B确定电子设备100围绕三个轴(即,x,y和z轴)的角速度。陀螺仪传感器180B可以用于拍摄防抖。示例性的,当按下快门,陀螺仪传感器180B检测电子设备100抖动的角度,根据角度计算出镜头模组需要补偿的距离,让镜头通过反向运动抵消电子设备100的抖动,实现防抖。陀螺仪传感器180B还可以用于导航,体感游戏场景。
气压传感器180C用于测量气压。在一些实施例中,电子设备100通过气压传感器180C测得的气压值计算海拔高度,辅助定位和导航。
磁传感器180D包括霍尔传感器。电子设备100可以利用磁传感器180D检测翻盖皮套的开合。在一些实施例中,当电子设备100是翻盖机时,电子设备100可以根据磁传感器180D检测翻盖的开合。进而根据检测到的皮套的开合状态或翻盖的开合状态,设置翻盖自动解锁等特性。
加速度传感器180E可检测电子设备100在各个方向上(一般为三轴)加速度的大小。当电子设备100静止时可检测出重力的大小及方向。还可以用于识别电子设备姿态,应用于横竖屏切换,计步器等应用。
距离传感器180F,用于测量距离。电子设备100可以通过红外或激光测量距离。在一些实施例中,拍摄场景,电子设备100可以利用距离传感器180F测距以实现快速对焦。
接近光传感器180G可以包括例如发光二极管(LED)和光检测器,例如光电二极管。
环境光传感器180L用于感知环境光亮度。电子设备100可以根据感知的环境光亮度自适应调节显示屏194亮度。环境光传感器180L也可用于拍照时自动调节白平衡。环境光传感器180L还可以与接近光传感器180G配合,检测电子设备100是否在口袋里,以防误触。
指纹传感器180H用于采集指纹。电子设备100可以利用采集的指纹特性实现指纹解锁,访问应用锁,指纹拍照,指纹接听来电等。
温度传感器180J用于检测温度。
触摸传感器180K,也称“触控面板”。触摸传感器180K可以设置于显示屏194,由触摸传感器180K与显示屏194组成触摸屏,也称“触控屏”。触摸传感器180K用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏194提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器180K也可以设置于电子设备100的表面,与显示屏194所处的位置不同。
骨传导传感器180M可以获取振动信号。
按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。电子设备100可以接收按键输入,产生与电子设备100的用户设置以及功能控制有关的键信号输入。
马达191可以产生振动提示。
指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。
SIM卡接口195用于连接SIM卡。SIM卡可以通过插入SIM卡接口195,或从SIM卡接口195拔出,实现和电子设备100的接触和分离。电子设备100可以支持1个或N个SIM卡接口,N为大于1的正整数。电子设备100通过SIM卡和网络交互,实现通话以及数据通信等功能。在一些实施例中,电子设备100采用eSIM,即:嵌入式SIM卡。eSIM卡可以嵌在电子设备100中,不能和电子设备100分离。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (33)
1.一种设备连接关系建立方法,其特征在于,所述方法应用于通信系统,所述通信系统包括第一电子设备和第二电子设备,所述第一电子设备安装有第一应用,所述第二电子设备安装有用于提供第一服务的应用;
所述方法包括:
所述第一电子设备获取第一会话的第一快照信息,所述第一会话为所述第一电子设备通过所述第一应用调用一个或多个电子设备提供一项或多项服务所进行的通信,所述第一快照信息包括第一连接信息,所述第一连接信息包括所述第二电子设备的设备标识、所述第一服务的标识;
所述第一电子设备根据所述第一连接信息向所述第二电子设备发送第一指令,所述第一指令用于指示所述第二电子设备提供所述第一服务;
所述第二电子设备接收到所述第一指令,提供所述第一服务。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述第一电子设备接收到第二指令,所述第二指令用于指示所述第一电子设备通过所述第一应用调用所述第二电子设备提供所述第一服务;
所述第一电子设备创建所述第一会话,并存储所述第一快照信息;
所述第一电子设备根据所述第二指令向所述第二电子设备发送所述第一指令。
3.根据权利要求1或2所述的方法,其特征在于,所述第一会话具有第一会话标识,所述第一会话标识由所述第一电子设备的设备账号和所述第一应用的应用标识确定;所述第一会话标识用于所述第一电子设备获取所述第一快照信息;
所述第一指令包含所述第一会话标识。
4.根据权利要求1-3中任一项所述的方法,其特征在于,所述第二电子设备安装有第二应用,所述第二应用用于提供所述第一服务,所述第一连接信息还包括所述第二应用的应用标识,所述第一指令用于指示所述第二电子设备运行所述第二应用来提供所述第一服务;
所述第二电子设备提供所述第一服务,所述方法包括:
所述第二电子设备运行所述第二应用,提供所述第一服务。
5.根据权利要求1-3中任一项所述的方法,其特征在于,所述第二电子设备安装有第二应用和第三应用,所述第二应用和所述第三应用均用于提供所述第一服务,所述第二电子设备接收到所述第一指令之后,所述方法还包括:
所述第二电子设备判断所述第二应用是否可用;
若判断出所述第二应用可用,所述第二电子设备运行所述第二应用,提供所述第一服务;
若判断出所述第二应用不可用,所述第二电子设备判断所述第三应用是否可用;
若判断出所述第三应用可用,所述第二电子设备运行所述第三应用,提供所述第一服务。
6.根据权利要求1-5中任一项所述的方法,其特征在于,所述第二电子设备提供所述第一服务之后,所述方法还包括:
所述第二电子设备将提供所述第一服务的应用的第一活动信息发送给所述第一电子设备;其中,所述第一活动信息包括所述第一服务被提供过程中用于指示所述应用的用户界面在第一时刻呈现内容的数据,所述第一时刻为所述第一服务被提供过程中的任一时刻;
所述第一电子设备存储所述第一活动信息,所述第一活动信息包含于所述第一快照信息。
7.根据权利要求6所述的方法,其特征在于,所述第一电子设备获取第一会话的第一快照信息之后,所述方法还包括:
所述第一电子设备将所述第一活动信息发送给所述第二电子设备;
所述第二电子设备根据所述第一活动信息确定在运行用于提供所述第一服务的应用初始时刻所述应用的用户界面的呈现内容。
8.根据权利要求1-7中任一项所述的方法,其特征在于,所述第一电子设备还安装有第四应用;所述方法还包括:
所述第一电子设备接收到第三指令,所述第三指令用于指示第一电子设备通过所述第四应用调用电子设备提供所述第一服务;
所述第一电子设备从一个会话或多个会话的快照信息中查找包含所述第一服务的标识的连接信息,得到所述第一连接信息;所述一个会话或多个会话是所述第一电子设备创建的;
所述第一电子设备根据所述第一连接信息向所述第二电子设备发送第四指令,并创建第二会话,存储第二会话的第二快照信息;所述第四指令用于指示所述第二电子设备提供所述第一服务;所述第二会话为所述第一电子设备通过所述第四应用调用一个或多个电子设备提供一项或多项服务所进行的通信;所述第二快照信息包括第二连接信息,所述第二连接信息包括所述第二电子设备的设备标识、所述第一服务的标识;
所述第二电子设备接收到所述第四指令,提供所述第一服务。
9.根据权利要求1-8中任一项所述的方法,其特征在于,所述第一电子设备获取第一会话的第一快照信息之后,所述方法还包括:
所述第一电子设备判断所述第二电子设备是否可用;
若判断出所述第二电子设备不可用,所述第一电子设备从搜索到的多个电子设备中选取出第三电子设备,并调用所述第三电子设备提供所述第一服务;所述第三电子设备为所述多个电子设备中可用且可提供所述第一服务的一个电子设备。
10.根据权利要求9所述的方法,其特征在于,所述第一电子设备从搜索到的多个电子设备中选取出第三电子设备,所述方法包括:
所述第一电子设备根据第一规则从搜索到的多个电子设备中选取出所述第三电子设备,所述第三电子设备为所述多个电子设备中可用、可提供所述第一服务且优先级最高的电子设备;所述第一规则包括:与所述第一电子设备的设备账号相同且设备类型相同的电子设备的优先级>与所述第一电子设备的设备账号相同且设备类型不同的电子设备的优先级>与所述第一电子设备的设备账号不同但设备类型相同的电子设备的优先级>与所述第一电子设备的设备账号不同且设备类型不同的电子设备的优先级。
11.根据权利要求10所述的方法,其特征在于,所述第一电子设备的设备账号相同且设备类型不同的电子设备有多个,或者与所述第一电子设备的设备账号不同且设备类型不同的电子设备有多个;所述第一规则还包括:在设备类型不同的多个电子设备中,电子设备的优先级由电子设备的私密度确定,电子设备的私密度越低,电子设备的优先级越高;所述电子设备的私密度包括:电视=音箱<平板<手表=手机。
12.根据权利要求1-11中任一项所述的方法,其特征在于,所述第一电子设备获取第一会话的第一快照信息之后,所述方法还包括:
所述第一电子设备根据所述第一连接信息在用户界面显示第二电子设备选项;
所述第一电子设备检测到作用于所述第二电子设备选项的第一用户操作,所述第一用户操作用于触发所述第一电子设备向所述第二电子设备发送所述第一指令。
13.根据权利要求12所述的方法,其特征在于,所述第一电子设备判断所述第二电子设备是否可用之后,所述方法还包括:
若判断出所述第二电子设备可用,所述第一电子设备将所述第二电子设备选项显示为第一状态,所述第一状态用于指示所述第二电子设备可用;
若判断出所述第二电子设备不可用,所述第一电子设备将所述第二电子设备选项显示为第二状态,所述第二状态用于指示所述第二电子设备不可用。
14.根据权利要求1-8中任一项所述的方法,其特征在于,所述通信系统还包括第四电子设备,所述第四电子设备安装有用于提供第二服务的应用;所述第一快照信息包括第三连接信息,所述第三连接信息包括源设备信息和目的设备信息,所述第三连接信息中的源设备信息包括所述第二电子设备的设备标识、所述第一服务的标识,所述第三连接信息中的目的设备信息包括所述第四电子设备的设备标识、所述第二服务的标识;
所述第一电子设备获取第一会话的第一快照信息之后,所述方法还包括:
所述第一电子设备将所述第三连接信息发送给所述第二电子设备;
所述第二电子设备根据所述第三连接信息,利用提供所述第一服务的应用向所述第四电子设备发送第五指令,所述第五指令用于指示所述第四电子设备提供所述第二服务;
所述第四电子设备接收到所述第五指令,提供所述第二服务。
15.根据权利要求14所述的方法,其特征在于,所述方法还包括:
所述第二电子设备接收到第六指令,所述第六指令用于指示所述第二电子设备通过提供所述第一服务运行的应用调用所述第四电子设备提供所述第二服务;
所述第二电子设备根据所述第六指令向所述第四电子设备发送所述第五指令;
若所述第二电子设备判断出自己开启提供所述第一服务的应用的方式为主动开启,所述第二电子设备创建第三会话,并存储所述第三会话的第三快照信息;所述主动开启表示电子设备接收到作用在一个应用上用于开启这一个应用的用户操作,而开启这一个应用;所述第三会话为所述第二电子设备通过提供所述第一服务的应用调用一个或多个电子设备提供一项或多项服务所进行的通信,所述第三快照信息包括所述第三连接信息;
若所述第二电子设备判断出自己开启提供所述第一服务的应用的方式为被动开启,所述第二电子设备将所述第三连接信息发送给所述第一电子设备;所述第一电子设备存储所述第三连接信息;所述被动开启表示电子设备接收到其它电子设备用于提供一项服务的调用指令,而开启用于提供这一项服务的应用。
16.根据权利要求1-8所述的方法,其特征在于,所述第一快照信息还包括第四连接信息,所述第四连接信息包括源设备信息和目的设备信息,所述第四连接信息中的源设备信息包括所述第二电子设备的设备标识、所述第一服务的标识,所述第四连接信息中的目的设备信息包括所述第一电子设备的设备标识、所述第一应用的应用标识;
所述第一电子设备获取第一会话的第一快照信息之后,所述方法还包括:
所述第一电子设备将所述第四连接信息发送给所述第二电子设备;
所述第二电子设备根据所述第四连接信息,利用提供所述第一服务的应用向所述第一电子设备发送第七指令,所述第七指令用于指示所述第一电子设备调用所述第一应用;
所述第一电子设备比较自己的第一层级标识和所述第二电子设备的第二层级标识,确定所述第一层级标识低于所述第二层级标识,所述第一电子设备拒绝响应所述第七指令;一个会话中的一个电子设备具有层级标识,所述一个电子设备的层级标识由所述一个电子设备与创建所述一个会话的电子设备之间的连接距离确定,与创建所述一个会话的电子设备之间的连接距离越远,所述一个电子设备的层级标识越高。
17.一种设备连接关系建立方法,其特征在于,所述方法包括:
所述第一电子设备获取第一会话的第一快照信息,所述第一电子设备安装有第一应用,所述第一会话为所述第一电子设备通过所述第一应用调用一个或多个电子设备提供一项或多项服务所进行的通信,所述第一快照信息包括第一连接信息,所述第一连接信息包括第二电子设备的设备标识、第一服务的标识;所述第二电子设备安装有用于提供所述第一服务的应用;
所述第一电子设备根据所述第一连接信息向所述第二电子设备发送第一指令,所述第一指令用于指示所述第二电子设备提供所述第一服务。
18.根据权利要求17所述的方法,其特征在于,所述方法还包括:
所述第一电子设备接收到第二指令,所述第二指令用于指示所述第一电子设备通过所述第一应用调用所述第二电子设备提供所述第一服务;
所述第一电子设备创建所述第一会话,并存储所述第一快照信息;
所述第一电子设备根据所述第二指令向所述第二电子设备发送所述第一指令。
19.根据权利要求17或18所述的方法,其特征在于,所述第一会话具有第一会话标识,所述第一会话标识由所述第一电子设备的设备账号和所述第一应用的应用标识确定;所述第一会话标识用于所述第一电子设备获取所述第一快照信息;
所述第一指令包含所述第一会话标识。
20.根据权利要求17-19中任一项所述的方法,其特征在于,所述第二电子设备安装有第二应用,所述第二应用用于提供所述第一服务,所述第一连接信息还包括所述第二应用的应用标识,所述第一指令用于指示所述第二电子设备运行所述第二应用来提供所述第一服务。
21.根据权利要求17-20中任一项所述的方法,其特征在于,所述方法还包括:
所述第一电子设备接收并存储所述第二电子设备发送的第一活动信息,所述第一活动信息包含于所述第一快照信息;所述第一活动信息包括所述第二电子设备提供所述第一服务的过程中用于指示提供所述第一服务的应用的用户界面在第一时刻呈现内容的数据;所述第一时刻为所述第二电子设备提供所述第一服务的过程中的任一时刻。
22.根据权利要求21所述的方法,其特征在于,所述第一电子设备获取第一会话的第一快照信息之后,所述方法还包括:
所述第一电子设备将所述第一活动信息发送给所述第二电子设备;所述第一活动信息用于确定所述第二电子设备在运行提供所述第一服务的应用初始时刻所述应用的用户界面的呈现内容。
23.根据权利要求17-22所述的方法,其特征在于,所述第一电子设备还安装有第四应用;所述方法还包括:
所述第一电子设备接收到第三指令,所述第三指令用于指示第一电子设备通过所述第四应用调用电子设备提供所述第一服务;
所述第一电子设备从一个会话或多个会话的快照信息中查找包含所述第一服务的标识的连接信息,得到所述第一连接信息;所述一个会话或多个会话是所述第一电子设备创建的;
所述第一电子设备根据所述第一连接信息向所述第二电子设备发送第四指令,并创建第二会话,存储第二会话的第二快照信息;所述第四指令用于指示所述第二电子设备提供所述第一服务;所述第二会话为所述第一电子设备通过所述第四应用调用一个或多个电子设备提供一项或多项服务所进行的通信;所述第二快照信息包括第二连接信息,所述第二连接信息包括所述第二电子设备的设备标识、所述第一服务的标识。
24.根据权利要求17-23中任一项所述的方法,其特征在于,所述第一电子设备获取第一会话的第一快照信息之后,所述方法还包括:
所述第一电子设备判断所述第二电子设备是否可用;
若判断出所述第二电子设备不可用,所述第一电子设备从搜索到的多个电子设备中选取出第三电子设备,并调用第三电子设备提供所述第一服务;所述第三电子设备为所述多个电子设备中可用且可提供所述第一服务的一个电子设备。
25.根据权利要求24所述的方法,其特征在于,所述第一电子设备从搜索到的多个电子设备中选取出第三电子设备,所述方法包括:
所述第一电子设备根据第一规则从搜索到的多个电子设备中选取出所述第三电子设备,所述第三电子设备为所述多个电子设备中可用、可提供所述第一服务且优先级最高的电子设备;所述第一规则包括:与所述第一电子设备的设备账号相同且设备类型相同的电子设备的优先级>与所述第一电子设备的设备账号相同且设备类型不同的电子设备的优先级>与所述第一电子设备的设备账号不同但设备类型相同的电子设备的优先级>与所述第一电子设备的设备账号不同且设备类型不同的电子设备的优先级。
26.根据权利要求25所述的方法,其特征在于,所述第一电子设备的设备账号相同且设备类型不同的电子设备有多个,或者与所述第一电子设备的设备账号不同且设备类型不同的电子设备有多个;所述第一规则还包括:在设备类型不同的多个电子设备中,电子设备的优先级由电子设备的私密度确定,电子设备的私密度越低,电子设备的优先级越高;所述电子设备的私密度包括:电视=音箱<平板<手表=手机。
27.根据权利要求17-26中任一项所述的方法,其特征在于,所述第一电子设备获取第一会话的第一快照信息之后,所述方法还包括:
所述第一电子设备根据所述第一连接信息在用户界面显示第二电子设备选项;
所述第一电子设备检测到作用于所述第二电子设备选项的第一用户操作,所述第一用户操作用于触发所述第一电子设备向所述第二电子设备发送所述第一指令。
28.根据权利要求27所述的方法,其特征在于,所述第一电子设备判断所述第二电子设备是否可用之后,所述方法还包括:
若判断出所述第二电子设备可用,所述第一电子设备将所述第二电子设备选项显示为第一状态,所述第一状态用于指示所述第二电子设备可用;
若判断出所述第二电子设备不可用,所述第一电子设备将所述第二电子设备选项显示为第二状态,所述第二状态用于指示所述第二电子设备不可用。
29.根据权利要求17-23中任一项所述的方法,其特征在于,所述第一快照信息还包括第三连接信息,所述第三连接信息包括源设备信息和目的设备信息,所述第三连接信息中的源设备信息包括所述第二电子设备的设备标识、所述第一服务的标识,所述第三连接信息中的目的设备信息包括第四电子设备的设备标识、第二服务的标识;所述第四电子设备安装有用于提供所述第二服务的应用;
所述第一电子设备获取第一会话的第一快照信息之后,所述方法还包括:
所述第一电子设备将所述第三连接信息方给所述第二电子设备;所述第三连接信息使得所述第二电子设备通过提供所述第一服务的应用向所述第四电子设备发送第五指令,所述第五指令用于指示所述第四电子设备提供所述第二服务。
30.根据权利要求17-23所述的方法,其特征在于,所述第一快照信息还包括第四连接信息,所述第四连接信息包括源设备信息和目的设备信息,所述第四连接信息中的源设备信息包括所述第二电子设备的设备标识、所述第一服务的标识,所述第四连接信息中的目的设备信息包括所述第一电子设备的设备标识、所述第一应用的应用标识;
所述第一电子设备获取第一会话的第一快照信息之后,所述方法还包括:
所述第一电子设备将所述第四连接信息发送给所述第二电子设备;所述第四连接信息使得所述第二电子设备通过提供所述第一服务的应用向所述第一电子设备发送第七指令,所述第七指令用于指示所述第一电子设备调用所述第一应用;
所述第一电子设备接收到所述第七指令,比较自己的第一层级标识和所述第二电子设备的第二层级标识,确定所述第一层级标识低于所述第二层级标识,所述第一电子设备拒绝响应所述第七指令;一个会话中的一个电子设备具有层级标识,所述一个电子设备的层级标识由所述一个电子设备与创建所述一个会话的电子设备之间的连接距离确定,与创建所述一个会话的电子设备之间的连接距离越远,所述一个电子设备的层级标识越高。
31.一种通信系统,其特征在于,所述通信系统至少包括第一电子设备、第二电子设备,其中,所述第一电子设备、所述第二电子设备配合执行权利要求1-16中任一项所述的方法。
32.一种电子设备,其特征在于,所述电子设备包括:通信装置、存储器、处理器,所述存储器用于存储计算机程序,所述处理器用于调用所述计算机程序,使得所述电子设备执行权利要求17-30中任一项所述的方法。
33.一种计算机可读存储介质,包括指令,其特征在于,当所述指令在电子设备上运行,使得所述电子设备执行权利要求17-30中任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110552602.8A CN115460233A (zh) | 2021-05-20 | 2021-05-20 | 基于应用的设备连接关系建立方法及相关装置 |
PCT/CN2022/083299 WO2022242312A1 (zh) | 2021-05-20 | 2022-03-28 | 基于应用的设备连接关系建立方法及相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110552602.8A CN115460233A (zh) | 2021-05-20 | 2021-05-20 | 基于应用的设备连接关系建立方法及相关装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115460233A true CN115460233A (zh) | 2022-12-09 |
Family
ID=84140269
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110552602.8A Pending CN115460233A (zh) | 2021-05-20 | 2021-05-20 | 基于应用的设备连接关系建立方法及相关装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN115460233A (zh) |
WO (1) | WO2022242312A1 (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105681454A (zh) * | 2016-02-29 | 2016-06-15 | 广东顺德中山大学卡内基梅隆大学国际联合研究院 | 一种自适应连接云桌面方法及系统 |
CN106027600A (zh) * | 2016-04-29 | 2016-10-12 | 北京小米移动软件有限公司 | 建立连接的方法及装置 |
CN109936529A (zh) * | 2017-12-15 | 2019-06-25 | 华为技术有限公司 | 一种安全通信的方法、装置和系统 |
CN110427423A (zh) * | 2019-06-28 | 2019-11-08 | 苏州浪潮智能科技有限公司 | 一种避免数据库会话中断的方法、设备及可读介质 |
CN111240547A (zh) * | 2020-01-08 | 2020-06-05 | 华为技术有限公司 | 跨设备任务处理的交互方法、电子设备及存储介质 |
CN112307405A (zh) * | 2020-11-16 | 2021-02-02 | Oppo广东移动通信有限公司 | 跨设备的应用接力方法、装置、设备、系统及存储介质 |
CN112543361A (zh) * | 2020-12-02 | 2021-03-23 | 江苏北斗星通汽车电子有限公司 | 基于智能座舱的多设备播放方法、装置以及电子终端 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9690468B2 (en) * | 2014-08-01 | 2017-06-27 | Content Maker, Inc. | Interactive media presentations using a plurality of selectable audio elements |
US20160034161A1 (en) * | 2014-08-01 | 2016-02-04 | Content Maker, Inc. | Methods and systems of providing interactive media presentations |
CN108235091A (zh) * | 2018-01-25 | 2018-06-29 | 青岛海信电器股份有限公司 | 智能电视以及基于显示设备中访问主页应用上内容的方法 |
CN108200464A (zh) * | 2018-01-25 | 2018-06-22 | 青岛海信电器股份有限公司 | 智能电视以及便于选择教育课程内容的方法 |
CN109147442A (zh) * | 2018-10-15 | 2019-01-04 | 两栖教育科技有限公司 | 基于学生课堂答题情况的同步教学系统 |
CN109326157A (zh) * | 2018-11-27 | 2019-02-12 | 湖南长沙阳环科技实业有限公司 | 一种基于平板的课堂答题系统 |
CN111628916B (zh) * | 2019-02-27 | 2021-11-09 | 华为技术有限公司 | 一种智能音箱与电子设备协作的方法及电子设备 |
CN111741351B (zh) * | 2020-08-03 | 2021-08-24 | 腾讯科技(深圳)有限公司 | 一种视频数据处理方法、装置及存储介质 |
CN112492371B (zh) * | 2020-11-18 | 2023-02-17 | 海信视像科技股份有限公司 | 一种显示设备 |
-
2021
- 2021-05-20 CN CN202110552602.8A patent/CN115460233A/zh active Pending
-
2022
- 2022-03-28 WO PCT/CN2022/083299 patent/WO2022242312A1/zh active Application Filing
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105681454A (zh) * | 2016-02-29 | 2016-06-15 | 广东顺德中山大学卡内基梅隆大学国际联合研究院 | 一种自适应连接云桌面方法及系统 |
CN106027600A (zh) * | 2016-04-29 | 2016-10-12 | 北京小米移动软件有限公司 | 建立连接的方法及装置 |
CN109936529A (zh) * | 2017-12-15 | 2019-06-25 | 华为技术有限公司 | 一种安全通信的方法、装置和系统 |
CN110427423A (zh) * | 2019-06-28 | 2019-11-08 | 苏州浪潮智能科技有限公司 | 一种避免数据库会话中断的方法、设备及可读介质 |
CN111240547A (zh) * | 2020-01-08 | 2020-06-05 | 华为技术有限公司 | 跨设备任务处理的交互方法、电子设备及存储介质 |
CN112307405A (zh) * | 2020-11-16 | 2021-02-02 | Oppo广东移动通信有限公司 | 跨设备的应用接力方法、装置、设备、系统及存储介质 |
CN112543361A (zh) * | 2020-12-02 | 2021-03-23 | 江苏北斗星通汽车电子有限公司 | 基于智能座舱的多设备播放方法、装置以及电子终端 |
Also Published As
Publication number | Publication date |
---|---|
WO2022242312A1 (zh) | 2022-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110336720B (zh) | 设备控制方法和设备 | |
CN113329047B (zh) | 一种分布式服务调度方法及相关装置 | |
US20230021994A1 (en) | Cross-Device Content Projection Method and Electronic Device | |
CN111628916B (zh) | 一种智能音箱与电子设备协作的方法及电子设备 | |
JP7348289B2 (ja) | アプリケーション許可を管理する方法及び電子デバイス | |
CN113840346B (zh) | 一种运营商切换方法及相关设备 | |
WO2021000923A1 (zh) | 一种路由器配置方法、终端及路由器 | |
CN110198362B (zh) | 一种在联系人中添加智能家居设备的方法及系统 | |
WO2020216098A1 (zh) | 一种跨电子设备转接服务的方法、设备以及系统 | |
CN113821767A (zh) | 应用程序的权限管理方法、装置和电子设备 | |
WO2022160991A1 (zh) | 权限控制方法和电子设备 | |
WO2022135157A1 (zh) | 页面显示的方法、装置、电子设备以及可读存储介质 | |
CN113689171A (zh) | 一种家庭日程融合的方法及装置 | |
WO2022095712A1 (zh) | 数据分享方法、装置、系统及电子设备 | |
WO2022152174A1 (zh) | 一种投屏的方法和电子设备 | |
WO2022242312A1 (zh) | 基于应用的设备连接关系建立方法及相关装置 | |
CN111339513B (zh) | 数据分享的方法和装置 | |
CN114567871A (zh) | 文件共享的方法、装置、电子设备以及可读存储介质 | |
CN112929870A (zh) | 事件订阅方法及电子设备 | |
WO2023045966A1 (zh) | 能力共享方法、电子设备以及计算机可读存储介质 | |
EP4451144A1 (en) | Playing record display method and related device | |
WO2022037412A1 (zh) | 管理物联网设备的方法和装置 | |
WO2023179682A1 (zh) | 一种设备协同方法 | |
WO2022143273A1 (zh) | 信息处理方法和电子设备 | |
CN115515133A (zh) | 一种分布式设备的认证方法及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |