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

多设备协同管理的方法、电子设备及存储介质

文献发布时间:2024-01-17 01:27:33


多设备协同管理的方法、电子设备及存储介质

技术领域

本申请涉及终端技术领域,尤其涉及一种多设备协同管理的方法、电子设备以及计算机可读存储介质。

背景技术

多设备协同技术是一种应用于多个电子设备之间的技术。利用多设备协同技术,两个或多个电子设备之间可以进行跨系统、跨设备协同工作,实现资源共享、协同操作。

随着用户对终端技术需求的提升,用户希望在多设备协同工作时,能够降低用户进行协同业务操作的操作复杂度,比如用户在同一协同显示界面,执行一个设备与其他多个设备的跨设备协同业务等。因此如何降低用户进行协同业务操作的操作复杂度,成为亟待解决的技术问题。

发明内容

本申请的目的在于:提供一种多设备协同管理的方法、电子设备以及计算机可读存储介质,用于实现通过一个电子设备上的一个协同显示界面,统一管理与其他多个电子设备的协同业务,以使用户实现在同一个协同显示界面,执行界面操作(比如,业务断开、业务建联、业务切换等)的操作。如此,降低用户进行协同业务操作的操作复杂度,提升用户的使用体验。

第一方面,本申请提供了一种多设备协同管理的方法,该方法包括:

第一电子设备的应用程序层,获取第一电子设备和周边在线设备的第一设备状态和第一特性状态。其中,周边在线设备为距离第一电子设备在预设距离范围内的在线设备。将第一设备状态,写入设备表,将第一特性状态,写入业务表。根据设备表和业务表,显示协同显示界面。在本申请实施例中,协同显示界面,即Control View从设备表,获取设备状态,从业务表获取特性状态,进行协同显示界面的内容显示。其中,协同显示界面显示的内容包括:第一电子设备,周边在线设备,以及周边在线设备与第一电子设备的关系。

当在协同显示界面上,执行界面操作时,比如,业务建联操作、业务断开操作、业务切换操作等。第一电子设备的应用程序层,可以获取第一电子设备和周边在线设备的第二设备状态和第二特性状态。根据第二设备状态更新设备表,根据第二特性状态更新业务表。根据更新后的设备表和业务表,更新协同显示界面。即,Control View从更新后的设备表和业务表中获取设备状态和特性状态,更新协同显示界面的周边在线设备与第一电子设备的关系。

其中,设备状态包括设备标识、设备名称、设备类型、在线状态,或与本机设备的距离等设备属性状态。特性状态包括协同业务的开关状态、运行状态、正在进行协同业务的对端设备ID列表、服务包名等设备全量特性的特性状态。

此时,用户通过上述协同显示界面,即可实现1个显示界面,统一管理本机设备,也即第一电子设备,与多个设备的协同操作。如此,降低了用户进行协同业务的操作复杂度,提升了用户的使用体验。

根据第一方面,第一设备状态可以为用户执行启动操作后,设备服务管理器同步的第一电子设备和所有周边在线设备的初始设备状态。第二设备状态为用户执行启动操作后,设备服务管理器同步的第一电子设备和所有周边在线设备的初始特性状态。如此,使设备表和业务表初始化,协同显示界面初始化。为实现一个协同显示对多个设备进行统一管理,提供基础数据支撑。

根据第一方面,第一设备状态可以设备状态变更后的设备状态和特性状态。具体的,用户执行启动操作,设备服务管理器同步第一电子设备和所有周边在线设备的初始设备状态和初始特性状态。当设备服务管理器中注册设备上下线监听器监听到至少一个设备进行断开连接,或建立连接时,更新设备的初始设备状态和初始特性状态,获取第一设备状态和第一特性状态。在本申请中,断开连接是指设备退出协同控制中心,建立连接指设备登录与第一电子设备同账号的协同控制中心,且距离第一电子设备在预设距离范围内的设备。如此,实现当设备发生上下线变化时,实时调整设备表和业务表,以及特性状态变更监听器,从而使协同显示界面精确显示和对特性状态变更的准确监听。

其中,更新设备的初始设备状态和初始特性状态,具体更新方式为:当设备服务管理器能够监听到周边在线设备的特性状态变更时,同步特性状态变更,更新设备的初始特性状态。当设备服务管理器不能够监听到周边在线设备的特性状态变更时,通过广播方式,将特性状态变更到周边在线设备,并接收特性状态变更,更新设备的初始特性状态。通过通信模块向在线设备广播的方式获取其他设备的状态变更通知,更新业务表,可以弥补仅通过设备服务管理模块变更在线设备业务状态的不可用条件。使得在主设备不连网条件下,也可以进行正常拖拽进行多设备协同。

根据第一方面,或者以上第一方面的任意一种实现方式,当界面操作为第一电子设备和第二电子设备的建立连接操作时,查询业务表,获取第一电子设备的特性状态和第二电子设备的特性状态。其中第二电子设备为一个周边在线设备。根据第一电子设备的特性状态和第二电子设备的特性状态,可以确定第一电子设备和第二电子设备的连接模式。

当连接模式为允许连接时,第一电子设备的应用程序层执行第一电子设备和第二电子设备的建立连接操作。根据建立连接操作的操作结果,获取设备的第二设备状态和第二特性状态。当连接模式为不允许连接时,将设备的第一设备状态作为第二设备状态,将设备的第一特性状态作为第二特性状态。

如此,通过第一电子设备的特性状态和第二电子设备的特性状态,确定连接模式,根据连接模式,获取第二特性状态和第二设备状态。Control View可以显示不同连接模式下的业建联连接操作的操作结果。

此外,连接模式还可能包括业务冲突模式,即第一电子设备正在进行协同业务,或/和第二电子设备正在进行协同业务。当连接模式为业务冲突模式时,根据第一电子设备和第二电子设备的预设系统标准,执行第一电子设备和第二电子设备的建立连接操作。

其中,预设协同标准为第一电子设备和第二电子设备存在协同业务交集,且协同业务交集中,至少存在一个协同业务,为第一电子设备和第二电子设备的设备组合支持的业务。

如此,可以过滤掉不满足预设协同标准的业务进行建立连接操作,触发满足预设协同标准的协同业务,进行业务建立连接操作,从而提高第一电子设备和第二电子设备的建立连接的操作准确性。

在一种可能的实现方式中,第一电子设备的应用程序层,保存第一电子设备和第二电子设备建立连接操作的操作结果,并将该操作结果作为下一次执行第一电子设备和第二电子设备建立连接操作的触发业务。

根据第一方面,或者以上第一方面的任意一种实现方式,当界面操作为第一业务切换到第二业务的业务模式切换操作时,根据第一业务的协同业务类型,和第二业务的协同业务类型,将第一业务切换至第二业务。并根据业务模式切换操作的操作结果,获取设备的第二设备状态和第二特性状态。

其中,当第一业务的协同业务类型与第二业务的协同业务类型相同时,将第一业务切换至第二业务。比如,第一业务为屏幕镜像,第二业务为屏幕扩展,两者均属于多屏协同的协同业务类型。

当第一业务的协同业务类型与第二业务的协同业务类型不相同时,比如第一业务为屏幕镜像,第二业务为键鼠协同,两者的协同业务类型不相同,根据第一电子设备和第二电子设备的预设协同标准,将第一业务切换至第二业务。

预设协同标准为第一电子设备和第二电子设备的存在协同业务交集,且协同业务交集中至少存在一个协同业务,为第一电子设备和第二电子设备的设备组合支持的业务。

其中,第一业务为第一电子设备和第二电子设备的设备组合支持的协同业务。第二业务为第一电子设备和第二电子设备的设备组合支持的协同业务。如此,通过上述模型切换操作,实现同业务模式切换和跨业务模式切换,即实现了正在进行协同业务,在一个协同显示界面中直接进行协同业务切换。用户不需要复杂操作流程,提供了用户的使用体验。

在一种可能的实现方式中,保存业务模式切换操作的操作结果,用于下一次执行第一电子设备和第二电子设备建立连接操作触发的业务。

根据第一方面,以及第一方面以上任意一种实现方式,当界面操作为第一电子设备和第二电子设备的断开连接操作。比如用户点击协同显示界面提供的“断开连接”选项,直接断开第一电子设备和第二电子设备的设备组合正在进行的协同业务。根据断开连接操作的操作结果,获取第二设备状态和第二特性状态。即将断开后的操作结果显示在协同显示界面。如此,实现了业务断开的协同业务操作。

根据第一方面,以及第一方面以上任意一种实现方式,当能够监听到所述周边在线设备的特性状态变更时,同步所述特性状态变更,更新所述设备的第一特性状态,以获取所述设备的第二特性状态;

当不能监听到所述周边在线设备的特性状态变更时,基于广播方式,将特性状态变更发送至周边在线设备;接收特性状态变更,设备的第一特性状态,以获取设备的第二特性状态。

其中,协同业务为键鼠协同、投屏、屏幕共享、屏幕扩展、或屏幕镜像中的至少一种。

业务表包括服务名称、管理级别、服务包名、连接状态、连接模式、支持对端设备类型或协同业务是否由控制中心发起的至少一项;

其中,管理级别包括第一级别,第二级别和第三级别,第一级别用于表示可调度,第二级别用于表示可显示但不可调度,第三级别用于表示可记录,但不可显示和不可调度。

设备表包括设备名称、近场发现、在线状态、或正在进行业务的业务标识中的至少一项。

第二方面,本申请提供了一种多设备协同管理的方法,该方法包括:

第二电子设备的应用程序层,接收在协同显示界面上,执行界面操作;协同显示界面为第一电子设备的应用程序层根据设备表和业务表进行显示的;设备表为将设备的第一设备状态写入得到的,业务表为将设备的第一特性状态写入得到;设备包括第一电子设备和周边在线设备;协同显示界面包括第一电子设备、周边在线设备,以及周边在线设备与第一电子设备的关系;

当界面操作为第一电子设备和第二电子设备的建立连接操作时,提供第二电子设备的特性状态,使第一电子设备的应用程序层根据第一电子设备的特性状态,和第二电子设备的特性状态,确定第一电子设备和第二电子设备的连接模式;使第一电子设备的应用程序层根据连接模式,执行第一电子设备和第二电子设备的建立连接操作;使第一电子设备的应用程序层,获取设备的第二设备状态和第二特性状态,并根据第二设备状态,更新设备表,根据第二特性状态,更新业务表;

其中,第一电子设备的应用程序层根据连接模式,执行第一电子设备和第二电子设备的建立连接操作,包括:

当连接模式为允许连接时,执行第一电子设备和第二电子设备的建立连接操作;根据建立连接操作的操作结果,获取设备的第二设备状态和设备的第二特性状态;设备包括第一电子设备和周边在线设备;周边在线设备包括第二电子设备;

当连接模式为不允许连接时,将设备的第一设备状态作为设备的第二设备状态,将设备的第一特性状态作为设备的第二特性状态。

可选的,第一电子设备的应用程序层根据连接模式,执行第一电子设备和第二电子设备的建立连接操作,还包括:

当连接模式为业务冲突模式时,根据第一电子设备和第二电子设备的预设协同标准,执行第一电子设备和第二电子设备的建立连接操作;根据建立连接操作的操作结果,获取设备的第二设备状态和设备的第二特性状态;

预设协同标准为第一电子设备和第二电子设备的存在协同业务交集,且协同业务交集中至少存在一个协同业务,为第一电子设备和第二电子设备的设备组合支持的业务;

业务冲突模式为第一电子设备正在进行协同业务,或/和第二电子设备正在进行协同业务。

根据第二方面,以及第二方面以上任意一种实现方式,当界面操作为将第一业务切换至第二业务的业务模式切换操作时,提供第二电子设备的特性状态,以使第一电子设备的应用程序层,根据第一业务的协同业务类型,和第二业务的协同业务类型,将第一业务切换至第二业务;根据业务模式切换操作的操作结果,获取设备的第二设备状态和第二特性状态;

第一业务为第一电子设备和第二电子设备的设备组合支持的协同业务;第二业务为第一电子设备和第二电子设备的设备组合支持的协同业务;第二电子设备为一个周边在线设备。

可选的,根据第一业务的协同业务类型,和第二业务的协同业务类型,将第一业务切换至第二业务,包括:

当第一业务的协同业务类型,和第二业务的协同业务类型相同时,将第一业务切换至第二业务。

当第一业务的协同业务类型,和第二业务的协同业务类型不相同时,根据第一电子设备和第二电子设备的预设协同标准,将第一业务切换至第二业务;

预设协同标准为第一电子设备和第二电子设备的存在协同业务交集,且协同业务交集中至少存在一个协同业务,为第一电子设备和第二电子设备的设备组合支持的业务。

根据第二方面,以及第二方面以上任意一种实现方式,当界面操作为第一电子设备和第二电子设备的断开连接操作时,提供第二电子设备的特性状态,以使第一电子设备的应用程序层,断开第一电子设备和第二电子设备的设备组合正在进行的协同业务;

根据断开连接操作的操作结果,获取设备的第二设备状态和第二特性状态。

根据第二方面,以及第二方面以上任意一种实现方式,协同业务为键鼠协同、通话协同、接续协同、通知协同、屏幕共享、屏幕扩展、或屏幕镜像中的至少一种。

根据第二方面,以及第二方面以上任意一种实现方式,业务表包括业务名称、管理级别、连接状态、连接通信方式、支持对端设备类型或协同业务呈现模式的至少一项;

其中,管理级别包括第一级别,第二级别和第三界别,第一级别用于表示可调度,第二级别用于表示可显示且不可调度,第三级别应用于表示可记录,但不可显示和不可调度。

根据第二方面,以及第二方面以上任意一种实现方式,设备表包括设备的设备标识、设备名称、设备类型、在线状态、或正在进行协同业务的设备标识中的至少一项。

第三方面,本申请提供了一种电子设备,包括:

存储器和处理器,所述存储器与所述处理器耦合;

所述存储器存储有程序指令,当所述程序指令由所述处理器执行时,使得所述电子设备执行第一方面任一项所述的方法。

第四方面,本申请提供了一种电子设备,包括:

存储器和处理器,所述存储器与所述处理器耦合;

所述存储器存储有程序指令,当所述程序指令由所述处理器执行时,使得所述电子设备执行第二方面任一项所述的方法。

第五方面,本申请提供了一种协同工作系统,其特征在于,系统包括第三方面的电子设备,以及包括第四方面的电子设备。

附图说明

图1A为本申请实施例提供的一种协同显示界面的启动示意图;

图1B为本申请实施例提供的一种协同业务建联显示示意图;

图2为本申请实施例提供的电子设备的硬件结构示意图;

图3为本申请实施例的电子设备100的软件结构框图;

图4为本申请实施例提供的一种实现多设备协同管理的分层架构框图;

图5为本申请实施例提供的一种实现多设备协同管理的分层结构应用于安卓平台的示意图;

图6为本申请实施例提供的一种应用于Windows平台的实现逻辑示意图;

图7本申请实施例提供的一种多设备协同管理启动阶段实现时序图;

图8为本申请实施例提供的一种设备状态变更阶段实现时序图;

图9为本申请实施例提供的一种设备状态变更后的协同显示界面示意图;

图10为本申请实施例提供的一种业务建联的方法流程图;

图11A为本申请实施例提供的一种业务建联阶段实现时序图;

图11B为本申请实施例提供的一种业务建联阶段实现时序图;

图12为本申请实施例提供的一种包含业务冲突调度的业务建联过程示意图;

图13为本申请实施例提供的一种直接业务建联过程示意图;

图14为本申请实施例提供的一种无法建立连接提示示意图;

图15为本申请实施例提供的一种业务建联后的处理时序图;

图16为本申请实施例提供的一种业务断开的实现时序图;

图17为本申请实施例提供的一种业务断开的协同显示界面实现示意图;

图18为本申请实施例提供的一种业务模式切换的实现时序图;

图19为本申请实时提供的一种pad与pc正在进行协同业务示意图;

图20为本申请实施例提供的一种同业务切换操作的过程示意图;

图21为本申请实施例提供的一种pad与pc的屏幕镜像示意图;

图22为本申请实施例提供的一种pad与pc的屏幕扩展示意图;

图23为本申请实施例提供的一种跨业务切换操作的过程示意图。

具体实施方式

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

本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。

本申请实施例的说明书和权利要求书中的术语“第一”和“第二”等是用于区别不同的对象,而不是用于描述对象的特定顺序。例如,第一目标对象和第二目标对象等是用于区别不同的目标对象,而不是用于描述目标对象的特定顺序。

在本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。

在本申请实施例的描述中,除非另有说明,“多个”的含义是指两个或两个以上。例如,多个处理单元是指两个或两个以上的处理单元;多个系统是指两个或两个以上的系统。

多设备协同是一种应用于多个电子设备之间的技术。利用多设备协同技术,两个或者多个电子设备之间可以进行跨系统、跨设备的协同,实现资源共享、协同操作。

多设备协同可以应用于同类型或者不同类型的电子设备之间。其中,电子设备的类型包括但不限于手机、平板电脑、笔记本电脑、大屏设备(例如:智能电视、智慧屏)、个人计算机(persona1computer,PC)、手持计算机、上网本、个人数字助理(personal digitalassistant,PDA)、可穿戴电子设备、车载设备、虚拟现实设备等设备。

多设备协同需要基于设备间的通信连接实现。该通信连接可以是有线通信连接,也可以是无线通信连接。其中,有线通信连接的解决方案例如可以包括USB On-The-Go(OTG)技术;无线通信的解决方案例如可以包括如无线保真(wireless fidelity,Wi-Fi),Wi-Fi直连(Wi-Fi Direct),蓝牙(bluetooth,BT),近距离无线通信技术(near fieldcommunication,NFC),红外技术(infrared,IR)等。

随着终端技术的不断发展,多设备协同已经产生了多种不同的协同类型(也称:协同服务),例如:多屏协同(包括屏幕扩展、屏幕镜像和屏幕共享)、键鼠协同、通话协同、接续协同、通知协同等业务。其中:

投屏:将第一电子设备屏幕中的内容(例如:视频、照片等)投送到第二电子设备的屏幕中进行显示。在投屏时,用户可以将选择第一电子设备屏幕的部分内容或者全部内容投送到第二电子设备的屏幕中进行显示。一些投屏方式还允许用户在投屏期间将屏幕切换至其他页面,而不影响第二电子设备继续播放被投送的内容,比如,DLNA投屏。

屏幕镜像:将第一电子设备屏幕中的所有内容完整地在第二电子设备的屏幕中进行镜像显示。第二电子设备中显示的第一电子设备的内容与第一电子设备显示的内容相同,且随着第一电子设备显示内容的变化而变化。

屏幕扩展:将第二电子设备的屏幕作为第一电子设备的副屏,第一电子设备可以将其需要显示的一部分内容转移到副屏上进行显示,第一电子设备的屏幕与第二电子设备的屏幕可以共同显示内容,扩展了第一电子设备的显示能力。

屏幕共享:将第一电子设备的用户界面投影到第二电子设备的屏幕中进行显示,并且允许用户在第二电子设备中对第一电子设备的用户界面进行操作,以及通过在第二电子设备中执行特定的操作(例如:从第二电子设备的用户界面中向第一电子设备的用户界面中拖拽文件),将第二电子设备中的文件传输到第一电子设备中,实现第一电子设备与第二电子设备之间的跨设备操作和跨设备文件传输等。其中,第一电子设备的用户界面可以显示在第二电子设备屏幕中的任意区域,也可以全屏显示。

键鼠协同:第一电子设备可以共享第二电子设备的输入设备,比如第一电子设备为Android设备,第二电子设备为Windows设备,Android设备可以共享Windows设备的输入设备,比如鼠标、键盘等输入设备。另外,在键鼠共享类型中,第一电子设备与第二电子设备之间还可以进行文件传输。

接续协同:用户在第一电子设备上运行应用,第二电子设备的界面上可以提示用户在第二电子设备上打开在第一电子设备上正在运行的应用,从而转移到第二电子设备上进行接续操作,比如观看视频、编辑文档,等。例如:第一电子设备上正在运行文档应用,文档应用可以是备忘录、word等,用户在第一电子设备上正在编辑文档,当第二电子设备和第一电子设备距离较近时,第二电子设备上显示提示信息,用户在第二电子设备上点击提示信息,响应于用户的点击操作,第二电子设备打开文档应用并展示用户正在编辑的位置,从而转移至第二电子设备上继续编辑等。

通话协同:当第一电子设备接到语音通话或者视频通话的呼入时,第二电子设备上可以同步显示呼入界面,这样,用户可以选择在第二电子设备上接听或者挂断通话。

通知协同:当第一电子设备接收到通知消息时,通知消息可以在第二电子设备中同步显示,还可以允许用户在第二电子设备中对通知消息执行回复、删除、已读等操作。

上述列举出的多个协同类型,一些协同类型是主设备(一般是多设备协同的发起方)响应于用户操作,向从设备(一般是多设备协同的参与方)发起的,可称作手动协同业务,比如屏幕扩展、屏幕共享、键鼠协同等。一些协同类型是在用户开启功能状态下,满足触发规则时自动触发的,可被称作自动协同业务,比如通话协同、通知协同和接续协同。

以上说明中的第一电子设备也可以称为主设备,第二电子设备也可以称为从设备。

现有技术中通过一个电子设备的协同显示界面,仅能对一个其它电子设备进行协同管理。当建立一个电子设备与其他多个电子设备的协同业务时,需要多个协同显示界面参与,协同业务操作的操作复杂度高。如何降低用户进行协同业务操作的操作复杂度,成为亟待解决的技术问题。本申请提出通过一个协同显示界面,统一管理与多个设备的协同业务,即多设备协同管理的方式,以降低用户进行协同业务操作的操作复杂度。

示例性说明:参见图1A,为本申请实施例提供的一种协同显示界面的启动示意图。应用于手机(也即主设备)。

其中图1A(a)为包括终端协同显示界面的启动界面示意图。当用户自上而下滑动手机屏幕(也可以是预设的其他操作手段),手机会进入如图1A(a)所示的显示界面。在上述显示界面,会呈现已启动的协同控制中心,以及其他已启动的应用程序,比如短信应用程序和微信应用程序。除此之外,上述显示界面还会呈现已启动应用程序正在进行业务。以协同控制中心,也即图示中的“智慧互联”为例,显示界面还会呈现可连接设备的数量,以及下一步可以进行的操作,比如点击图示“X”,关闭协同控制中心等。

关于协同控制中心启动存在两种方式,一种是开机时自动启动协同控制中心,一种是关闭协同控制中心,再重新启动。关于两种协同控制中心启动的方式,参见下文,这里不再赘述。

对于图1A(a)所示的显示界面,点击手指所指示的标识,手机会进入如图1(b)所示的协同控制中心界面,也即协同显示界面。在本协同显示界面中,可显示本机设备101(也即主设备)的设备标识,以及可连接设备的设备标识。除此之外,协同显示界面还显示可连接设备的设备名称以及建立协同业务的方式。

具体的,图1A(a)所示的四台可连接设备,包括2台平板(也即图示pad102和pad103及对应的平板标识),1台智慧屏104(也即图示Smart TV和智慧屏标识)和1台笔记本电脑105(也即图示Magic Book和笔记本标识)。

其中,为了区分本机设备和可连接设备(也即周边在线设备),协同显示界面采用不同的形状、颜色和位置表示本申请和可连接设备。比如,在协同显示界面的界面中心位置,用深灰色水泡(也可以颜色的水泡)包裹本机设备101的设备标识。在协同显示界面的其他位置,用浅灰色水泡(也可以是其他区别与主设备的水泡颜色的水泡)包裹可连接设备的设备标识。在一种可能的实现方式中,可连接设备可以在以本机设备为圆心的圆上均匀分布,也可以在以本申请为圆心的圆上不均匀分布,也可以不再本机设备为圆心的圆上。本申请实施例不对可连接设备的分布进行限定。

在下文中,用深灰色水泡包裹主设备的设备标识,用浅灰色水泡包裹可连接设备的设备标识。其中,可连接设备用于表述可以与主设备进行协同业务的周边在线设备。周边在线设备为距离主设备在预设距离范围内的在线设备。

协同显示界面上还可以显示用户“拖拽设备建立协同”的建立协同业务提示语。建立协同业务提示语可以在协同显示界面的顶部位置,也可以在协同显示界面的底部位置,也可以在协同显示界面的其他位置,这里不对建立协同业务提示语进行限定。

参见图1B,为本申请实施例提供的一种协同业务建联显示示意图。

参见图1B(a)所示,当用户拖拽可连接设备,比如拖拽图示pad103(此时pad103为从设备),至本机设备附近,可建立本机设备与pad的协同业务。其中,箭头所指方式为用户拖拽pad标识的拖动方向。其中,本机设备为主设备,拖拽设备为从设备。

根据如图1B(a)所示的拖拽方式,协同显示界面形成如图1B(b)所示的显示界面。此时本机设备与从设备pad103建立协同业务。在本申请实施例中,可以利用与本机设备相同的水泡颜色的水泡,包裹本机设备与从设备的设备标识,以表示本机设备与从设备正在建立协同业务(下文正在建立协同业务的本机设备与从设备的设备标识,用与本机设备相同的水泡颜色的水泡包裹)。

除此之外,点击图1B(b)手指所指示的位置,协同显示界面会显示手机101和pad103组成的设备组合所能支持的协同业务的业务选项。其中,正在进行的协同业务选项与其他协同业务选项,采用不同颜色的水泡包裹业务标识,进行区分(下文正在进行的协同业务用浅灰色水泡包裹对应的业务标识,其他协同业务用白色水泡包裹)。参见图1B(c),手机101和pad103支持的协同业务为多屏协同,用浅灰色水泡包裹的多屏协同选项。另外,协同显示界面还包括断开连接的选项,用白色水泡包裹。用户点击断开连接的选项,可以断开本机设备与pad103正在建立的多屏协同的业务。

另外,在图1B(c)所示的协同显示界面上,用户还可以拖拽其他可连接设备,比如拖拽Magic Book104至本机设备101附近,与本机设备101的协同业务。如此,用户在一个协同显示界面统一管理与多个电子设备的协同操作,降低了用户进行协同业务操作的操作复杂度,提升了用户的使用体验。

为了更好的说明本申请提供的多设备协同管理的方法,首先对多设备协同管理方法的电子设备的硬件结构图进行描述。参见图2,为本申请实施例提供的电子设备的硬件结构示意图。该设备既可以作为多设备协同中的主设备,也可以作为多设备协同中的从设备。

如图2所示,电子设备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)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。处理器用于实现多设备协同管理的实现逻辑,比如业务建联逻辑、业务断开逻辑和业务模式切换逻辑等。

控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。在本申请实施例中,控制器可以产生请求调度指令,存在业务冲突指令,业务断开指令,将特性状态更新到设备服务管理器等指令。

处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。比如,处理器110设置数据存储控制器Data Controller,为高速缓冲存储器,用于存储业务建联记录等。当下次进行业务建联时,可以直接从所述存储器中调用触发协同业务。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。

在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuitsound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。

I2C接口是一种双向同步串行总线,包括一根串行数据线(serial data line,SDA)和一根串行时钟线(derail clock line,SCL)。在一些实施例中,处理器110可以包含多组I2C总线。处理器110可以通过不同的I2C总线接口分别耦合触摸传感器180K,充电器,闪光灯,摄像头193等。例如:处理器110可以通过I2C接口耦合触摸传感器180K,使处理器110与触摸传感器180K通过I2C总线接口通信,实现电子设备100的触摸功能。

I2S接口可以用于音频通信。在一些实施例中,处理器110可以包含多组I2S总线。处理器110可以通过I2S总线与音频模块170耦合,实现处理器110与音频模块170之间的通信。在一些实施例中,音频模块170可以通过I2S接口向无线通信模块160传递音频信号,实现通过蓝牙耳机接听电话的功能。

PCM接口也可以用于音频通信,将模拟信号抽样,量化和编码。在一些实施例中,音频模块170与无线通信模块160可以通过PCM总线接口耦合。在一些实施例中,音频模块170也可以通过PCM接口向无线通信模块160传递音频信号,实现通过蓝牙耳机接听电话的功能。所述I2S接口和所述PCM接口都可以用于音频通信。

UART接口是一种通用串行数据总线,用于异步通信。该总线可以为双向通信总线。它将要传输的数据在串行通信与并行通信之间转换。在一些实施例中,UART接口通常被用于连接处理器110与无线通信模块160。例如:处理器110通过UART接口与无线通信模块160中的蓝牙模块通信,实现蓝牙功能。在一些实施例中,音频模块170可以通过UART接口向无线通信模块160传递音频信号,实现通过蓝牙耳机播放音乐的功能。

MIPI接口可以被用于连接处理器110与显示屏194,摄像头193等外围器件。MIPI接口包括摄像头串行接口(camera serial interface,CSI),显示屏串行接口(displayserial interface,DSI)等。在一些实施例中,处理器110和摄像头193通过CSI接口通信,实现电子设备100的拍摄功能。处理器110和显示屏194通过DSI接口通信,实现电子设备100的显示功能。

GPIO接口可以通过软件配置。GPIO接口可以被配置为控制信号,也可被配置为数据信号。在一些实施例中,GPIO接口可以用于连接处理器110与摄像头193,显示屏194,无线通信模块160,音频模块170,传感器模块180等。GPIO接口还可以被配置为I2C接口,I2S接口,UART接口,MIPI接口等。

USB接口130是符合USB标准规范的接口,具体可以是Mini USB接口,Micro USB接口,USB Type C接口等。USB接口130可以用于连接充电器为电子设备100充电,也可以用于电子设备100与外围设备之间传输数据。也可以用于连接耳机,通过耳机播放音频。该接口还可以用于连接其他电子设备,例如AR设备等。

可以理解的是,本发明实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备100的结构限定。在本申请另一些实施例中,电子设备100也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。

充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块140可以通过USB接口130接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块140可以通过电子设备100的无线充电线圈接收无线充电输入。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为电子设备供电。

电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,显示屏194,摄像头193,和无线通信模块160等供电。电源管理模块141还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理模块141也可以设置于处理器110中。在另一些实施例中,电源管理模块141和充电管理模块140也可以设置于同一个器件中。

电子设备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的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得电子设备100可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯系统(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(codedivision multiple access,CDMA),宽带码分多址(wideband code division multipleaccess,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),北斗卫星导航系统(beidounavigation satellite system,BDS),准天顶卫星系统(quasi-zenith satellitesystem,QZSS)和/或星基增强系统(satellite based augmentation systems,SBAS)。

电子设备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可以通过图像信号处理器(Image Signal Processor,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可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备100使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。处理器110通过运行存储在内部存储器121的指令,和/或存储在设置于处理器中的存储器的指令,执行电子设备100的各种功能应用以及数据处理。

电子设备100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。

音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。在一些实施例中,音频模块170可以设置于处理器110中,或将音频模块170的部分功能模块设置于处理器110中。

扬声器170A,也称“喇叭”,用于将音频电信号转换为声音信号。电子设备100可以通过扬声器170A收听音乐,或收听免提通话。

受话器170B,也称“听筒”,用于将音频电信号转换成声音信号。当电子设备100接听电话或语音信息时,可以通过将受话器170B靠近人耳接听语音。

麦克风170C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。当拨打电话或发送语音信息时,用户可以通过人嘴靠近麦克风170C发声,将声音信号输入到麦克风170C。电子设备100可以设置至少一个麦克风170C。在另一些实施例中,电子设备100可以设置两个麦克风170C,除了采集声音信号,还可以实现降噪功能。在另一些实施例中,电子设备100还可以设置三个,四个或更多麦克风170C,实现采集声音信号,降噪,还可以识别声音来源,实现定向录音功能等。

耳机接口170D用于连接有线耳机。耳机接口170D可以是USB接口130,也可以是3.5mm的开放移动电子设备平台(open mobile terminal platform,OMTP)标准接口,美国蜂窝电信工业协会(cellular telecommunications industry association of the USA,CTIA)标准接口。

压力传感器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)和光检测器,例如光电二极管。发光二极管可以是红外发光二极管。电子设备100通过发光二极管向外发射红外光。电子设备100使用光电二极管检测来自附近物体的红外反射光。当检测到充分的反射光时,可以确定电子设备100附近有物体。当检测到不充分的反射光时,电子设备100可以确定电子设备100附近没有物体。电子设备100可以利用接近光传感器180G检测用户手持电子设备100贴近耳朵通话,以便自动熄灭屏幕达到省电的目的。接近光传感器180G也可用于皮套模式,口袋模式自动解锁与锁屏。

环境光传感器180L用于感知环境光亮度。电子设备100可以根据感知的环境光亮度自适应调节显示屏194亮度。环境光传感器180L也可用于拍照时自动调节白平衡。环境光传感器180L还可以与接近光传感器180G配合,检测电子设备100是否在口袋里,以防误触。

指纹传感器180H用于采集指纹。电子设备100可以利用采集的指纹特性实现指纹解锁,访问应用锁,指纹拍照,指纹接听来电等。

温度传感器180J用于检测温度。在一些实施例中,电子设备100利用温度传感器180J检测的温度,执行温度处理策略。例如,当温度传感器180J上报的温度超过阈值,电子设备100执行降低位于温度传感器180J附近的处理器的性能,以便降低功耗实施热保护。在另一些实施例中,当温度低于另一阈值时,电子设备100对电池142加热,以避免低温导致电子设备100异常关机。在其他一些实施例中,当温度低于又一阈值时,电子设备100对电池142的输出电压执行升压,以避免低温导致的异常关机。

触摸传感器180K,也称“触控器件”。触摸传感器180K可以设置于显示屏194,由触摸传感器180K与显示屏194组成触摸屏,也称“触控屏”。触摸传感器180K用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏194提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器180K也可以设置于电子设备100的表面,与显示屏194所处的位置不同。

骨传导传感器180M可以获取振动信号。在一些实施例中,骨传导传感器180M可以获取人体声部振动骨块的振动信号。骨传导传感器180M也可以接触人体脉搏,接收血压跳动信号。在一些实施例中,骨传导传感器180M也可以设置于耳机中,结合成骨传导耳机。音频模块170可以基于所述骨传导传感器180M获取的声部振动骨块的振动信号,解析出语音信号,实现语音功能。应用处理器可以基于所述骨传导传感器180M获取的血压跳动信号解析心率信息,实现心率检测功能。

按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。电子设备100可以接收按键输入,产生与电子设备100的用户设置以及功能控制有关的键信号输入。

马达191可以产生振动提示。马达191可以用于来电振动提示,也可以用于触摸振动反馈。例如,作用于不同应用(例如拍照,音频播放等)的触摸操作,可以对应不同的振动反馈效果。作用于显示屏194不同区域的触摸操作,马达191也可对应不同的振动反馈效果。不同的应用场景(例如:时间提醒,接收信息,闹钟,游戏等)也可以对应不同的振动反馈效果。触摸振动反馈效果还可以支持自定义。

指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。

SIM卡接口195用于连接SIM卡。SIM卡可以通过插入SIM卡接口195,或从SIM卡接口195拔出,实现和电子设备100的接触和分离。电子设备100可以支持1个或N个SIM卡接口,N为大于1的正整数。SIM卡接口195可以支持Nano SIM卡,Micro SIM卡,SIM卡等。同一个SIM卡接口195可以同时插入多张卡。所述多张卡的类型可以相同,也可以不同。SIM卡接口195也可以兼容不同类型的SIM卡。SIM卡接口195也可以兼容外部存储卡。电子设备100通过SIM卡和网络交互,实现通话以及数据通信等功能。在一些实施例中,电子设备100采用eSIM,即:嵌入式SIM卡。eSIM卡可以嵌在电子设备100中,不能和电子设备100分离。

图3是本申请实施例的电子设备100的软件架构框图。

分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统分为四层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(Android runtime)和系统库,以及内核层。

应用程序主要用于实现多设备协同管理、短信息等应用程序的实现。

具体的,为实现多设备协同管理,在应用程序层设置了三层结构,分别业务层、控制层和能力层。其中,业务层用于集成协同业务以及协同显示界面。控制层用于控制业务层的具体协同业务的实现,以及协同显示界面的具体显示内容。能力层用于提供通信通道,和数据管理。

具体三层结构参见下文图4所示,这里不再赘述。

应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。

在本申请实施例中,

如图3所示,应用程序框架层可以包括窗口管理器,内容提供器,视图系统,电话管理器,资源管理器,通知管理器等。

窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。

内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。

视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。

电话管理器用于提供电子设备100的通信功能。例如通话状态的管理(包括接通,挂断等)。

资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。

通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,电子设备振动,指示灯闪烁等。

Android Runtime包括核心库和虚拟机。Android runtime负责安卓系统的调度和管理。

核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。

应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。

系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(Media Libraries),三维图形处理库(例如:OpenGL ES),二维图形引擎(例如:SGL)等。

表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D和3D图层的融合。

媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。

三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。

二维图形引擎是二维绘图的绘图引擎。

内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动。

此外,本申请还提供了一种协同工作系统,包括上述主设备的电子结构和从设备的电子结构。

参见图4,为本申请实施例提供的一种实现多设备协同管理的分层架构框图。业务层设置了协同显示界面Control View,和业务应用集。其中,Control View作为人机交互界面,集成了系统界面(System User Interface,System UI)、通知栏卡片和控制中心全屏界面。

其中,System UI提供下拉状态栏卡片的加载窗口,通过System UI可以加载设备在线业务的业务状态。

通知栏卡片,用于呈现状态栏卡片的业务状态内容。示例性说明:如图1A所示,“智慧互联”、“信息”和“微信”及其对应的内容,即为通知栏卡片。

控制中心全屏界面,用于全屏展示相对应的业务。对于本申请提供的多设备协同管理,控制中心全屏界面也即协同显示界面。比如,如图1B所示,为协同业务的全屏显示界面,用于全屏展示“智慧互联”协同显示界面。

业务应用集用于集成包括键鼠协同、通话协同、接续协同、和多屏协同等多个协同业务,以及集成多个控制中心软件开发工具包(Software Development Kit,SDK),每个协同业务对应一个控制中心SDK,用于与控制层进行数据交互。此外,每个协同业务还对应一个profile SDK,用于协同业务与设备服务管理器进行数据交互,实现设备服务管理器的数据写入,以及从设备服务管理器读取数据。

控制层属于多设备协同管理的核心模块,也称为控制中心,包括通信模块、设备控制模块、业务状态管理模块、业务调度管理模块和设置管理模块。控制层还包括通信模块对应的通信SDK,设备控制模块对应的profile SDK,和业务状态管理模块对应的profileSDK。

其中,通信模块实现两个设备(也即主设备和从设备)的协同控制中心通信,包括跨设备指令分发和跨设备查询,并通过通信SDK与能力层的通信管理器交互。通信模块还用于实现当业务在建连前的额外通信,由控制层进行转接。如果主设备下发连接指令,但本机设备无法发起,需要从设备发起,则指令由从设备进行建连。

设备控制模块用于通过profile SDK实时从设备服务管理器获取管理与主设备同账号设备的上下线信息、能力信息、服务状态等。具体来讲,上下线信息是指设备是否为同账号登录的在线设备,如是,表示设备上线,否则,表示设备下线。能力信息是指与与主设备同账号设备可以进行的协同业务。服务状态则是指设备正在进行的协同业务。设备控制模块包括在线设备、连接状态管理和所有设备能力集。其中,在线设备用于查询当前与主设备同账号的在线设备,连接状态管理用于查询当前设备是否连接,能否连接。所有设备能力集,用于集中获取的所有设备的设备状态,即与主设备同账号设备的上下线信息、能力信息、服务状态等。

业务状态管理模块用于通过Profile SDK实时从设备服务管理器中读取主设备和周边在线设备支持的特性状态,比如本申请支持的业务能力列表、业务开关、业务是否可被控制中心调度、具体某业务支持设备类型、具体某业务支持的连接方案、当前业务运行状态等。业务状态管理模块包括本机设备业务集和业务状态管理。其中本机设备业务集查询本机设备支持的业务集合,业务状态管理用于查询与主设备同账号的在线设备支持的业务状态,并接收外部业务状态变化更新状态,并将其同步到协同显示界面。

业务调度管理模块用于进行业务冲突判断,向用户发出提示,以及根据用户意图下发业务指令,即根据用户选择以及业务冲突回调业务进行业务连接、切换和断开。业务调度管理模块包括业务冲突调度和业务连接管理。其中业务冲突调度用于冲突处理。比如,手机支持屏幕镜像、pad也支持屏幕镜像,但由于pad正在进行通知协同业务,投屏协同与通知协同不能共存,需要进行业务冲突调度,以进行业务冲突处理。业务连接管理用于管理多设备有没有协同业务,能否连接。

设置管理模块用于管理控制中心的相关设置,包括模式设置等。

能力层包括通信管理器和设备服务管理器,用于进行通信管理和设备数据管理。其中,通信管理器包括同账号发现、老业务发现兼容和连接传输,用于实现设备建联、传输和发现。设备服务管理器,用于实现设备数据同步,比如上下线信息、能力信息、服务状态等设备数据同步,并将其保存在数据层的数据存储控制器Data Controller进行模式持久化存储。

本申请实施例提供的实现多设备协同管理的分层结构可以应用于安卓平台,也可以应用于Windows平台。

参见图5,为本申请实施例提供的一种实现多设备协同管理的分层结构应用于安卓平台的示意图。

实现多设备协同管理的分层结构在安卓平台以安卓安装包(Android Package,APK)形式存在。其中,业务层各模块以APK形式存在,比如,SystemUI.apk,用于实现业务层Control view的SystemUI、通知栏卡片和控制中心全屏界面。协同业务以业务apk形式存在。图示中AA.apk和PCA.apk分别表示不同的协同业务APK。每个协同业务的业务apk集成了一个控制中心SDK,与控制中心apk,也即ControlCenter.apk交互。并且每个协同业务的业务apk还集成了一个profile SDK,与设备服务管理器进行数据同步。

控制层的各模块,包括通信模块、设备控制模块、业务状态管理模块、业务调度管理模块、设置管理模块等以apk形式存在。也即控制层为ControlCenter.apk。除此之外,ControlCenter.apk还集成了,与设备控制模块对应的profile SDK,与业务状态管理模块对应的profile SDK,与通信模块对应的通信SDK。

能力层的通信管理器以XMagiclink.apk的形式存在。设备服务管理器以Xdeviceprofile.apk实现。即XMagiclink.apk通过通信SDK与通信模块apk通信,Xdeviceprofile.apk通过profile SDK与其他模块通信。具体实现逻辑与图4所示的分层结构相同,这里不再赘述。

此外,本申请实施例提供的一种多设备协同历的分层结构还可以应用于Widows平台。在Windows平台以动态连接库(Dynamic Link Library,dll)形式存在。包括特性的.dll,ControlCenter.dll,XMagiclink.dll和Xdeviceprofile.dll等。其中,ControlCenter.dll集成控制层包括的通信模块、设备控制模块、业务状态管理模块和业务调度管理模块以及设置管理模块,通信模块对应通信SDK,设备管理模块和业务状态管理模块对应的profile SDK。

其中,能力层的通信管理器通过XMagiclink.dll实现,设备服务管理器通过Xdeviceprofile.dll实现。特性的.dll用于实现业务层Control view和协同业务。

参见图6,为本申请实施例提供的一种应用于Windows平台的实现逻辑示意图。PC端终端特性数据管理记录终端特性数据,比如手机协同、Pad协同、大屏协同、多屏协同以及通知协同等的隐私状态、上下线状态和运行状态(用于表示正在进行的协同业务)。ControlCenter.dll与PC端终端特性数据管理交互,可以从PC端终端特性数据管理获取协同业务数据,或将变更后的协同业务数据保存至PC端终端特性数据管理。ControlCenter.dll将协同业务的开启特征,或/和结束特性发送至特性的.dll,以进行相应协同业务的显示。ControlCenter.dll集成了主设备特性的状态管理和控制通道。其中主设备设备状态管理用于实现控制层的设备控制模块、业务状态管理模块和业务调度管理模块以及设置管理模块的功能。控制通道实现通信管理器的通信功能,接收通信模块发送的控制命令或异常状态,并执行相关操作。设备服务管理器获取主设备特性开关状态和特性运行状态,并将主设备特性开关状态和主设备特性运行状态发送至ControlCenter.dll执行相关操作,更新协同显示界面。并将更新的结果发送至PC端终端特性数据管理。其中主设备的特性开关状态是指协同业务属于连接还是断开状态。主设备的特性运行状态是指协同业务运行状态,比如是否在运行过程中存在业务变更,协同业务模式切换等。

此外,本申请实施例还提供了一种协同工作系统,该系统包括主设备和从设备。主设备可以为Android设备,具体结构参见图5,也可以为Windows设备,具体结构参见图6,这里不再赘述。从设备可以Android设备,具体结构参见图5,也可以为Windows设备,具体结构参见图6,这里不再赘述。

下面以安卓设备为主设备为例,结合附图说明,详细介绍多设备协同管理的实现方法。本申请实施例提供的多设备协同管理的实现,分为五个部分,分别为启动阶段,业务状态变更阶段,业务建联阶段,业务断开阶段和业务模式切换阶段。其中,设备状态变更阶段,用于当与主设备同账号的其他设备发生上线或下线变化时,更新协同显示界面。业务建联阶段,用于实现主设备和从设备的协同业务,并在协同显示界面显示。业务断开阶段,则用于断开正在进行的主设备和从设备的协同业务。业务模式切换阶段,用于将主设备和从设备正在进行的某一协同业务,切换为主设备和从设备的支持的其他协同业务。在本申请实施例中,业务建联阶段、业务断开阶段和业务模式切换阶段不存在时间的先后关系,也不必须同时存在,可以根据需要,进行具体调整。下面分阶段,详细介绍多设备协同管理的实现方法。

S1、启动阶段

参见图7,为本申请实施例提供的一种多设备协同管理启动阶段实现时序图。具体包括:

S11:Control View向设备控制模块发送启动指令。

用户在手机屏幕上执行协同控制中心的启动操作。其中,启动操作可以为用户在手机屏幕上自上而下滑动,也可以为其他预设的启动操作。在本申请实施例中,设备处于开机态,但协同控制中心并不始终处于运行态。即,启动协同控制中心可能为设备开机后的首次打开,也可能为关闭协同控制中心后的重新开启。

在本申请实施例中,当用户在手机屏幕上自上而下滑动时,协同控制中心的Control View产生启动指令,并向设备控制模块发送启动指令,以启动协同控制中心。其中,启动指令为启动协同控制中心的指令。示例性说明:用户在手机屏幕上,自上而下滑动,以启动协同控制中心,产生如图1(a)所示的包含协同控制中心的显示界面示意图。

S12:设备控制模块启动协同控制中心的过程中,向业务状态管理管理模块发送启动指令。

设备控制模块接收到Control View发送的启动指令后,执行启动协同控制中心。

设备控制模块在执行启动协同控制中心的过程中,向业务状态管理模块发送启动指令,使业务状态管理模块启动。

S13:设备控制模块向设备服务管理器发送数据同步请求指令和注册设备上下线监听指令。

设备控制模块在执行启动协同控制中心的瞬间,向设备服务管理器发送数据同步请求指令。设备服务管理器接收到数据同步指令后,同步所有周边设备的设备状态。在本申请实施例中,周边设备为距离本机设备在预设距离范围内的设备。设备状态包括设备的设备状态和特性状态。

其中,设备状态用于表示设备属性的状态,比如设备标识、设备名称、设备类型、在线状态、或与本机设备的距离(也即是否近场发现)等。特性状态是指设备能够进行的协同业务,以及协同业务对应的状态,比如,本机设备能够进行的协同业务的业务名称、业务当前运行状态、或是否支持控制中心调度等。

此外,设备控制模块在向设备服务管理器,发送数据同步请求指令的同时,还向设备服务管理器发送注册设备上下线监听指令,以使设备服务管理器注册设备上下线监听,用于监视周边设备的上下线状态,也即断开连接或建立连接的状态。

在本申请实施例中,设备由上线状态变为下线状态包括,主动下线操作和被动下线操作。其中主动下线操作包括:用户点击周边设备的协同显示界面的关闭标识,以退出协同控制中心的账号,或周边设备远离本机设备,使周边设备与本机设备的距离超过预设范围等。被动下线操作包括由于电量不足或其他原因导致周边设备掉线等。

S14:业务状态管理模块向设备服务管理器发送全量特性集合指令。

全量特性集合是指本机设备能够支持的所有协同业务的集合。在本申请实施例中,业务状态管理模块生成全量特性集合指令,并将其发送至设备服务管理器,以从设备服务管理器获取本机设备所能支持的所有协同业务。

在本申请实施例中,步骤S13和S14同时发生,不存在时间的先后关系。

S15:设备服务管理器向业务状态管理模块返回全量特性集合。

设备服务管理器接收到业务状态管理模块发送的全量特性集合指令,并向业务状态管理模块返回全量特性集合。示例性说明:如果本机设备为手机,设备服务管理器向业务状态管理模块返回的全量特性集合包括屏幕共享、屏幕镜像、键鼠协同、通知协同、通话协同和续接协同。其中,全量特性集合,也即第一电子设备的初始设备状态。

S16:业务状态管理模块向设备服务管理器发送获取本机特性状态指令和注册本机支持特性状态变更监听指令。

在本申请实施例中,业务状态管理模块生成获取本机特性状态指令,以及生成注册本机支持特性状态变更监听指令,并将上述指令发送给设备服务管理器。其中,业务状态管理模块向设备服务管理器发送获取本机特性状态指令,以从设备服务管理器,获取本机设备的特性状态。业务状态管理模块向设备服务管理器发送注册本机支持特性状态变更监听指令,以使设备服务管理器注册本机设备支持特性状态变更监听器,用于监听本机设备支持的特性状态的变更。

S17:设备服务管理器向业务状态管理模块返回本机特性状态。

当设备服务管理器接收到,业务状态管理模块发送的获取本机特性状态指令后,向业务状态管理模块,返回本机特性状态,也即第一电子设备的初始特性状态。

其中,本机特性状态为本机设备全量特性的特性状态,即本机设备能够支持的所有协同业务的状态,包括:协同业务的开关状态,运行状态,正在进行协同业务的对端设备ID列表,服务包名,业务连接模式(仅限多屏协同业务),可连接设备类型,和物理连接类型等。

协同业务的开关状态包括不支持、关闭和开启。在本申请实施例中,对于“不支持”的服务开关状态,需要预先内置于协同控制中心应用程序中。“关闭”和“开启”的服务开关状态为动态变更状态,对于不存在服务开关状态的协同服务,比如笔记本电脑的多屏协同业务,默认服务开关状态处于“开启”。

协同业务的运行状态包括“未连接”、“运行中”、和“连接中”。“未连接”表示该协同业务没有任何连接的状态,“运行中”表示该协同业务在连接中的状态,“连接中”表示该协同业务在连接过程中的状态。

正在进行协同业务的对端设备ID列表,用于表示正在进行协同业务的对端设备的ID。在本申请实施例中,当主设备连接了多个设备时,用“;”分割。

协同业务的服务包名,用于表示当协同控制中心进行调度时的具体应用包名。在本申请实施例中,服务包名,可以表示为“com.AA.协同业务名”。其中,“AA”可以为手机名,也可以为其他名。

协同业务的业务连接模式,用于表示当前协同业务的连接模式,目前只针对多屏协同业务使用。业务连接模式包括屏幕镜像、屏幕共享和屏幕扩展。

协同业务的可连接设备类型,用于表示可以连接的对端设备类型,目的是设备融合时判断是否可以进行协同业务。示例性说明:主设备手机支持的协同业务为键鼠协同,可连接设备为笔记本电脑,即当手机与平板融合时,不可以进行键鼠协同的协同业务。

协同业务的物理连接类型,用于表示该协同业务当前正在连接的物理通路,目的是进行冲突处理时,在连接成功后动态写入。包括WIFI,P2P、WLAN、BR、或USB中至少一种。

S18:业务状态管理模块更新业务表

业务状态管理模块利用接收的本机特性状态,更新业务表。其中,业务表为预先设置的内存表。当协同控制中心关闭后,业务表将被销毁。业务表与设备的特性状态一一对应。主设备的业务表,其与主设备的特性状态一一对应。如果是可连接设备的业务表,则与可连接设备一一对应。示例性说明:

表1:业务表一

参见上述表1,为本申请实施例提供的一种业务表示意表。上表中还包括服务ID、设备ID以及连接设备ID,未示意出。业务表中协同业务个数不是仅指代3个,3个仅为示意性表示,在实际应用时,可以根据设备支持的协同业务个数增加或删除。在实际应用中,服务ID、设备ID和连接设备ID可以根据预定规则进行配置。其中,服务ID表示主设备ID,设备ID表示可连接设备ID。连接设备ID为正在进行协同业务的可连接设备,其对端设备ID。当正在进行协同业务的可连接设备,其对端设备有多个,则连接设备ID用“;”分割每个对端设备ID。

在上述表1中,服务名称为协同业务的名称,比如键鼠协同、通话协同等。管理级别包括第一级别(0级),第二级别(1级),和第三级别(2级)。其中,0级表示该协同业务可以进行调度、显示和记录。1级表示该协同业务不可以调度,但可以进行显示和记录,比如通话协同。2级表示该协同业务仅记录,不可以进行调度和显示,比如分享协同。

连接状态,即对应协同业务的运行状态,包括“未连接”、“运行中”、和“连接中”。“未连接”表示该协同业务没有任何连接的状态,“运行中”表示该协同业务在连接中的状态,“连接中”表示该协同业务在连接过程中的状态。

连接模式,对应于协同业务的业务连接模式,目前只针对多屏协同业务使用。业务连接模式包括屏幕镜像、屏幕共享和屏幕扩展。

连接设备数量,表示正在进行协同业务的可连接设备,其对端设备的数量。有可能为1个,也又可能为多个。

连接类型,对应于协同业务的物理连接类型,用于表示该协同业务当前正在连接的物理通路,目的是进行冲突处理时,在连接成功后动态写入。连接类型包括WIFI,P2P、WLAN、BR、或USB,根据需要可以自行调整连接类型。

连接依赖,用于表示协同业务当前使用的逻辑通道,包括onehop、通信通道、以及其他第三方通道中的一种。根据需要,可以自行设定连接依赖。

是否有控制中心发起,用于表示该协同业务是否能支持接受来自控制中心的调度,即是否有本机设备控制中心发起启动该协同业务和停止该协同业务的指令。

示例性说明:本机设备为手机101,手机的特性状态,包括投屏、多屏协同中屏幕共享和屏幕镜像,还包括键鼠协同、通知协同、通话协同和续接协同,等多个协同业务的特性状态。具体包括协同业务的协同业务的开关状态,运行状态,正在进行协同业务的对端设备ID列表,服务包名,业务连接模式(仅限多屏协同业务),可连接设备类型,物理连接类型,和业务连接类型。根据上述手机的特性状态,更新业务表,具体如下所示:

表2:业务表二

参见表2,为本申请实施例提供的根据手机特性状态,更新获得的业务表。在表2中,未示意出具体设备ID和连接设备ID。服务ID均为S(表示本机设备手机101的服务标识)。手机101的特性状态包括:投屏,管理级别为1级,服务包名为com.AA.tou。连接设备数量为0,支持对端设备类型为智慧屏,由控制中心发起。

多屏协同,管理级别为0级,连接状态为未连接,连接模式为屏幕共享和屏幕镜像,连接设备数据为0,连接类型为onehop,连接依赖为wifi和p2p。多屏协同支持的对端类型为笔记本电脑pc和平板pad,可以有控制中心发起,对应的服务包名为com.AA.sui。也可以为其他预设格式的服务包名,用于表示具体协同业务。

键鼠协同,管理级别为1级,连接状态为未连接,连接设备数量为0,连接类型为onehop,连接依赖为wifi和p2p。多屏协同支持的对端类型为pc。可以有控制中心发起,对应的服务包名为com.AA.jian。也可以为其他预设格式的服务包名,用于表示具体协同业务。

通知协同、通话协同,管理级别为1级,连接状态为未连接,连接设备数量为0,连接类型为通信通道,连接依赖为wifi和p2p。多屏协同支持的对端类型为pc和pad。可以有控制中心发起,对应的服务包名为com.AA.tong和com.AA.hua。也可以为其他预设格式的服务包名,用于表示具体协同业务。

续接协同,管理级别为0级,连接状态为未连接,连接设备数量为0,连接类型为通信通道,连接依赖为wifi和p2p。多屏协同支持的对端类型为pc和pad。可以有控制中心发起,对应的服务包名为com.AA.tong和com.AA.hua。也可以为其他预设格式的服务包名,用于表示具体协同业务。

在本申请实施例中,通知协同、通话协同以及续接协同,属于自动协同业务,需要用户开启功能状态下,满足触发规则时自动触发。下文协同研究仅从手动协同业务进行举例分析。但对于自动协同业务同样使用,但后续不再介绍和分析。

S19:业务状态管理模块向设备控制模块发送通知设备控制指令。

当业务状态管理模块更新完业务表后,向设备控制模块发送通知设备控制指令,以使设备控制模块向设备服务管理器发送查询周边在线设备指令。

S110:设备控制模块向设备服务管理器发送查询周边在线设备指令。

设备控制模块生成查询周边在线设备指令,并将其发送给设备服务管理器,以获取所有周边在线设备的设备状态。其中,周边在线设备为已经登录协同控制中心,且登录账号与本机设备相同的所有周边设备。

S111:设备服务管理器向设备控制模块返回所有在线设备的设备状态。

设备服务管理器接收设备控制模块发送的查询周边在线设备指令,然后,向设备控制模块返回所有周边在线设备的设备状态,即,周边在线设备的初始设备状态。

其中,周边在线设备的设备状态包括周边在线设备的设备标识、设备名称、上下线状态、正在进行协同业务ID、设备类型、设备展开状态、与本机设备的距离等。

设备标识为设备在设备服务管理器中的唯一标识,比如设备ID。

设备名称为设备在设备服务管理器中的命名,比如pad、magic book等。

上下线状态为周边设备是否运行登录了与本机设备同账号的协同控制中心。如果是,表示上线状态,否则为下线状态。

正在进行协同业务ID,用于周边设备是否正在进行其他协同业务,进行其他协同业务的对端设备的设备标识。

设备展开状态,仅存在折叠屏中,对于其他设备,设备类型展开状态不写入。设备展开状态包括不展开和展开两种。

S112:设备控制模块更新设备表。

设备控制模块根据接收的所有周边在线设备的设备状态,更新设备表。其中,设备表与周边在线设备的设备状态一一对应。且设备表为预先设置的内存表,当协同控制中心关闭后,设备表将被销毁。示例性说明:

表3设备表一

参见上述表3,为本申请实施例提供的一种设备表示意表。上表中,周边在线设备的个数不是仅指代2个,2个仅为示意性表示,在实际应用时,可以根据周边在线设备个数增加或删除。其中,Device ID与设备ID一一对应。是否近场发现根据周边设备与本机设备的距离确定,当距离在预设范围内,属于近场发现,否则不属于近场发现。在本申请实施例中,不属于近场发现的周边设备不写入表3中。MAC地址为设备的硬件标识符,包括WiFi mac地址、蓝牙mac地址或其他硬件标识符。本领域技术人员,根据需要可以自行调整。在线状态为周边设备中登录与本机设备相同的控制中心账号的设备。对于不在线状态设备,不写入表3。

示例性说明:以手机为例,设备控制模块从设备服务管理器获取四个周边在线设备,分别为pad102,pad103,Magic Book104和Smart TV105,及其四个周边在线设备的设备状态。根据获取的四个周边在线设备的设备状态,更新设备表。具体如下:

表4手机设备表二

参见表4,为本申请实施例提供的一种以手机为主设备的设备表示意表。其中Device ID中A、B、C、D为根据预设规则获取的Pad102,pad103、Magic Book104,Smart TV105的设备ID。上述四台设备均为在线状态,均属于近场返现,均无正在进行业务ID。其中pad102设备的设备名称为H pad,设备类型为pad,MAC地址为A-wifi地址。pad103的设备名称为H pad,设备类型为pad,MAC地址为B-wifi地址。Magic Book104的设备名称为H MagicBook,设备类型为pc,MAC地址为C-wifi地址。Smart TV105的设备名称为H Smart TV,设备类型为智慧屏,MAC地址为D-wifi地址。

S113:设备控制模块向业务状态管理模块发送通知业务注册指令。

设备控制模块更新完成设备表后,向业务状态管理模块发送通知业务注册指令,以使业务状态管理模块查询周边在线设备的特性状态。

S114:业务状态管理模块向设备服务管理器发送查询周边在线设备的特性状态指令,和发送注册周边在线设备支持特性状态变更监听指令。

业务状态管理模块接收设备控制模块,发送的通知业务注册指令后,生成查询周边在线设备的特性状态指令,和注册周边在线设备支持特性状态变更监听指令。

其中,业务状态管理模块将查询周边在线设备的特性状态指令,发送给设备服务管理器,以从设备服务管理器获取周边在线设备的特性状态。

业务状态管理模块将注册周边在线设备支持特性状态变更监听指令,发送给设备服务管理器,以使设备服务管理注册周边在线设备支持特性状态变更监听,用于监听周边在显设备支持特性状态变更。

S115:设备服务管理器向业务状态管理模块返回周边在线设备的特性状态。

设备服务管理器接收到业务状态管理模块发送的,查询周边在线设备的特性状态指令后,将周边在线设备的特性状态返回给业务状态管理模块。其中,周边在线设备的特性状态,为周边在线设备的初始特性状态。

周边在线设备的特性状态,为周边在线设备能够支持的所有协同业务的状态,包括:协同业务的开关状态,运行状态,正在进行协同业务的对端设备ID列表,服务包名,业务连接模式(仅限多屏协同业务),可连接设备类型,和物理连接类型等。具体内容与S17相同,这里不再赘述。

S116:业务状态管理模块更新业务表。

业务状态管理模块,根据接收到的周边在线设备的特性状态,更新业务表。示例性说明:对于根据手机的特性状态,获取的业务表二。当手机存在四个周边在线设备,其中,四个设备的设备状态如表4所示。根据S114获取的四个周边在线设备的特性状态,更新业务表二,具体如下。

表5业务表三

参见表5,为本申请实施例提供的业务表更新结果示意表。在上述业务表三中,由于篇幅限制,对于表2中业务表二已经示意出了本机设备手机101支持的协同业务,通过“……”省略了手机101中除投屏协同业务之外的其他特性状态。Pad102的特性状态与pad103的特性状态相同,本申请实施例列出了pad102支持的特性状态,对于pad103,仅列出了投屏协同业务的状态,对于其他协同业务的特性状态用“……”省略。列出了MagicBook104和Smart TV105的特性状态。设备ID以及连接设备ID,也未在表5示意出。表中的服务ID、服务包名、设备ID、服务名称、和连接状态等内容,根据业务状态管理模块获取的设备的特性状态,动态写入调整。

上述仅为示例性表示各设备支持的协同业务及特性状态,在实际应用过程中,根据需要,本领域技术人员可以动态调整。

S117:业务状态管理模块向Control View发送进入显示界面指令。

业务状态管理模块更新业务表后,向Control View发送进行显示界面指令,以使Control View进入协同显示界面。

S118:Control View进入协同显示界面。

在本申请实施例中,Control View进行协同显示界面,可以认为是打开协同显示界面的瞬时动作,此时还未进行设备状态以及设备的特性状态呈现。

S11:9:Control View从设备控制模块,获取设备状态。

在本申请实施例中,Control View从设备控制模块更新的设备表中获取设备状态。

S120:Control View从业务状态管理模块,获取所有设备的特性状态。

在本申请实施例中,Control View从业务状态管理模块获取本机设备与所有周边在线设备的特性状态,即业务状态管理模块的业务表中获取设备的特性状态。

S121:Control View更新协同显示界面。

Control View根据从设备表获取的设备状态,以及从业务表获取的业务状态,更新S116打开的协同显示界面。

示例性:Control View,从设备表二中获取设备状态,并从业务表三中获取本机设备和所有周边在线设备的属性状态,可以得到如图1A(a)所示的包含协同控制中心的界面,或得到如图1A(b)所示的“智慧互联”协同显示界面。

启动阶段,协同控制中心通过建立设备表和业务表,将设备的设备状态写入设备,将所有设备的特性状态写入业务表。协同显示界面从设备表和业务表中获取设备状态和特性状态,进行界面显示。如此,当设备状态或属性状态发生变化时,写入设备表和业务表的信息发生改变,从而改变协同显示界面。实现一个协同显示界面对多个设备进行统一管理。

S2:设备状态变更阶段

设备状态变更,是指当周边设备存在设备上下线变化时,引起的设备状态发生变化的情况。根据设备状态变更,更新协同显示界面的具体实现,参见图8。图8为本申请实施例提供的一种设备状态变更阶段实现时序图。具体包括以下步骤:

S21;设备服务管理器向设备控制模块发送设备上下线变更设备的设备状态。

当设备服务管理器注册的设备上下线监听器,监听到周边设备上下线变化时,设备服务管理器同步周边设备上下线设备的设备状态,并将设备上下线变更设备的设备状态,发送给设备控制模块。其中,设备服务管理器同步周边设备上下线设备的设备状态,即为更新初始设备状态后的设备状态。

在本申请实施例中,设备下线变更体现:周边在线设备退出协同控制中心账号,或周边在线设备远离本机设备。设备上线变更体现:周边设备登录与本机设备同账号的协同控制中心,或非周边在线与本机特性登录同账号的在线设备考虑本机设备。

S22:设备控制模块更新设备表。

设备控制模块,根据接收到的设备上下线变更设备的设备状态,更新设备表。

示例性说明:对于本机设备为手机的设备,在启动阶段,获取的设备表如表4所示。设备服务管理器监听到,pad103由原来的在线状态,变为下线状态。且设备服务管理器监听到新的周边在线设备magic106。此时,设备服务管理器同步周边设备上下线设备的设备状态,将变更设备的设备状态,发送给设备控制模块,更新表4,具体结果如下:

表6手机设备表三

参见表6所示,为更新表4后的手机设备表示意表三。上述更新后的表中,pad103的设备状态未写入。Pad102,Magic Book104和Smart TV105的设备状态未改变,增加了magic106的设备状态。其中,Magic106的设备名称为H magic,设备类型为手机,MAC地址为E-wifi地址。

S23:Control View根据设备表,更新协同显示界面。

Control View从步骤S23更新得到的设备表中获取设备状态,更新协同显示界面。

示例性说明:对于表4的手机设备表2对应的协同显示界面为图1B所示。当pad103下线,且Magic106上线,且为近场设备状态时,Control View从表6的手机设备表三中获取主设备为手机的设备状态,更新协同显示界面,得到如图9所示的协同显示界面。图9所示,为本申请实施例提供的一种设备状态变更后的协同显示界面示意图。相对于图1A(b),协同显示界面增加了magic106,减少了pad103。

在一种可能的实现方式中,当设备状态变更时,本机设备手机101的显示位置,以及周边在线设备pad102、Magic Book104,和SmartTV105的显示位置均未改变。增加的magic106设备的位置根据与本机设备的距离,以及预设规则,比如均匀分布等确定。

本申请实施例,确定设备显示位置局限于上述方式,还可以采用其他方式确定,这里不对设备显示位置进行限定。

S24:设备控制模块向业务状态管理模块发送通知业务注册指令。

S25:业务状态管理模块刷新业务表。

业务状态管理模块,接收设备控制模块发送的通知业务注册指令,刷新业务表。

示例性说明:上述示例中,当监听到pad103下线,且Magic106上线时,设备控制模块发送通知业务注册指令给业务状态管理模块,业务状态管理模块刷新业务表。即将与pad103设备相关的特性状态删除,具体结果如下:

表7业务表四

参见表7,为本申请实施例提供的一种刷新业务表的结果示意表。在业务表四中,删除了与pad103设备相关的全部特性状态。其他设备的特性状态未改变,增加了magic106的特性状态,包括投屏、多屏协同、和键鼠协同等协同业务,如表7所示,这里不赘述。对于本机设备手机101的特性状态,仅显示投屏业务及相关内容,其他用“……”表示参见业务表二内容。Pad102的特性状态,仅显示投屏业务及相关内容,其他用“……”表示见业务表三内容。Magic Book104的特性状态,仅显示投屏业务及相关内容,其他用“……”表示见业务表三内容。由于篇幅限制,设备ID以及连接设备ID,也未示意出。

S26:业务状态管理模块向设备服务管理器,发送在线设备特性状态变更监听器刷新指令。

业务状态管理模块生成在线设备特性状态变更监听器刷新指令,并向设备服务管理器,发送在线设备特性状态变更监听器刷新指令,以使设备服务管理器刷新在线设备特性状态变更监听器。

比如,上述实施例中删除pad103,增加Magic106。业务状态管理模块向设备服务管理器,发送在线设备特性状态变更监听器刷新指令,设备服务管理器刷新在线设备特性状态变更监听器,即删除pad3对应的特性状态变更监听器,增加Magic106对应的特性状态变更监听器。

S27:设备服务管理器同步在线设备特性状态变更信息。

在本申请实施例中,当设备特性状态变更时,比如周边在线设备与其他设备进行协同业务的业务建联等操作,或主设备与其他设备进行协同业务的业务建联等,刷新后的在线设备特性状态变更监听器监听设备特性状态变更,以同步特性状态变更信息。

S28:设备服务管理器向业务状态管理模块返回在线设备特性状态变更信息。

设备服务管理器同步在线设备特性状态变更信息,并将该变更信息返回给业务状态管理模块,使业务状态管理模块刷新业务表。其中,设备服务管理器同步在线设备特性状态变更信息,即为更新的周边在线设备初始特性状态。

S29:业务状态管理模块更新业务表。

业务状态管理模块,接收设备服务管理器返回的在线设备特性状态变更信息,并利用该变更信息更新业务表。具体更新方式与步骤S25相同,这里不再赘述。

S210:业务状态管理模块向Control View发送更新协同显示界面指令,使ControlView更新协同显示界面。

业务状态管理模块更新完业务表后,向Control View发送更新协同显示界面指令。

Control View接收业务状态管理模块发送的更新协同显示界面指令后,从业务状态管理模块所更新的业务表中,获取在线设备的特性状态。Control View根据获取的在线设备的特性状态,更新协同显示界面。

在本申请实施例中,设备服务管理器为云端设备,当设备服务管理器不可用,比如主设备不连网,可以用以下步骤代替S27~S210。

S211:控制中心SDK获取特性状态变更。

控制中心SDK,从业务表中获取特性状态变更,并将在线设备特性状态变更信息,通知控制中心,具体通知控制中心的业务状态管理模块,以广播形式进行信息传递。

S212:控制中心SDK向业务状态管理模块发送通知特性状态变更。

S213:业务状态管理模块向通信模块广播通知周边设备。

业务状态管理模块接收从控制中心SDK发送的通知特性状态变更,并将通知特性状态变更,通过广播方式通知周边设备。具体的,业务状态管理模块向通信模块,广播通知周边设备指令。所述指令包括特性状态变更。

S214:通信模块向通信管理器发送广播。

通信模块,将接收的业务状态管理模块发送的通知周边设备指令,以广播形式发送给通信管理器。

S215:通信模块从通信管理器接收其他设备的特性状态变更广播。

当设备特性状态变更时,比如周边在线设备与其他设备进行协同业务的业务建联等操作,或主设备与其他设备进行协同业务的业务建联等,通信管理器将其他设备的特性状态变更,通过广播方式发送至通信模块。

S216:通信模块向业务状态管理模块发送广播。

通信模块将接收的其他设备的特性状态变更,通过广播形式发送给业务状态管理模块。

S217:业务状态管理模块更新业务表。

业务状态管理模块,接收通信模块发送的其他设备的特性状态变更,更新业务表。具体更新方式与步骤S25相同,以及步骤S29相同,这里不再赘述。

S218:业务状态管理模块向Control View发送更新协同显示界面指令,使ControlView更新协同显示界面。

业务状态管理模块更新完业务表后,向Control View发送更新协同显示界面指令。

Control View接收业务状态管理模块发送的更新协同显示界面指令后,从业务状态管理模块所更新的业务表中,获取在线设备的特性状态。Control View根据获取的在线设备的特性状态,更新协同显示界面。

在本申请实施例中,通过通信模块向在线设备广播的方式获取其他设备的状态变更通知,更新业务表,可以弥补仅通过设备服务管理模块变更在线设备业务状态的不可用条件。使得在主设备不连网条件下,也可以进行正常拖拽进行多设备协同。

在本申请实施例中,注册设备上下线监听器监听设备上下线变化,更新设备表和业务表,刷新在线设备特性状态变更监听器,以实现当设备发生上下线变化时,实时调整设备表和业务表,以及特性状态变更监听器,从而使协同显示界面精确显示和对特性状态变更的准确监听。

值得注意的是,设备的第一设备状态可以为第一电子设备的初始设备状态和周边在线设备的初始设备状态;设备的第一特性状态可以为第一电子设备的初始特性状态和周边在线设备的初始特性状态。

设备的第一设备状态还可以为更新后的初始设备状态;第一特性状态还可以为更新后的初始特性状态。

S3:业务建联阶段

用户执行界面操作,即用户在Control View,通过拖拽(也可以是其他预设方式),将从设备拖拽至主设备附近,以使主设备和从设备进行协同业务的业务建联操作,也即执行主设备和从设备的建立连接操作。

下面进行具体分析。

参见图10,为本申请实施例提供的一种业务建联的方法流程图。具体包括以下步骤:

S301:读取主设备和周边在线设备的特性状态。

业务状态管理模块首先从设备服务管理器中读取主设备的特性状态,和周边在线设备的特性状态。具体特性状态如上文所述的协同业务的开关状态,运行状态,正在进行协同业务的对端设备ID列表,服务包名,业务连接模式(仅限多屏协同业务),可连接设备类型,和物理连接类型等,这里不再赘述。

S302:进行主设备和从设备交互,建立设备组合。

用户在协同显示界面通过拖拽从设备等方式,实现主设备和从设备交互,建立主设备和从设备的设备组合。

S303:判断设备组合是否存在业务冲突。若是,执行S305,若否,执行S304。

业务冲突是指主设备有正在进行的协同业务,或从设备有正在进行的协同业务。根据特性状态是否存在正在进行协同业务的可连接设备,判断是否存在业务冲突。即连接设备ID若存在,表示设备组合存在业务冲突。否则不存在业务冲突。

S304:判断正在进行的协同业务是否均能被调度。若均可被调度,执行S305。否则,执行S315。

当设备组合中某一设备正在进行的协同业务不能被协同控制中心调度,表示业务冲突判断错误,向用户进行提示。当设备组合中所有设备正在进行的协同业务均能被协同控制中心调度,业务冲突判断存在,执行业务冲突操作。示例性说明:

表8业务调度示意表

参见表8,为本申请实施例提供的一种业务调度示意表。其中左侧一列中PC、pad、直板机、折叠屏(展开)、折叠屏(折叠)、和智慧屏为主设备。如上表所述,主设备为pc,可与pad建立多屏协同,与手机(直板机、折叠屏(展开)、和折叠屏(折叠))建立多屏协同业务,与智慧屏建立协同业务等。这里不再赘述。N/A表示当前业务不能被协同控制中心调度。示例性说明:若pc正在与另一个pc进行业务,但该业务不能被协同控制中心调度,表示为N/A。此时业务冲突判断错误,执行向用户进行提示操作。当PC与pad正在进行的业务为多屏协同业务,该业务能够被协同控制中心调度。执行S305操作。

S305:判断设备组合是否存在业务交集,若是,执行S306。否则执行S315。

在本申请实施例,当正在进行的协同业务均能被协同控制中心调度,或者主设备和从设备不存在正在进行的协同业务时,判断主设备所支持的协同业务,与从设备所支持的协同业务,是否存在相同的业务,这一相同业务即为业务交集。

示例性说明:手机101支持的协同业务为多屏协同、键鼠协同、投屏等协同业务。Pad103支持的协同业务为多屏协同、键鼠协同和投屏等协同业务。即手机101与pad103存在业务交集,为多屏协同、键鼠协同和投屏等。

S306:判断设备组合是否匹配。若是,执行S307。否则执行S315。

当设备组合存在业务交集时,判断业务交集中的协同业务是否为设备组合所支持的业务。对于主设备所支持的全部协同业务中,每个协同业务都存在对应的对端设备类型。根据业务交集中的协同业务的对端设备类型是否与从设备类型一致,判断业务交集中的协同业务是否为设备组合所支持的业务。

示例性说明:手机101与pad103的业务交集为多屏协同、投屏和键鼠协同。其中,手机101的多屏协同支持对端设备类型为pc和pad,键鼠协同支持对端设备类型pc,投屏支持对端设备类型为智慧屏。即业务交集中仅有多屏协同与设备组合匹配。

S307:得到可用的待触发业务列表。

其中,可用的待触发业务满足为属于设备组合的业务交集,且与设备组合匹配的协同业务。将可用的待触发业务通过列表形式存储。在一种可能的实现方式中,可用的待触发业务列表为{协同业务1,协同业务2,协同业务3,……}。

需要注意的是,可用的待触发业务列表也可以为其他列表形式,比如Excel表格形式。本申请实施例不对可用的待触发业务列表限定。

示例性说明:手机101与pad103的设备组合,确定的可用的待触发业务列表为{多屏协同}。

S308:读取设备组合上次业务记录。

当可用的待触发业务仅有一个时,设备组合直接显示该触发业务。

当可用的待触发业务有多个时,需要先读取设备组合上次的业务记录。其中,DataController存储了多次业务建联的结果。业务冲突管理模块从Data Controller获取多次业务建联结果,并根据主设备和从设备的设备组合,查找最近一次设备组合业务建联记录。

S309:无记录,则从预设业务优先级读取默认优先级,依照默认优先级,触发业务。有记录,依照上次记录触发业务。

当Data Controller已经记录的业务建联结果中,存在主设备和从设备的设备组合,利用最近一次的业务建联结果,建联本次协同业务。

当Data Controller已经记录的业务建联结果中,不存在主设备和从设备的设备组合,即无记录,业务调度管理模块从预设的业务优先级中读取默认优先级。选择最高优先级的协同业务作为本次触发业务。

预设业务优先级为内嵌于协同控制中心的可调度业务表。示例性说明:如表8所述,pad和PC组成的设备组合支持的协同业务为多屏协同和键鼠协同,可以预设多屏协同优于键鼠协同。

S310:判断设备组合是否存在互斥业务。若不存在互斥业务,执行S315。否则执行S311。

互斥业务是指主设备运行中的业务,或从设备运行中的业务,与当前的待触发业务不能够共存。当主设备运行中的业务,和从设备运行中的业务,与当前的待触发业务能够共存时,表示不存在互斥业务。

在当前所述实施例中,主设备与不同设备组成的设备组合,可进行业务均为互斥业务。示例性说明:如表8所示,pc与pad可进行的协同业务,和pc与直板机可进行的多屏协同业务互斥,和pc与折叠屏可进行的多屏协同业务互斥,和pc与智慧屏可进行的投屏业务互斥。Pad与pc可进行的协同业务,与pad和直板机可进行的多屏协同业务,与pad和折叠屏可进行的多屏协同业务等不共存。即表8中所有设备组合可进行的协同业务与其他设备组合可进行的协同业务均为互斥业务。

S311:询问用户是否终止当前设备业务,启动新业务。

在协同显示界面设置询问对话框,询问用户是否终止当前设备业务和启动新业务提示框。若用户选择终止当前设备的协同业务和启动新业务,则向两端有业务的设备下发停止指令。待完成停止操作后,下发建立新业务的指令。

进一步的,提示框还向用户提供不再提示的选择,如果用户选择不再提示,协同显示界面后续不再向用户弹出询问对话框。否则,后续对应的场景继续向用户进行操作询问。

S312:获取用户确认结果。

用户在协同显示界面的询问对话框中,确认选择结果。比如,确认终止当前设备的协同业务和启动新业务,或不再提示。协同控制中心,根据用户确认结果执行相关操作。

S313:终止主设备和从设备当前业务。

当用户确认终止当前设备的协同业务和启动新业务时,协同控制中心终止主设备正在进行的协同业务,或从设备正在进行的协同业务。

S314:下发调度指令,建立设备组合的新业务。

S315:无业务触发,弹出提示。

为了更好的说明本申请实施例,下面结合本申请实施例提供的图4所示的分层架构,进行详细说明。

参见图11A-11B所示,为本申请实施例提供的一种业务建联阶段实现时序图。具体包括以下步骤:

S31:用户在Control View上执行主设备和从设备业务建联操作。

在本申请实施例中,用户在Control View,通过拖拽(也可以是其他预设方式),将从设备拖拽至主设备附近,执行协同业务的业务建联操作。其他从设备为拖拽设备,主设备为本机设备。

示例性说明:如图12(a)或13(a)所示,用于拖拽pad102至主设备101附近。即用户在Control View执行主设备和从设备的业务建联操作,其中主设备为手机101,从设备为pad102。其中图12,为本申请实施例提供的一种包含业务冲突调度的业务建联过程示意图。图13为本申请实施例提供的一种直接业务建联过程示意图。

S32:Control View向业务调度管理模块发送请求业务调度指令。

当用户在Control view执行主设备和从设备的业务建联操作时,Control View生成请求业务调度指令,并将该请求业务调度指令发送至业务调度管理模块,以执行协同业务调度。其中,请求业务调度指令为包括本机设备ID、设备类型、从设备ID、从设备类型、设备展开状态等设备状态的调度指令。

示例性说明:对于图12(a)或13(a)所示,当用户拖拽pad102,至本机设备手机101时,将pad102和手机101对应的设备ID、设备类型、正在进行业务ID等设备状态信息,写入请求业务调度指令。

S33:业务调度管理模块向业务状态管理模块发送查询设备特性状态指令。

当业务调度管理模块获取Control View发送的请求业务调度指令后,向业务状态管理模块发送查询设备特性状态指令,以从业务状态管理模块获取主设备和从设备的特性状态。查询特性状态指令为包括主设备的设备ID和从设备的设备ID等协同业务特性状态的指令。

示例性说明:图12(a)或13(a)所示,将pad102的设备ID和手机101的设备ID等,写入查询设备特性状态指令。

S34:业务状态管理模块向业务调度管理模块返回设备特性状态。

业务状态管理模块,向业务调度管理模块返回设备特性状态。其中设备特性状态包括主设备对应的特性状态,和从设备对应的特性状态。

示例性说明:对于图12(a)或13(a)所示,返回pad102的特性状态和手机101的特性状态。其中pad102的特性状态如下表所示。具体返回内容包括服务ID、服务名称、管理级别、设备ID、服务包名、连接状态、连接模式、连接设备数量、连接设备ID、连接依赖、和支持对端设备类型等。

对于图12(a)所示,上述特性状态内容与表7中pad102和手机101内容相同,这里不再赘述。图13(a)所示的特性状态内容还涉及到手机101与pad107正在进行的协同业务,及连接设备ID和连接设备数量。

在本申请实施例,不对设备特性状态的返回形式进行限定,比如可以通过表格形式,也可以通过其他自定义list形式,将设备特性状态返回。

S35:业务调度管理模块判断是否存在业务冲突。若不存在执行S36。否则执行S311。

业务调度管理模块,根据主设备,或从设备是否有正在进行的协同业务,判断主设备和从设备组成的设备组合是否存在业务冲突。

示例性说明:对于图12(a),手机101与pad107正在进行协同业务“多屏协同”,当用户拖拽pad102至手机101附近,此时pad102与手机101组成的设备组合存在业务冲突。执行S311操作。对于图13(a),手机101和pad102均没有正在进行协同的业务,即pad102与手机101组成的设备组合不存在业务冲突,执行S36。

S36:业务调度管理模块判断设备组合是否允许建联。若允许建联,执行S37;否则,执行S39。

根据主设备特性状态和从设备特性状态,判断设备组合是否允许建立连接,确定连接模式。具体的,根据主设备的服务名称、支持对端设备类型等,确定设备组合是否有可以进行的协同业务。根据是设备组合是否有可以进行的协同业务,判断设备组合是否允许建联。当设备组合有可以进行的协同业务时,设备组合的连接模式为允许连接,否则设备组合的连接模式为不允许连接。

示例性说明:对于图13(a)所示,根据主设备手机101的服务名称“多屏协同”,和支持对端设备类型“pc和pad”,确定手机101与pad102组成的设备组合有可以进行的协同业务“多屏协同”。由此确定,当前设备组合允许建联。

S37:业务调度管理模块向控制中心SDK发送业务调度指令。

在本申请实施例中,业务调度管理模块向控制中心SDK发送业务调度指令,以通过控制中心SDK,将业务调度指令发送至对应的协同业务,进行业务调度。

S38:控制中心SDK执行业务建联。

控制中心SDK,调度业务调度指令对应的协同业务,执行业务建联操作。在本申请实施例中,关于业务建联存在两种方式。一种是主设备直接执行业务建联。第二种是从设备执行业务建联。当主设备不能直接业务建联时,生成跨设备调度指令。控制中心SDK将跨设备调度指令发送至主设备的业务调度管理模块,并通过主设备的通信服务管理器和从设备的通信服务管理器,将跨设备调度指令发送至从设备的控制中心SDK,执行对应协同业务的调度工作。

示例性说明:如图13(a)所示,手机101与pad102组成的设备组合有可以进行的协同业务“多屏协同”直接执行业务建联。具体建联结果如图13(b)所示,点击如图13(b)的正在进行协同的设备标识(也即图13(b)手指所指示位置),得到图13(c)所示的协同显示界面,即显示正在进行的协同业务“多屏协同”选项,和设备组合所支持的其他协同业务选项,如“断开连接”选项。

其中,图13(b)手指所指示位置,仅为示意性表示,用户也可以点击正在进行协同的设备标识的其他位置,本申请不对点击位置进行具体限定。

S39:业务调度管理模块向Control View发送不允许调度指令。

S310:Control View提示用户无法建联。

在一种可能的实现方式中,协同显示界面显示提示对话框,提示无法建立。示例性说明:如图14所示,为本申请实施例提供的一种无法建立连接提示示意图。“智慧互联”界面显示提示对话框“Pad102不允许与手机101建立协同业务连接”。在另一种可能的实现方式中,控制中心界面直接将从设备弹出。本申请实施例不对无法建立连接的提示进行限定。

S311:业务调度管理模块判断设备组合是否均能被调度。若至少一端不能被调度,执行S312。否则执行S314。

具体判断方法如S304所示,这里不再赘述。此时,设备组合的连接模式为业务冲突模式,即主设备有正在进行的协同业务,或/和从设备有正在进行的协同业务。

示例性说明:如图12(a)所示,手机101正在进行的协同业务“多屏协同”能够被协同控制中心调度。执行S314。

S312:业务调度管理模块向Control View发送正在进行协同业务无法被调度指令。

S313:Control View提示用户无法建联。

具体实现与S310相同,这里不再赘述。

S314:业务调度管理模块判断设备组合是否存在业务交集。若是,执行S317,若否,执行S315。

具体实现与S305相同,这里不再赘述。

示例性说明:如图12(a)所示,手机101支持的协同业务为投屏、多屏协同、键鼠协同。Pad102支持的协同业务为投屏、多屏协同、键鼠协同。手机101和pad102组成的设备组合存在业务交集,且业务交集为投屏、多屏协同、和键鼠协同,执行S317。

S315:业务调度管理模块向Control View发送无业务交集指令。

S316:Control View提示用户无法建联。

具体实现与S310、S313相同,这里不再赘述。

S317:业务调度管理模块判断业务交集中协同业务是否与当前设备组合匹配。若每个协同业务都不匹配,执行S318。否则执行S320。

具体实现与S306相同,这里不再赘述。

示例性说明:如图12(a)所示,手机101与pad102的协同业务交集为投屏、多屏协同、键鼠协同。其中投屏支持的设备组合为手机与智慧屏,与当前设备组合不匹配。多屏协同支持的设备组合为手机与pad,与当前设备组合匹配。键鼠协同支持的设备组合为手机与pc,或pad与pc,与当前设备组合不匹配。业务交集中“多屏协同”业务与当前设备组合匹配,执行S320。

S318:业务调度管理模块向Control View发送不匹配指令。

S319:Control View提示用户无法建联。

具体实现与S310、S313、和S316相同,这里不再赘述。

S320:业务调度管理模块从Data Controller读取设备组合上次业务记录。若有上次业务记录,执行S321。否则执行S322。

具体实现步骤S308相同,这里不再论述。

S321:Data Controller向业务调度管理模块返回上次业务记录。

当Data Controller存在上次业务记录时,向业务调度管理模块返回上次业务记录。并将上次业务记录的协同业务作为本次设备组合的触发业务。

S322:不存在上次记录,选择优先级最高业务。

步骤S321和S322的具体实现与S309相同,这里不再赘述。

S323:业务调度管理模块判断是否存在互斥业务。若是,执行S326,否则,执行S324。

当根据上次业务记录,或者预设优先级确认待触发协同业务后,业务调度管理模块判断待触发业务,与主设备运行中的业务,和从设备运行中的业务是否能够共存。如果共存,表示待触发业务,不存在互斥业务。否则表示待触发业务存在互斥业务,需要进行处理。

其中,判断待触发业务,与主设备运行中的业务,和从设备运行中的业务是否能够共存的依据根据需要预先设定的。在一种可能的实现方式中,如表8所示,各个协同业务之间均为互斥业务,不能共存。

示例性说明:对于图12(a),手机101和pad102确认的待触发业务为“多屏协同”。依照预设规则,其与手机101与pad107正在进行的协同业务“多屏协同”为互斥业务。

S324:业务调度管理模块向控制中心SDK发送请求业务调度指令。

S325:控制中心SDK执行业务建联。

步骤S324与S325具体实现方式,和步骤S37与S38相同,这里不再赘述。

S326:业务调度管理模块判断是否设置不再提示提醒。若是,执行S330,否则执行S327。

协同控制中心内嵌是否提示用户“终止当前业务,启动新业务”的提醒程序。业务调度管理模块根据内嵌是否提示用户的提醒程序,执行相关操作。若内嵌不再提示提醒,业务调度管理模块执行S330。若内嵌提示提醒,执行S327。

S327:业务调度管理模块向Control View发送请求用户确认指令。

S328:Control View判断用户是否确认拒绝。若是执行,S329。否则,执行S338。

示例性说明:对于图12(a),内嵌了提示用户“终止当前业务,启动新业务”的提醒程序。业务调度管理模块向Control View发送请求用户确认指令,并在Control View,即“智慧互联”显示界面,显示“终止手机101与pad107正在进行的协同业务,启动手机101与pad102的新业务”提示框,如图12(b)所示,为本申请实施例提供的一种用户确认提示框示意图。用户点击“拒绝”标识,表示用户拒绝终止当前业务,启动新业务。用户点击“确认”标识,表示用户确认终止当前业务,启动新业务。

此外,本申请实施例提供的提示框中还设置有“不再提示”选项。用户点击“不再提示”选项,后续不再进行提示,默认自动终止当前业务,启动新业务。

S329:Control View向业务调度管理模块发送同意终止业务指令。

用户在Control View交互界面中确认同意终止业务,启动新业务时,ControlView通过控制中心SDK向业务调度管理模块发送同意终止业务指令。

示例性说明:如图12(b)所示,用户点击“确认”标识,即同意终止业务,启动新业务。并将同意终止业务指令发送给业务调度管理模块,以进行终止当前业务,启动新业务操作。

S330:业务调度管理模块判断是否为主设备互斥业务。若是,执行S331。否则,执行S332。

业务调度管理模块确认是主设备互斥,还是从设备互斥。互斥业务包括两种情况,一种是主设备正在进行的业务与待触发业务互斥,另一种是从设备正在进行的业务与待触发业务互斥。不同互斥情况,终止操作不同。主设备互斥,由主设备终止当前正在进行的业务。若为从设备互斥,由从设备终止当前正在进行的业务。

示例性说明:对于上图12(b)所示的实施例,其待触发业务“多屏协同”与主设备正在进行的业务“多屏协同”为互斥业务,即属于主设备互斥,执行S331操作。

S331:业务调度管理模块向控制中心SDK发送同意终止主设备业务指令。

S332:控制中心SDK向业务调度管理模块返回终止结果。

其中,控制中心SDK接收业务调度管理模块发送的同意终止主设备业务指令,执行断开主设备正在进行业务。具体断开方式参见图16,这里不再赘述。并将终止结果返回至业务调度管理模块,以使业务调度管理触发新业务。

示例性说明:控制中心SDK,接收手机101的业务调度管理模块发送的同意终止主设备业务指令,并断开手机101与pad107正在进行的协同业务“多屏协同”。将终止结果返回至业务调度管理模块,触发手机101与pad102的待触发业务“多屏协同”。

S333:业务调度管理模块生成从设备终止指令,并将从设备终止指令传输至从设备控制中心SDK。

当确定互斥为从设备互斥时,业务调度管理模块生成从设备终止指令,并将指令传输至从设备控制中心SDK,以使从设备控制中心SDK执行终止操作。

进一步的,从设备终止指令传输路线为:业务调度管理模块→通信模块→通信管理器→从设备通信管理器→从设备通信模块→从设备业务调度管理模块→从设备控制中心SDK。

S334:从设备控制中心SDK返回终止结果,并将终止结果返回至业务调度管理模块。

从设备控制中心SDK获取终止当前业务的终止结果,并将终止结果返回至业务调度管理模块。

进一步的,返回终止结果的返回路线为:从设备控制中心SDK→从设备业务调度管理模块→从设备通信模块→从设备通信管理器→通信管理器→通信模块→业务调度管理模块。

S335:业务调度管理模块触发新业务。

业务调度管理模块接收从控制中心SDK返回的终止结果,或从设备控制中心SDK返回的终止结果,触发新业务。即主设备协同控制中心触发待触发业务。

示例性说明:如图12(b),手机101的协同控制中心触发手机101与pad102的“多屏协同”业务。

S336:业务调度管理模块向控制中心SDK发送请求业务调度指令。

S337:控制中心SDK进行业务建联。

步骤S336~S337的具体实现与步骤S37~S38相同。这里不再赘述。

示例性说明:如图12(a),具体建联结果如图12(c)所示。手机101与pad107正在进行的协同业务断开,建联了手机101与pad102的协同业务。点击如图12(c)的正在进行协同的设备标识(也即图12(c)手指所指示位置),得到图12(d)所示的协同显示界面,即显示正在进行的协同业务“多屏协同”选项,和设备组合所支持的其他协同业务选项,如“断开连接”选项。

其中,图12(c)手指所指示位置,仅为示意性表示,用户也可以点击正在进行协同的设备标识的其他位置,本申请不对点击位置进行具体限定。

需要注意的是,pad102与手机101正在进行协同业务的pad102的位置,不局限位于手机101的左侧,也可以位于手机101的其他位置,本领域技术人员可以自行调整协同位置。

S338:流程结束。

进一步的,当业务建联完成后,Data Controller从控制中心SDK获取业务建连状态,并将结果进行记录存储。同时,业务建联完成后,特性状态发生变更,将变更结果更新到设备服务管理器。或,当设备服务管理器不可用时,通知业务状态管理器进行广播。参见图15,为本申请实施例提供的一种业务建联后的处理时序图。

S3001:控制中心SDK执行业务建联。

S3002:Data Controller通过控制中心SDK记录建联状态。

Data Controller(数据存储器),用于存储协同业务的业务建联状态,用于下一次相同设备组合执行协同业务时,优先触发本次协同业务。

示例性说明:如图13(d),Data Controller用于记录手机101与pad102的设备组合及本次进行的“多屏协同”。

S3003:控制中心SDK向设备服务管理器发送特性状态更新到设备服务管理器指令。

S3004:设备服务管理器同步特性状态。

设备服务管理器接收控制中心SDK发送的特性状态更新到设备服务管理器指令,同步特性状态。

示例性说明:设备服务管理器同步手机101的特性状态,以及pad102的特性状态。

S3005:设备服务管理器向业务状态管理模块返回特性状态变更信息。

S3006:业务状态管理模块更新业务表。

示例性说明:业务状态管理模块根据接收的手机101的特性状态,以及pad102的特性状态的特性状态,更新业务表7。具体更新结果如下:

表9业务表五

参见表9,为本申请实施例提供的一种更新后的业务表示意表-业务表5。相对于业务表7,对于本机设备手机101的特性状态,多屏协同的连接设备数量,以及连接设备ID发生改变,其他均未改变。Pad102的特性状态,仅显示投屏业务及相关内容,其他用“……”表示见业务表三内容。Magic Book104的特性状态,仅显示投屏业务及相关内容,其他用“……”表示见业务表三内容。Magic106的特性状态,仅显示投屏业务及相关内容,其他用“……”表示见业务表四内容。由于篇幅限制,设备ID以及连接设备ID,也未示意出。

S3007:业务状态管理模块向Control View发送更新协同显示界面指令,使Control View更新协同显示界面。

业务状态管理模块更新完业务表后,向Control View发送更新协同显示界面指令。

Control View接收业务状态管理模块发送的更新协同显示界面指令后,从业务状态管理模块所更新的业务表中,获取在线设备的特性状态。Control View根据获取的在线设备的特性状态,更新协同显示界面。

示例性说明:图12(a)更新后的协同显示界面如上图12(d)所示。

在本申请实施例中,设备服务管理器为云端设备,当设备服务管理器不可用,比如主设备不连网,可以用以下步骤代替S3003~S3007。

S3008:控制中心SDK获取特性状态变更。

S3009:控制中心SDK向业务状态管理模块发送通知特性状态变更。

S3010:业务状态管理模块向通信模块广播通知周边设备。

S3011:通信模块向通信管理器发送广播。

通信模块,将接收的业务状态管理模块发送的通知周边设备指令,以广播形式发送给通信管理器。

S3012:通信模块从通信管理器接收其他设备的特性状态变更广播。

S3013:通信模块向业务状态管理模块发送广播。

S3014:业务状态管理模块更新业务表。

S3015:业务状态管理模块向Control View发送更新协同显示界面指令,使Control View更新协同显示界面。

其中,S3008~S3015的具体实现与步骤S211~S218相同,这里不再论述。

在业务建联阶段,根据主设备和周边在线设备的特性状态,通过是否存在业务冲突,正在进行的协同业务能否被调度,设备组合中主设备和从设备是否存在业务交集,业务交集中协同业务所支持的设备组合是否与当前设备组合匹配,以及是否存在互斥等方式,实现主设备和从设备建联过程存在的业务冲突等情况下的正常业务建联。

S4:业务断开阶段

用户点击控制中心界面的业务断开连接,或者从设备下线,或者控制界面退出账号等,执行主设备和从设备的断开连接操作(也即一种界面操作),即业务断开操作。参见图16,为本申请实施例提供的一种业务断开的实现时序图。

S41:Control View接收用户执行协同业务断开操作。

Control View提供人机交互接口—协同显示界面。用户在协同显示界面上执行协同业务断开操作。

示例性说明:如图17(a)所示,用户在“智慧互联”界面点击“断开连接”标识,即用户执行协同业务断开操作。其中图17为本申请实施例提供的一种业务断开的协同显示界面实现示意图。

S42:Control View向业务调度管理模块发送请求业务调度指令。

Control View根据用户在协同显示界面执行的,协同业务断开操作,向业务调度管理模块发送请求业务调度指令。其中,将断开链接的设备状态和特性状态写入请求业务调度指令。

S43:业务调度管理模块向控制中心SDK发送发起断开指令。

其中,断开指令包括断开链接的设备状态和特性状态信息。

S44:控制中心SDK进行业务断开。

控制中心SDK根据断开指令包括的断开连接的设备状态和特性状态,进行业务断开操作。

示例性说明:如图17(a)所示,断开手机101和pad102的“多屏协同”。

S45:控制中心SDK向设备服务管理器发送特性状态更新到设备服务管理器指令。

S46:设备服务管理器同步特性状态。

S47:设备服务管理器向业务状态管理模块返回特性状态变更信息。

在本申请实施例中,设备的第二特性状态可以为特性状态变更信息变更后的第一特性状态。

S48:业务状态管理模块更新业务表。

示例性说明:业务状态管理模块根据接收的断开连接的pad102的特性状态,更新表9,得到新的业务表。具体结果如表7内容所示,这里不再赘述。

S49:业务状态管理模块向Control View发送更新协同显示界面指令,使ControlView更新协同显示界面。

业务状态管理模块更新完业务表后,向Control View发送更新协同显示界面指令。

Control View接收业务状态管理模块发送的更新协同显示界面指令后,从业务状态管理模块所更新的业务表中,获取在线设备的特性状态。Control View根据获取的在线设备的特性状态,更新协同显示界面。

示例性说明:对于如图17(a)所示,点击“断开连接”选项,得到如图17(b)所示的示意图,手机101与pad102断开连接。

在一种可能的实现方式中,当设备服务管理器不可用时,执行S3008~S3015,更新协同显示界面。

如此,通过上述方案,实现协同业务的断开操作。

S5:业务模块切换

业务模式是指将主设备和从设备组成的设备组合,从第一业务切换至第二业务(也即界面操作的一种)。在本申请实施例中,当设备组合支持进行多个协同业务时,可以在协同显示界面中直接进行模式切换,实现从第一业务切换至第二业务。参见图18,为本申请实施例提供的业务模式切换的实现时序图。

为了更好的说明,下面结合如图19,一种pad与pc正在进行协同业务示意图进行举例分析。其中,图19为pad201与pc205组成的设备组合正在进行的协同业务为屏幕镜像,可以支持的协同业务还包括多屏协同中屏幕扩展、屏幕共享和键鼠协同。下面结合图19对业务模式切换进行详细介绍。此外,图19还显示,可以与主设备pad201可连接的其他设备及设备标识,比如Smart TV204,Magic202,以及pad203。其中,协同显示界面为“超级终端”界面。

S51:Control View接收用户执行业务切换操作。

当用户在图19的“超级终端”显示界面中,点击“屏幕扩展”标识,如图20(a)所示,为用户执行业务切换操作示意图。此时,Control View接收用户执行业务切换操作。其中,图20为本申请实施例提供的一种同业务切换操作的过程示意图。

S52:Control View判断用户执行业务切换是否为同业务切换。若是,执行S53,否则执行S512。

在本申请实施例中,业务模式切换包括两种,一种是同业务模式切换,比如多屏协同业务包括三种模式,分别为镜像、扩展和共享,由镜像模式切换至共享模式,属于多屏协同业务的模式切换。另一种是跨业务模式切换,比如多屏协同业务切换至键鼠协同业务。比如20(a)所示,当“屏幕镜像”切换至“屏幕扩展”时,由于屏幕镜像和屏幕扩展均属于多屏协同业务,即属于同业务模式切换。

S53:Control View向业务调度管理模块发送请求同业务调度指令。

当用户在Control View界面执行同业务切换操作时,Control View生成请求同业务调度指令,并将生成的包括“屏幕镜像切换为屏幕扩展”的同业务调度指令,发送给业务调度管理模块。

S54:业务调度管理模块向控制中心SDK发送同业务调度指令。

业务调度管理模块接收Control View发送的请求同业务调度指令,生成同业务调度指令,并将其发送给控制中心SDK。以使控制中心SDK,根据同业务调度指令,访问具体协同业务。其中,同业务调度指令为包括“屏幕镜像切换为屏幕扩展”的指令。

S55:控制中心SDK进行同业务切换。

控制中心SDK,调度同业务调度指令对应的协同业务,执行同业务切换操作。关于同业务切换,存在两种方式。一种是主设备直接执行同业务切换。第二种是从设备执行业务切换。当主设备不能直接同业务切换时,生成跨设备调度指令。控制中心SDK将跨设备调度指令发送至主设备的业务调度管理模块,并通过主设备的通信服务管理器和从设备的通信服务管理器,将跨设备调度指令发送至从设备的控制中心SDK,执行对应同业务的调度工作。

对于图20(a)所示,控制中心SDK执行同业务切换,将屏幕镜像切换至屏幕扩展,属于主设备直接执行同业务切换,直接执行将屏幕镜像切换至屏幕扩展。在一种可能的实现方式中,同业务切换模式可以为断开第一业务,建联第二业务。即断开pad201和pc205的“屏幕镜像”业务,建联pad201和pc205的“屏幕扩展”业务。

S56:Data Controller记录建联状态。

Data Controller(数据存储器),用于存储协同业务的同业务的业务切换状态,并将切换之后的协同业务建联状态,用于下一次相同设备组合执行协同业务时,优先触发本次协同业务。

S57:控制中心SDK向设备服务管理器发送特性状态变更指令。

S58:设备服务管理器同步特性状态。

设备服务管理器同步pad201和pc205的特性状态。

S59:设备服务管理器向业务状态管理模块返回在线设备特性状态。

S510:业务状态管理模块更新业务表。

S511:业务状态管理模块向Control View发送更新协同显示界面指令,使ControlView更新协同显示界面。

业务状态管理模块更新完业务表后,向Control View发送更新协同显示界面指令。

Control View接收业务状态管理模块发送的更新协同显示界面指令后,从业务状态管理模块所更新的业务表中,获取在线设备的特性状态。Control View根据获取的在线设备的特性状态,更新协同显示界面。

在上述实施例中,具体显示结果如图20(b)所示。此时,pad201和pc205正在进行的协同业务为“屏幕扩展”。

为了更好的说明“屏幕镜像”同业务模式切换至“屏幕扩展”,通过具体协同业务示意图表示。

参见图21,为本申请实施例提供的一种pad201与pc205的屏幕镜像示意图。其中图21(a)表示,pad201的屏幕显示界面,为协同控制中心的协同显示界面“超级终端”。图21(b),为将pad201的屏幕显示界面在pc205的屏幕界面显示。

其中,Pad201的屏幕显示界面在pc205的屏幕显示界面右上部分展示。此外,也可以在右下部分展示,在左侧界面显示。本申请不对pad201的屏幕显示界面在pc205的屏幕显示界面的位置进行显示。此外,本申请也不对pad201屏幕显示界面在pc205的显示大小进行限定。本领域技术人员,根据需要,可以自行调整屏幕界面显示位置和显示大小。

通过上述同业务模式切换,将pad201与pc205正在进行的协同业务“屏幕镜像”,切换为“屏幕扩展”。

参见图22,为本申请实施例提供的一种pad201与pc205的屏幕扩展示意图。其中,图22(a)为pad201的屏幕显示界面,图22(b)为pc205的屏幕显示界面。其中pad201的协同显示界面“超级终端”,一部分在pad201的屏幕显示界面显示,另一部分,在pad205的屏幕显示界面进行显示。

本申请实施例,不对具体显示位置,两部分显示大小,在pad201的显示内容大小,以及在pad205的显示内容大小,不做限定,本领域技术人员,根据需要可以自行调整。

S512:Control View向业务调度管理模块发送请求跨业务调度指令。

对于17所示,当用户点击“键鼠协同”标识,具体点击示意图如图23(a)所示。其中,图23为本申请实施例提供的一种跨业务切换操作的过程示意图。由于键鼠协同与屏幕镜像不属于同一业务,即将“屏幕镜像”切换至“键鼠协同”,属于跨业务切换。Control View向业务调度管理模块发送请求跨业务调度指令。

同其他调度指令相似,需要把切换前后对应的特性状态写入跨业务调度指令。

S513:业务调度管理模块向控制中心SDK发送业务冲突存在指令。

本申请实施例,业务调度管理模块接收请求跨业务调度指令后,对跨业务切换的两个业务进行冲突判断,具体判断方式如S34~S336所示,这里不再论述。

S514:控制中心SDK进行跨业务切换。

在本申请实施例中,控制中心SDK进行跨业务切换,即先断开切换执行的第一业务,再建联切换后要执行的第二业务。

S515:Data Controller记录建联状态。

S516:控制中心SDK向设备服务管理器发送特性状态变更指令。

S517:设备服务管理器同步特性状态。

S518:设备服务管理器向业务状态管理模块返回在线设备特性状态。

S519:业务状态管理模块更新业务表。

S520:业务状态管理模块向Control View发送更新协同显示界面指令,使ControlView更新协同显示界面。

业务状态管理模块更新完业务表后,向Control View发送更新协同显示界面指令。

Control View接收业务状态管理模块发送的更新协同显示界面指令后,从业务状态管理模块所更新的业务表中,获取在线设备的特性状态。Control View根据获取的在线设备的特性状态,更新协同显示界面。

其中,S515~S520的具体实现过程如步骤S3002~S3007所示,这里不再论述。

示例性说明:参见图23(b),为跨业务模式切换结果示意图。此时,pad201与pc205正在进行的协同业务为键鼠协同,其他协同业务为未连接状态。

此外,当设备服务管理器不可用时,可以通过控制中心SDK从业务表获取特性状态变更,利用广播方式,实现协同显示界面显示。具体实现见S3008~S3015,这里不再论述。

本申请实施例中,用户通过在协同显示界面执行界面操作,包括主设备和从设备的建立连接操作,第一业务切换至第二业务的业务模式切换操作,主设备和从设备的断开连接操作。

其中,界面操作为主设备和从设备的建立连接操作时,当连接模式为不允许连接时,将设备的第一设备状态作为第二设备状态,将设备的第一特性状态作为第二特性状态。

连接模式为业务冲突模式,即主设备正在进行协同业务,或/和从设备正在进行协同业务。当连接模式为业务冲突模式时,根据主设备和从设备的预设协同标准,执行主设备和从设备的建立连接操作。

其中,预设协同标准为主设备和从设备存在协同业务交集,且协同业务交集中,至少存在一个协同业务,为主设备和从设备的设备组合支持的业务。

当连接模式为允许连接时,执行主设备和从设备的设备组合的建立连接操作。根据建立连接操作的操作结果,获取设备的第二设备状态(也即第一设备状态)和第二特性状态(设备服务管理器向业务状态管理模块返回的特性状态变更,更新第一特性状态获取的特性状态)。

界面操作为主设备和从设备的第一业务切换至第二业务的业务模式切换操作,根据第一业务的协同业务类型和第二业务的协同业务类型,确定是否为同业务模式,或为跨业务模式。当第一业务的协同业务类型与第二业务的协同业务类型相同时,为同业务模式,将第一业务切换至第二业务,切换之后操作结果,获取设备的第二设备状态(也即第一设备状态)和第二特性状态(设备服务管理器向业务状态管理模块返回的特性状态变更,更新第一特性状态获取的特性状态)。当第一业务的协同业务类型与第二业务的协同业务类型不相同时,为跨业务模式,根据预设协同标准,将第一业务切换至第二业务,切换之后操作结果,获取设备的第二设备状态(也即第一设备状态)和第二特性状态(设备服务管理器向业务状态管理模块返回的特性状态变更,更新第一特性状态获取的特性状态)。

界面操作为主设备和从设备的断开连接操作,即业务断开操作,根据断开连接操作的操作结果,获取设备的第二设备状态(也即第一设备状态)和第二特性状态(设备服务管理器向业务状态管理模块返回的特性状态变更,更新第一特性状态获取的特性状态)。

其中,第一设备状态为界面操作之前的设备状态,第一特性状态为界面操作之前的特性状态,而不仅仅局限于初始特性状态和初始设备状态,局限于更新后的初始特性状态和初始设备状态。还可以为其他特性状态和设备状态。

在本申请实施例中,通过在应用层设置业务层、控制层和能力层,在控制层设置设备管理模块、业务状态管理模块以及业务调度管理模块,通过设备管理模块、业务状态管理模块以及业务调度管理模块的交互、冲突处理等技术手段,实现一个主设备同时管理多个在预先范围内的从设备的协同业务。降低了用户操作复杂度,提高了用户使用体验。

通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

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

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

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

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

以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

技术分类

06120116224042