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

设备数据的处理方法、装置、电子设备以及存储介质

文献发布时间:2023-06-19 13:26:15


设备数据的处理方法、装置、电子设备以及存储介质

技术领域

本申请涉及数据处理技术领域,更具体地,涉及一种设备数据的处理方法、装置、电子设备以及存储介质。

背景技术

随着科学技术的发展,电子设备的使用越来越广泛,功能越来越多,已经成为人们日常生活中的必备之一。电子设备可以通过其设备中心获取并展示其他设备的设备数据。但是,当设备中心不是保活进程时,则无法实时监听到其他设备的设备数据变化,无法实时同步到其他设备变化后的设备数据,从而导致设备数据的更新延迟,用户体验较差。

发明内容

鉴于上述问题,本申请提出了一种设备数据的处理方法、装置、电子设备以及存储介质,以解决上述问题。

第一方面,本申请实施例提供了一种设备数据的处理方法,应用于第一电子设备的设备应用,所述设备应用集成有软件开发工具包,所述软件开发工具包封装有内容提供者,所述方法包括:当所述设备应用关联的第二电子设备的设备数据发生变化时,建立所述软件开发工具包和所述第一电子设备的设备中心的进程间通信;通过所述进程间通信发送数据变化通知至所述设备中心,以指示所述设备中心从所述内容提供者查询所述第二电子设备变化后的设备数据。

第二方面,本申请实施例提供了一种设备数据的处理方法,应用于第一电子设备的设备中心,所述第一电子设备还包括设备应用,所述设备应用集成有软件开发工具包,所述软件开发工具包封装有内容提供者,所述方法包括:接收所述设备应用通过进程间通信发送的数据变化通知,其中,所述进程间通信由所述设备应用在关联的第二电子设备的设备数据发生变化时,针对所述软件开发工具包和所述设备中心建立;响应于所述数据变化通知,从所述内容提供者查询所述第二电子设备变化后的设备数据。

第三方面,本申请实施例提供了一种设备数据的处理装置,应用于第一电子设备的设备应用,所述设备应用集成有软件开发工具包,所述软件开发工具包封装有内容提供者,所述装置包括:进程间通信建立模块,用于当所述设备应用关联的第二电子设备的设备数据发生变化时,建立所述软件开发工具包和所述第一电子设备的设备中心的进程间通信;通知发送模块,用于通过所述进程间通信发送数据变化通知至所述设备中心,以指示所述设备中心从所述内容提供者查询所述第二电子设备变化后的设备数据。

第四方面,本申请实施例提供了一种设备数据的处理装置,应用于第一电子设备的设备中心,所述第一电子设备还包括设备应用,所述设备应用集成有软件开发工具包,所述软件开发工具包封装有内容提供者,所述装置包括:通知接收模块,用于接收所述设备应用通过进程间通信发送的数据变化通知,其中,所述进程间通信由所述设备应用在关联的第二电子设备的设备数据发生变化时,针对所述软件开发工具包和所述设备中心建立;设备数据查询模块,用于响应于所述数据变化通知,从所述内容提供者查询所述第二电子设备变化后的设备数据。

第五方面,本申请实施例提供了一种电子设备,包括存储器和处理器,所述存储器耦接到所述处理器,所述存储器存储指令,当所述指令由所述处理器执行时所述处理器执行上述方法。

第六方面,本申请实施例提供了一种计算机可读取存储介质,所述计算机可读取存储介质中存储有程序代码,所述程序代码可被处理器调用执行上述方法。

本申请实施例提供的设备数据的处理方法、装置、电子设备以及存储介质,当第一电子设备的设备应用关联的第二电子设备的设备数据发生变化时,设备应用建立所集成的软件开发工具包和第一电子设备的设备中心的进程间通信,设备应用通过该进程间通信发送数据变化通知至设备中心,设备中心从软件开发工具包所封装的内容提供者查询第二电子设备变化后的设备数据,从而通过在设备数据发生变化时,建立跨应用间的进程间通信,使得数据互通上可靠性更高,数据传输更及时,系统性能更加稳定。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。

图1示出了本申请实施例用于执行根据本申请实施例的设备数据的处理方法的电子设备的框图;

图2示出了本申请实施例提供的电子设备的操作系统的框图;

图3示出了本申请一实施例提供的设备数据的处理方法的时序图;

图4示出了本申请实施例提供的电子设备的示意图;

图5示出了本申请实施例提供的第一电子设备和第二电子设备通信的示意图;

图6示出了本申请一实施例提供的设备数据的处理方法的流程示意图;

图7示出了本申请一实施例提供的设备数据的处理方法的流程示意图;

图8示出了本申请一实施例提供的设备数据的处理方法的流程示意图;

图9示出了本申请一实施例提供的设备数据的处理方法的流程示意图;

图10示出了本申请一实施例提供的设备数据的处理方法的流程示意图;

图11示出了本申请一实施例提供的设备数据的处理方法的流程示意图;

图12示出了本申请一实施例提供的设备数据的处理装置的模块框图;

图13示出了本申请一实施例提供的设备数据的处理装置的模块框图;

图14示出了本申请实施例的用于保存或者携带实现根据本申请实施例的设备数据的处理方法的程序代码的存储单元。

具体实施方式

为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。

其中,电子设备可以通过其设备中心查询内容提供者提供的其他设备的设备数据,并监听内容提供者的数据变化,同步到其他设备变化后的设备数据。当电子设备的设备中心不是保活进程时(即随时可能被系统杀死)或者当设备中心不在电子设备的后台运行时,只有当设备中心启动后,才能主动查询内容提供者提供的其他设备的设备数据,导致无法实时监听到其他设备的设备数据变化,无法实时同步到其他设备变化后的设备数据。这样,会造成设备数据的更新延迟,且无法承担一些设备联动的相关业务,用户体验较差。

针对上述问题,发明人经过长期的研究发现,并提出了本申请实施例提供的设备数据的处理方法、装置、电子设备以及存储介质,通过在设备数据发生变化时,建立跨应用间的进程间通信,使得数据互通上可靠性更高,数据传输更及时,系统性能更加稳定。其中,具体的设备数据的处理方法在后续的实施例中进行详细的说明。

请参阅图1,其示出了本申请实施例提供的一种电子设备(第一电子设备)100的结构框图。该电子设备100可以是智能手机、平板电脑、电子书等能够运行应用程序的电子设备。本申请中的电子设备100可以包括一个或多个如下部件:处理器110、存储器120、触摸显示屏130以及一个或多个应用程序,其中一个或多个应用程序可以被存储在存储器120中并被配置为由一个或多个处理器110执行,一个或多个程序配置用于执行如前述方法实施例所描述的方法。

其中,处理器110可以包括一个或者多个处理核。处理器110利用各种接口和线路连接整个电子设备100内的各个部分,通过运行或执行存储在存储器120内的指令、程序、代码集或指令集,以及调用存储在存储器120内的数据,执行电子设备100的各种功能和处理数据。可选地,处理器110可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(ProgrammableLogic Array,PLA)中的至少一种硬件形式来实现。处理器110可集成中央处理器(CentralProcessing Unit,CPU)、图形处理器(Graphics Processing Unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责待显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器110中,单独通过一块通信芯片进行实现。

存储器120可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory)。存储器120可用于存储指令、程序、代码、代码集或指令集。存储器120可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于实现至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现下述各个方法实施例的指令等。存储数据区还可以存储电子设备100在使用中所创建的数据(比如电话本、音视频数据、聊天记录数据)等。

触摸显示屏130用于显示由用户输入的信息、提供给用户的信息以及所述电子设备100的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、数字、视频和其任意组合来构成,在一个实例中,该触摸显示屏130可以为液晶显示器(Liquid CrystalDisplay,LCD),也可以为有机发光二极管(Organic Light-Emitting Diode,OLED),在此不做限定。

以电子设备100的操作系统为安卓(Android)系统为例,存储器120中存储的程序和数据如图2所示,存储器120中存储有Linux内核层220、系统运行库层240、应用框架层260和应用层280。Linux内核层220为电子设备100的各种硬件提供了底层的驱动,如显示驱动、音频驱动、摄像头驱动、蓝牙驱动、Wi-Fi驱动、电源管理等。系统运行库层240通过一些C/C++库来为Android系统提供了主要的特性支持。如SQLite库提供了数据库的支持,OpenGL/ES库提供了3D绘图的支持,Webkit库提供了浏览器内核的支持等。在系统运行库层240中还提供有安卓运行时库(Android Runtime),它主要提供了一些核心库,能够允许开发者使用Java语言来编写Android应用。应用框架层260提供了构建应用程序时可能用到的各种API,开发者也可以通过使用这些API来构建自己的应用程序,比如活动管理、窗口管理、视图管理、通知管理、内容提供者、包管理、通话管理、资源管理、定位管理。应用层280中运行有至少一个应用程序,这些应用程序可以是操作系统自带的联系人程序、短信程序、时钟程序、相机应用等;可以是第三方开发者所开发的应用程序,比如即时通信程序、相片美化程序等;也可以是与其他设备关联的应用程序,如健康应用程序。

请参阅图3,图3示出了本申请一实施例提供的设备数据的处理方法的时序图。该方法用于通过在设备数据发生变化时,建立跨应用间的进程间通信,使得数据互通上可靠性更高,数据传输更及时,系统性能更加稳定。在本申请一实施例中,该设备数据的处理方法应用于如图1所示的第一电子设备100,该第一电子设备包括设备应用和设备中心,该设备应用集成有软件开发工具包,软件开发工具包封装有内容提供者。下面将以电子设备(第一电子设备)为例,说明本实施例的具体流程,当然,可以理解的,本实施例所应用的电子设备可以包括智能手机、平板电脑、穿戴式电子设备等,在此不做限定。下面将针对图3所示的流程进行详细的阐述,所述设备数据的处理方法可以包括以下步骤:

步骤S110:当所述设备应用关联的第二电子设备的设备数据发生变化时,所述设备应用建立所述软件开发工具包和所述第一电子设备的设备中心的进程间通信。

请参阅图4,图4示出了本申请实施例提供的电子设备的示意图。如图4所示,电子设备(第一电子设备)可以包括设备应用和设备中心,该设备应用集成有软件开发工具包(software development kit,SDK),软件开发工具包封装有内容提供者。

其中,内容提供者作为安卓(Android)的基本组件之一,是一个标准化的数据管道。设备应用第二电子设备的直接业务方,负责与关联的第二电子设备最直接的交互,例如,该设备应用负责提供设备数据,集成软件开发工具包以及与设备中心进行通信。软件开发工具包为提供给设备应用接入的开发工具包,例如,软件开发工具包集成在设备应用中,提供设备数据的内容提供者,提供进程通信接口与设备中心建立进程间通信(如binder连接)。设备中心为管理所有第二电子设备的平台中心,对接多个设备应用,例如,设备中心作为统一的设备管理中心收集当前接入的所有第二电子设备的设备数据,通过设备管理模块为核心,对外负责提供各个第二电子设备的设备数据。

在本实施例中,由于软件开发工具包内封装有内容提供者,而设备应用集成有软件开发工具包,因此,设备应用只需要接入软件开发工具包调用接口即可。作为一种可实施的方式,设备应用为软件开发工具包提供了第二电子设备的设备数据,由软件开发工具包存储到内容提供者,并对设备中心提供设备数据。

在本申请一实施例中,该设备应用可以安装于该第一电子设备,并与一个或多个第二电子设备关联;或者,该设备应用可以以快应用的形式存在于该第一电子设备,并与一个或多个第二电子设备关联,如图5所示,第二电子设备可以为耳机200,设备应用于耳机200关联。其中,设备应用与第二电子设备关联可以包括:设备应用登录的账号与第二电子设备登录的账号一致,或者,设备应用登录的账号与第二电子设备登录的账号关联。例如,当该第二电子设备为无线耳机时,则该设备应用可以为与该无线耳机关联的无线耳机应用;当该第二电子设备为智能手表或智能手环时,则该设备应用可以为与该智能手表和智能手环关联的健康应用。

在本实施例中,设备应用可以对关联的第二电子设备的设备数据进行监测,当监测到第二电子设备的设备数据发生变化时,则可以建立软件开发工具包与设备中心的进程间通信。其中,设备应用与关联的第二电子设是直接进行通信的,即,设备应用可获取到第二电子设备的设备数据的变化情况,因此,当设备应用获取到第二电子设备的设备数据发生变化时,则可以建立软件开发工具包与设备中心的进程间通信。

作为一种可实施的方式,该设备数据可以包括设备显示数据、设备性能数据、设备配置数据、设备状态数据等,在此不做限定。

在一些实施方式中,当设备应用关联的设备数据发生变化时,则可以通过安卓接口定义语言(android interface definition language,AIDL)建立软件开发工具包和设备中心的binder连接,以构建软件开发工具包和设备中心的进程间通信。

步骤S120:所述设备应用通过所述进程间通信发送数据变化通知至所述设备中心。

在一些实施方式中,设备应用在建立软件开发工具包和设备中心的进程间通信后,则可以通过该进程间通信(如binder连接)发送数据变化通知至设备中心,以使得设备中心可以实时知晓第二电子设备的设备数据的变化情况。基于上述步骤可以知道,本实施例通过建立跨应用的设备数据传递通道,将设备中心的业务置于更外层,由设备应用或连接管理框架进行设备数据的驱动,可以避免即使设备中心业务进程不常驻,也能够给设备中心业务层提供稳定、可靠的设备数据。

作为一种方式,设备应用发送至设备中心的数据变化通知可以仅具有通知的功能。例如,该数据变化通知可以用于通知设备中心该第二电子设备的设备数据发生变化,但不会通知该设备中心所变化的设备数据以及不会通知该设备中心变化后的设备数据。基于此,该设备中心基于该数据变化通知仅可以获知第二电子设备的设备数据发生变化。

作为另一种方式,设备应用发送至设备中心的数据变化通知可以具有通知具体变化信息的功能。例如,该数据变化通知可以用于通知设备中心该第二电子设备的设备数据发生变化,且通知该设备中心所变化的设备数据,甚至通知该设备中心变化后的设备数据。基于此,该设备中心基于该数据变化通知可以获知第二电子设备的设备数据发生变化,以及获知第二电子设备所变化的设备数据,例如,可以获知第二电子设备的电量数据发生变化,获知第二电子设备的连接信息发生变化、获知第二电子设备的控制开关信息发生变化等,在此不做限定。

步骤S130:所述设备中心从所述内容提供者查询所述第二电子设备变化后的设备数据。

在本实施例中,设备中心在接收到设备应用发送的数据变化通知后,可以响应于该设备变化通知,从软件开发工具包封装的内容提供者查询该第二电子设备变化后的设备数据,从而确保对变化后的设备数据的实时获取,以提升设备联动(例如音频联动)的效果。

在一些实施方式中,设备中心的核心进程包括设备管理模块。则设备中心在接收到设备应用发送的数据变化通知后,可以响应于该设备变化通知,通过该设备管理模块从软件开发工具包封装的内容提供者查询该第二电子设备变化后的设备数据。

在本申请一实施例中,假设第一电子设备为智能手机、第二电子设为智能手表,智能手机分别与智能手表和智能耳机连接。智能手机包括与智能手表关联的设备应用,当智能手表接收到来电时,可以确定该智能手表的设备数据发生变化。设备应用可以建立软件开发工具包和智能手机的设备中心的进程间通信,并发送设备数据变化通知给设备中心。设备中心响应于该数据变化通知,从软开开发工具包封装的内容提供者获取到该智能手表的来电数据。基于该来电数据,智能手机可以控制智能耳机连接到智能手表,以通过该智能耳机接听该智能手表的来电。

在本申请另一实施例中,假设第一电子设备为智能手表、第二电子设备为智能手机,智能手表分别与智能手机和智能耳机连接。智能手表包括与智能手机关联的设备应用,当智能手机接收到来电时,可以确定该智能手机的设备数据发生变化。设备应用可以建立软件开发工具包和智能手表的设备中心的进程间通信,并发送设备数据变化通知给设备中心。设备中心响应于该数据变化通知,从软开开发工具包封装的内容提供者获取到该智能手机的来电数据。基于该来电数据,智能手表可以控制智能耳机连接到智能手机,以通过该智能耳机接听该智能手机的来电。

本申请一实施例提供的设备数据的处理方法,当第一电子设备的设备应用关联的第二电子设备的设备数据发生变化时,设备应用建立所集成的软件开发工具包和第一电子设备的设备中心的进程间通信,设备应用通过该进程间通信发送数据变化通知至设备中心,设备中心从软件开发工具包所封装的内容提供者查询第二电子设备变化后的设备数据,从而通过在设备数据发生变化时,建立跨应用间的进程间通信,使得数据互通上可靠性更高,数据传输更及时,系统性能更加稳定。

请参阅图6,图6示出了本申请一实施例提供的设备数据的处理方法的流程示意图。该方法用于通过在设备数据发生变化时,建立跨应用间的进程间通信,使得数据互通上可靠性更高,数据传输更及时,系统性能更加稳定。在本申请一实施例中,该设备数据的处理方法应用于如图12所示的设备数据的处理装置200以及配置有设备数据处理装置300的电子设备(第一电子设备)100(图1)的设备应用,该设备应用集成有软件开发工具包,软件开发工具包封装有内容提供者。下面将针对图6所示的流程进行详细的阐述,所述设备数据的处理方法可以包括以下步骤:

步骤S210:当所述设备应用关联的第二电子设备的设备数据发生变化时,建立所述软件开发工具包和所述第一电子设备的设备中心的进程间通信。

步骤S220:通过所述进程间通信发送数据变化通知至所述设备中心,以指示所述设备中心从所述内容提供者查询所述第二电子设备变化后的设备数据。

其中,步骤S210-步骤S220的具体描述请参阅步骤S110-步骤S130,在此不再赘述。

本申请一实施例提供的设备数据的处理方法,当第一电子设备的设备应用关联的第二电子设备的设备数据发生变化时,建立所集成的软件开发工具包和第一电子设备的设备中心的进程间通信,通过该进程间通信发送数据变化通知至设备中心,以指示设备中心从软件开发工具包所封装的内容提供者查询第二电子设备变化后的设备数据,从而通过在设备数据发生变化时,建立跨应用间的进程间通信,使得数据互通上可靠性更高,数据传输更及时,系统性能更加稳定。

请参阅图7,图7示出了本申请一实施例提供的设备数据的处理方法的流程示意图。该方法应用于上述第一电子设备的设备应用,设备应用集成有软件开发工具包,软件开发工具包封装有内容提供者。下面将针对图7所示的流程进行详细的阐述,所述设备数据的处理方法可以包括以下步骤:

步骤S310:当所述设备应用关联的第二电子设备的设备数据发生变化时,获取所变化的设备数据。

在本实施例中,设备应用可以对关联的第二电子设备的设备数据进行监测,当监测到第二电子设备的设备数据发生变化时,则可以获取所变化的设备数据。其中,由于设备应用和第二电子设备直接进行通信,因此,设备应用可以直接获取第二电子设备所变化的设备数据。

步骤S320:当所述所变化的设备数据包括预设关键数据时,建立所述软件开发工具包和所述设备中心的进程间通信。

在一些实施方式中,第一电子设备的设备应用可以预先设置有关键数据,作为预设关键数据,该预设关键数据用于作为第二电子设备所变化的设备数据的判断依据。因此,在本实施例中,在获取到第二电子设备所变化的设备数据时,可以将所变化的设备数据与预设关键数据进行比较,以判断该所变化的设备数据中是否包括预设关键数据。

其中,当判定该所变化的设备数据中包括预设关键数据时,则可以确定该第二电子设备的设备数据的变化较为重要,需要及时的通知到设备中心进行同步,则可以建立软件开发工具包和设备中心的进程间通信。

其中,当判定该所变化的设备数据中不包括预设关键数据时,则可以确定该第二电子设备的设备数据的变化不重要,不需要及时的通知到设备中心进行同步,则可以不建立软件开发工具包和设备中心的进程间通信,而由设备中心启动后,自动在软件开发工具包封装的内容提供者进行变化后的设备数据的查询和同步。

例如,可以在设备中心启动时,通过其核心进程中的设备管理模块主动查询设备应用集成的软件开发工具包封装的内容提供者,获得第二电子设备变化后的设备数据。作为一种方式,当第一电子设备监听到设备数据显示事件时,可以启动设备中心,通过设备中心的核心进程中的设备管理模块主动查询设备应用集成的软件开发工具包封装的内容提供者,获得第二电子设备变化后的设备数据。其中,设备数据显示事件可以包括第一电子设备的负一屏的与设备应用对应的目标卡片显示事件,或者,第一电子设备的设备中心的与设备应用对应的目标卡片显示事件。即,当第一电子设备的负一屏的与设备应用对应的目标卡片进入展示状态(目标卡片由不可见切换到可见状态),或者,当第一电子设备的设备中心的与设备应用对应的目标卡片进入展示状态(目标卡片由不可见切换到可见状态)时,会主动获取第二电子设备变化后的设备数据,因此,设备中心的UI层可以通过进程间通信,将读取第二电子设备变化后的设备数据的请求发送给设备中心的核心层的设备管理模块,设备管理模块基于该请求查询设备应用集成的软件开发工具包封装的内容提供者,获得第二电子设备变化后的设备数据。

在本申请一实施例中,以预设关键数据包括设备连接数据为例进行说明。当第二电子设备所变化的设备数据为设备连接数据(如第二电子设备与第三设备建立连接、或者,第二电子设备与第三电子设备断开连接)时,则可以确定第二电子设备所变化的设备数据包括预设关键数据,可以建立软件开发工具包和设备中心的进程间通信。当第二电子设备所变化的设备数据不是连接数据(如第二电子设备的显示数据发生变化,例如桌面的显示颜色发生变化、桌面的背景图片发生变化等)时,则可以确定第二电子设备所变化的设备数据不包括预设关键数据,可以不建立软件开发工具包和设备中心的进程间通信。

步骤S330:通过所述进程间通信发送数据变化通知至所述设备中心,以指示所述设备中心从所述内容提供者查询所述第二电子设备变化后的设备数据。

其中,步骤S330的具体描述请参阅步骤S120-步骤S130,在此不再赘述。

本申请一实施例提供的设备数据的处理方法,当设备应用关联的第二电子设备的设备数据发生变化时,获取所变化的设备数据,当所变化的设备数据包括预设关键数据时,建立软件开发工具包和设备中心的进程间通信,通过进程间通信发送数据变化通知至设备中心,以指示设备中心从内容提供者查询第二电子设备变化后的设备数据。相较于图2所示的设备数据的处理方法,本实施例还在关键的设备数据发生变化时,建立跨应用间的进程间通信,使得关键数据互通上可靠性更高,传输更及时,系统性能更加稳定。

请参阅图8,图8示出了本申请一实施例提供的设备数据的处理方法的流程示意图。该方法应用于上述第一电子设备的设备应用,设备应用集成有软件开发工具包,软件开发工具包封装有内容提供者。于本实施例中,设备数据包括设备状态。下面将针对图8所示的流程进行详细的阐述,所述设备数据的处理方法可以包括以下步骤:

步骤S410:当所述设备应用关联的第二电子设备的设备状态发生变化时,建立所述软件开发工具包和所述设备中心的进程间通信。

在本实施例中,设备数据包括设备状态。其中,设备状态可以包括电量状态信息、连接状态信息、配置状态信息、设备添加状态、设备移除状态、设备更新状态等。其中,电子状态信息可以用于表征第二电子设备的剩余电量。连接状态信息可以用于表征第二电子设备与其他电子设备的连接情况,如与第三电子设备建立连接,与第三电子设备断开连接等。配置状态信息可以用于表征第二电子设备的功能开关情况,如第二电子设备的降噪开关打开,第二电子设备的降噪开关关闭等。设备添加状态可以用于表征第二电子设备添加至如智能系统中。设备移除状态可以用于表征第二电子设备从如智能系统中移除。设备更新状态可以用于表征第二电子设备在如智能系统中更新。

其中,第二电子设备的设备状态的变化,会直接影响第二电子设备与其他电子设备之间的设备联动。可以认为第二电子设备的设备状态发生变化时,需要及时的通知到设备中心进行同步。因此,当设备应用关联的第二电子设备的设备状态发生变化时,则可以建立软件开发工具包和设备中心的进程间通信。

步骤S420:通过所述进程间通信发送数据变化通知至所述设备中心,以指示所述设备中心从所述内容提供者查询所述第二电子设备变化后的设备数据。

其中,步骤S420的具体描述请参阅步骤S120-步骤S130,在此不再赘述。

本申请一实施例提供的设备数据的处理方法,当设备应用关联的第二电子设备的设备状态发生变化时,建立软件开发工具包和设备中心的进程间通信,通过进程间通信发送数据变化通知至设备中心,以指示设备中心从内容提供者查询第二电子设备变化后的设备数据。相较于图2所示的设备数据的处理方法,本实施例还在设备状态发生变化时,建立跨应用间的进程间通信,使得设备状态互通上可靠性更高,传输更及时,系统性能更加稳定。

请参阅图9,图9示出了本申请一实施例提供的设备数据的处理方法的流程示意图。该方法用于通过在设备数据发生变化时,建立跨应用间的进程间通信,使得数据互通上可靠性更高,数据传输更及时,系统性能更加稳定。在本申请一实施例中,该设备数据的处理方法应用于如图13所示的设备数据的处理装置400以及配置有设备数据处理装置400的电子设备(第一电子设备)100(图1)的设备中心,该第一电子设备还包括设备应用,该设备应用集成有软件开发工具包,软件开发工具包封装有内容提供者。下面将针对图9所示的流程进行详细的阐述,所述设备数据的处理方法可以包括以下步骤:

步骤S510:接收所述设备应用通过进程间通信发送的数据变化通知,其中,所述进程间通信由所述设备应用在关联的第二电子设备的设备数据发生变化时,针对所述软件开发工具包和所述设备中心建立。

步骤S520:响应于所述数据变化通知,从所述内容提供者查询所述第二电子设备变化后的设备数据。

其中,步骤S510-步骤S520的具体描述请参阅步骤S110-步骤S130,在此不再赘述。

本申请一实施例提供的设备数据的处理方法,接收设备应用通过进程间通信发送的数据变化通知,其中,进程间通信由设备应用在关联的第二电子设备的设备数据发生变化时,针对软件开发工具包和设备中心建立,响应于设备数据变化通知,从内容提供者查询第二电子设备变化后的设备数据,从而通过在设备数据发生变化时,建立跨应用间的进程间通信,使得数据互通上可靠性更高,数据传输更及时,系统性能更加稳定。

请参阅图10,图10示出了本申请一实施例提供的设备数据的处理方法的流程示意图。该方法应用于上述第一电子设备的设备中心,第一电子设备还包括设备应用,该设备应用集成有软件开发工具包,软件开发工具包封装有内容提供者。下面将针对图10所示的流程进行详细的阐述,所述设备数据的处理方法可以包括以下步骤:

步骤S610:接收所述设备应用通过进程间通信发送的数据变化通知,其中,所述进程间通信由所述设备应用在关联的第二电子设备的设备数据发生变化时,针对所述软件开发工具包和所述设备中心建立。

步骤S620:响应于所述数据变化通知,从所述内容提供者查询所述第二电子设备变化后的设备数据。

其中,步骤S610-步骤S620的具体描述请参阅步骤S110-步骤S130,在此不再赘述。

步骤S630:当查询到所述第二电子设备变化后的设备数据时,将所述变化后的设备数据缓存到所述第一电子设备的本地。

在一些实施方式中,第一电子设备的设备中心可以从内容提供者查询第二电子设备变化后的设备数据,当查询到该第二电子设备变化后的设备数据时,可以将该变化后的设备数据缓存到第一电子设备的本地。作为一种方式,当查询到第二电子设备变化后的设备数据时,可以将第一电子设备的本地原本缓存的设备数据删除,并在第一电子设备的本地缓存该变化后的设备数据。作为又一种方式,当查询到第二电子设备变化后的设备数据时,可以将变化后的设备数据覆盖原本在第一电子设备的本地缓存的设备数据。

步骤S640:响应于第一设备数据显示事件,从所述第一电子设备的本地获取所述变化后的设备数据进行显示。

在本实施例中,设备中心在将第二电子设备变化后的设备数据缓存到第一电子设备的本地后,可以进行设备数据显示事件的监听。当监听到第一设备数据显示事件时,则可以响应于该第一设备数据显示事件,从第一电子设备的本地获取该变化后的设备数据并显示。基于此,第一电子设备在监听到第一设备数据显示事件时,可以快速获取并展示变化后的设备数据,从而可以提升变化后的设备数据的获取和展示效率。

在一些实施方式中,设备中心可以进行设备数据显示事件的监听。当监听到第二设备数据显示事件时,则可以响应于该第二设备数据显示事件,从内容提供者查询第二电子设备的设备数据进行显示。其中,可以知道的,如果第二电子设备的设备数据与上一次查询时保持不变,则从内容提供者查询到的第二电子设备的设备数据与之前查询到的设备数据一致,如果第二电子设备的设备数据发生变化时,则从内容提供者查询到的第二电子设备的设备数据为变化后的设备数据。作为一种方式,第二设备数据显示事件可以包括第一电子设备的设备中心的与设备应用对应的目标卡片显示事件。当第一电子设备的设备中心的与设备应用对应的目标卡片进入展示状态(目标卡片由不可见切换到可见状态)时,会主动获取第二电子设备的设备数据,例如,设备中心可以通过其核心服务的设备管理模块主动查询软开开发工具包内的内容提供者,以获得第二电子设备的设备数据并显示。

在一些实施方式中,设备数据在从软件开发工具包封装的内容提供者流向设备中心后,可以根据需要对设备数据进行模型映射,转化为设备中心的应用层可用的模型数据,从而可以用于驱动更上层的业务,例如,可以用于驱动目标卡片的显示业务,或者,可以用于驱动设备之间的联动业务等,在此不做限定。

在本申请一实施例中,为了实现对设备数据进行模型映射,第一电子设备可以预先针对第二电子设备的设备业务进行领域建模,其中,在进行领域建模时可以考虑第二电子设备的设备数据以及包含的业务逻辑。作为一种方式,所建立的模型可以如下表所示:

其中,deviceld表示设备的唯一标识;macAddress表示设备的mac地址,主要针对蓝牙设备;name表示设备名称、设备别名;feature表示设备特性,不同设备可能有不同的特性区分;protocol表示设备连接协议;status表示设备状态数据,如电量数据、连接状态数据等;type表示设备类型,用于区分各个设备类型。

在一些实施方式中,在设备模型建立完成后,可以存储该模型。于本实施例中,设备模型中的设备数据需要进行持久化,并对外提供设备数据,因此,需要在设备应用的软件开发工具包中注册内容提供者,由设备中心统一扫描与设备相关的内容提供者。

作为一种方式,第一设备数据显示事件和第二设备数据显示事件可以是相同的设备数据显示事件,例如第一设备数据显示事件和第二设备数据显示事件可以包括第一电子设备的负一屏的与设备应用对应的目标卡片显示事件,当第一电子设备的负一屏的与设备应用对应的目标卡片进入展示状态(目标卡片由不可见切换到可见状态)时,会主动获取第二电子设备设备数据(包括变化后的设备数据),因此,设备中心可以直接从第一电子设备的本地获取该第二电子设备变化后的设备数据,或者从内容提供者获取该第二电子设备的设备数据,进而通知到目标卡片刷新显示设备(包括变化后的设备数据)。

本申请一实施例提供的设备数据的处理方法,接收设备应用通过进程间通信发送的数据变化通知,其中,进程间通信由设备应用在关联的第二电子设备的设备数据发生变化时,针对软件开发工具包和设备中心建立,响应于数据变化通知,从内容提供者查询第二电子设备变化后的设备数据,当查询到第二电子设备变化后的设备数据时,将变化后的设备数据缓存到第一电子设备的本地,响应于设备数据显示事件,从第一电子设备的本地获取变化后的设备数据进行显示。相较于图9所示的设备数据的处理方法,本实施例还在设备数据发生变化时,获取变化后的设备数据存储的本地,并在需要进行设备数据的显示时,直接从本地获取变化后的设备数据进行显示,从而提升设备数据的获取和显示效率。

请参阅图11,图11示出了本申请一实施例提供的设备数据的处理方法的流程示意图。该方法应用于上述第一电子设备的设备中心,第一电子设备还包括设备应用,该设备应用集成有软件开发工具包,软件开发工具包封装有内容提供者。下面将针对图11所示的流程进行详细的阐述,所述设备数据的处理方法可以包括以下步骤:

步骤S710:当查找到所述内容提供者的配置信息时,对所述配置信息进行解析获得解析结果,其中,所述配置信息包括所述设备应用配置的所述第二电子设备的设备数据。

在本实施例中,对于第二电子设备的基础设备数据交由设备应用进行配置,用于设备中心建立通信的内容提供者的查询。其中,内容提供者可以通过其配置文件进行描述,其中,该内容提供者的配置文件可以包括设备应用配置的第二电子设备的设备数据,例如可以包括基本的设备数据,如预览默认图、版本号、支持类型、支持卡片样式等。

在一些实施方式中,设备中心可以根据统一的action进行内容提供者的配置信息的查找,当查找到内容提供者的配置信息时,则可以对配置文件进行解析,获得解析结果。

步骤S720:基于所述解析结果,建立从所述内容提供者查询设备数据的查询通道。

在一些实施方式中,设备中心在获得该解析结果后,可以基于该解析结果,建立设备查询通道,即,建立从内容提供者查询设备数据的查询通道。

步骤S730:接收所述设备应用通过进程间通信发送的数据变化通知,其中,所述进程间通信由所述设备应用在关联的第二电子设备的设备数据发生变化时,针对所述软件开发工具包和所述设备中心建立。

步骤S740:响应于所述数据变化通知,从所述内容提供者查询所述第二电子设备变化后的设备数据。

其中,步骤S730-步骤S740的具体描述请参阅步骤S110-步骤S130,在此不再赘述。

本申请一实施例提供的设备数据的处理方法,设备中心在查找到内容提供者的配置信息时,对配置信息进行解析获得解析结果,基于该解析结果,建立从内容提供者查询设备数据的查询通道,接收设备应用通过进程间通信发送的数据变化通知,其中,进程间通信由设备应用在关联的第二电子设备的设备数据发生变化时,针对软件开发工具包和设备中心建立,响应于设备数据变化通知,从内容提供者查询第二电子设备变化后的设备数据。相较于图9所示的设备数据的处理方法,本实施例还根据内容提供者的配置信息建立查询通道,保证设备数据查询的成功率。

请参阅图12,图12示出了本申请一实施例提供的设备数据的处理装置的模块框图。该设备数据的处理装置300应用于上述第一电子设备的设备应用,该设备应用集成有软件开发工具包,软件开发工具包封装有内容提供者。下面将针对图12所示的框图进行阐述,所述设备数据的处理装置300包括:进程间通信建立模块310和通知发送模块320,其中:

进程间通信建立模块310,用于当所述设备应用关联的第二电子设备的设备数据发生变化时,建立所述软件开发工具包和所述第一电子设备的设备中心的进程间通信。

进一步地,所述进程间通信建立模块310包括:binder连接建立子模块,其中:

Binder连接建立子模块,用于通过安卓接口定义语言建立所述软件开发工具包和所述设备中心的binder连接,以构建所述软件开发工具包和所述设备中心的进程间通信。

进一步地,所述进程间通信建立模块310包括:设备数据获取子模块和第一进程间通信建立子模块,其中:

设备数据获取子模块,用于当所述设备应用关联的第二电子设备的设备数据发生变化时,获取所变化的设备数据。

第一进程间通信建立子模块,用于当所述所变化的设备数据包括预设关键数据时,建立所述软件开发工具包和所述设备中心的进程间通信。

进一步地,所述设备数据包括设备状态,所述进程间通信建立模块310包括:第二进程间通信建立子模块,其中:

第二进程间通信建立子模块,用于当所述设备应用关联的第二电子设备的设备状态发生变化时,建立所述软件开发工具包和所述设备中心的进程间通信。

通知发送模块320,用于通过所述进程间通信发送数据变化通知至所述设备中心,以指示所述设备中心从所述内容提供者查询所述第二电子设备变化后的设备数据。

请参阅图13,图13示出了本申请一实施例提供的设备数据的处理装置的模块框图。该设备数据的处理装置400应用于上述第一电子设备的设备中心,该第一电子设备还包括设备应用,该设备应用集成有软件开发工具包,软件开发工具包封装有内容提供者。下面将针对图13所示的框图进行阐述,所述设备数据的处理装置400包括:通知接收模块410和设备数据查询模块420,其中:

通知接收模块410,用于接收所述设备应用通过进程间通信发送的数据变化通知,其中,所述进程间通信由所述设备应用在关联的第二电子设备的设备数据发生变化时,针对所述软件开发工具包和所述设备中心建立。

设备数据查询模块420,用于响应于所述数据变化通知,从所述内容提供者查询所述第二电子设备变化后的设备数据。

进一步地,所述设备数据的处理装置400还包括:设备数据缓存模块和设备数据显示模块,其中:

设备数据缓存模块,用于当查询到所述第二电子设备变化后的设备数据时,将所述变化后的设备数据缓存到所述第一电子设备的本地。

设备数据显示模块,用于响应于第一设备数据显示事件,从所述第一电子设备的本地获取所述变化后的设备数据进行显示。

进一步地,所述设备数据的处理装置400还包括:

解析结果获得模块,用于当查找到所述内容提供者的配置信息时,对所述配置信息进行解析获得解析结果,其中,所述配置信息包括所述设备应用配置的所述第二电子设备的设备数据。

查询通道建立模块,用于基于所述解析结果,建立从所述内容提供者查询设备数据的查询通道。

进一步地,所述设备数据的处理装置400还包括:设备数据查询模块,其中:

设备数据查询模块,用于响应于第二设备数据显示事件,从所述内容提供者查询所述第二电子设备的设备数据进行显示。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,模块相互之间的耦合可以是电性,机械或其它形式的耦合。

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

请参阅图14,其示出了本申请实施例提供的一种计算机可读存储介质的结构框图。该计算机可读介质500中存储有程序代码,所述程序代码可被处理器调用执行上述方法实施例中所描述的方法。

计算机可读存储介质500可以是诸如闪存、EEPROM(电可擦除可编程只读存储器)、EPROM、硬盘或者ROM之类的电子存储器。可选地,计算机可读存储介质500包括非易失性计算机可读介质(non-transitory computer-readable storage medium)。计算机可读存储介质500具有执行上述方法中的任何方法步骤的程序代码510的存储空间。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。程序代码510可以例如以适当形式进行压缩。

综上所述,本申请实施例提供的设备数据的处理方法、装置、电子设备以及存储介质,当第一电子设备的设备应用关联的第二电子设备的设备数据发生变化时,设备应用建立所集成的软件开发工具包和第一电子设备的设备中心的进程间通信,设备应用通过该进程间通信发送数据变化通知至设备中心,设备中心从软件开发工具包所封装的内容提供者查询第二电子设备变化后的设备数据,从而通过在设备数据发生变化时,建立跨应用间的进程间通信,使得数据互通上可靠性更高,数据传输更及时,系统性能更加稳定。

最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不驱使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

技术分类

06120113678653