Data processing method, related apparatus and communication system
By defining data identifiers and attributes through data dictionary rules, the problem of low development efficiency when adding new data types to smart devices is solved, and efficient data processing and transmission between devices and cloud servers are realized.
Patent Information
- Application Number
- CN202111198750.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-10-14
- Publication Date
- 2026-02-06
- Estimated Expiration
- 2041-10-14
AI Technical Summary
When adding new data types to existing smart devices, developers need to modify the code logic, resulting in low efficiency and a large workload, especially in data display devices, cloud servers, and third-party applications.
It uses data dictionary rules to define attributes such as data identifier, data name, and data storage method. It enables the identification and processing of different types of data through a unified configuration file, allowing the reuse of identification, fusion, statistics, and display programs, thus reducing the workload of developers.
It improves the efficiency of adding new data types, reduces the workload of developers, and enables efficient data transmission and processing between devices and cloud servers.
Smart Images

Figure CN115981756B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of terminal, and in particular, to a data processing method, related apparatus and communication system. BACKGROUND
[0002] With the development of Internet of Things technology, there are more and more types of smart wearable devices and smart home devices. These devices can collect user's motion health data, home state data and other data. The main function of these devices is to collect data, and they may not have the ability of data analysis and display, or the ability of data analysis and display is weak. These devices can send the collected data to electronic devices with the ability of data analysis and display, such as mobile phones, tablet computers and the like. However, with the increase of the types of data collection devices and the types of data, the code logic needs to be modified by multiple developers to ensure that the newly added type of data can be displayed in the data display device and does not conflict with the existing data. This makes the access efficiency of the newly added type of data low and the workload of the developers large. SUMMARY
[0003] The present application provides a data processing method, related apparatus and communication system. The method defines the data collected by the data collection device according to the rules of the data dictionary, and the code of the data display device, the cloud server and the third-party application of different types of data can be reused. This can reduce the workload of the developers when a new type of data is accessed to the data display device, the cloud server and the third-party application, and improve the efficiency of data access.
[0004] In a first aspect, the present application provides a data processing method. In the method, a first device receives first data from a first data collection device. The first data includes a first data identifier and a first sampling value of a first type of data, and conforms to a first configuration file. The first configuration file is defined according to a first rule. The first configuration file can include the first data identifier, the first data identifier can be used to identify the first type of data, and the first data identifier has uniqueness in the data identifiers defined according to the first rule. The first device can identify that the first data belongs to the first type of data according to the first data identifier and the first configuration file.
[0005] The above-mentioned first rule includes the definition and description of one or more of the attributes of the data, such as data identifier, data name, data storage mode and data processing mode. That is, the first rule can be used to provide a unified definition method for different types of data. Each data identifier defined according to the first rule has uniqueness in all data identifiers defined according to the first rule and does not conflict with each other. The above-mentioned first rule can be the rule of the data dictionary.
[0006] In a possible implementation, the first configuration file can include a data type definition rule of the first type of data. The data type definition rule can include the first data identifier. The first data can comply with the rule of the first configuration file, and specifically can comply with the data type definition rule of the first type of data. The first data type definition rule of the first type of data can be fixed in the first data collection device. When the first sample value of the first type of data is collected, the first data collection device can associate the first data identifier and the first sample value according to the data type definition rule of the first type of data to obtain the first data, and send the first data to the first device.
[0007] With reference to the first aspect, in some embodiments, the first device can receive second data from the second data collection device, the second data including a second data identifier and a second sample value of a second type of data, and complying with a rule of a second configuration file, the second configuration file being defined according to the first rule, the second configuration file including the second data identifier, the second data identifier being used to identify the second type of data, and the second data identifier being unique in the data identifiers defined according to the first rule. The first device can identify that the second data belongs to the second type of data according to the second data identifier and the second configuration file. The program used by the first device to identify the first data and the program used by the first device to identify the second data are the same. The program used by the first device to identify the data is the code used to identify the data.
[0008] The method for the second data collection device to obtain the second data can refer to the method for the first data collection device to obtain the first data.
[0009] In some embodiments, the first configuration file and the second configuration file can be two different configuration files. That is, each type of data defined according to the rule of the data dictionary can correspond to a configuration file. Alternatively, the first configuration file and the second configuration file can be different parts of one configuration file. That is, the definition content corresponding to each type of data defined according to the rule of the data dictionary can be written in one configuration file.
[0010] As can be seen from the above embodiments, by using the rule of the data dictionary, when a new type of data is added, the first device can use the program for identifying the existing type of data to identify the new type of data. This can reduce the workload of the developer in the process of accessing the first device by the data collection device, and improve the efficiency of data access.
[0011] With reference to the first aspect, in some embodiments, the first configuration file can further include a fusion strategy of the first type of data. For example, a multi-source fusion strategy or a same-source fusion strategy.
[0012] In a case where the first device receives data of the same type collected by multiple different data collection devices at the same time, the first device can perform data fusion on the data collected by the multiple different data collection devices according to a multi-source fusion strategy defined in the profile of the data of the same type.
[0013] Specifically, the first sample value is collected by the first data collection device at a first time. The first device also receives M sample values of the first type of data, which are collected by M data collection devices at the first time. M is a positive integer. The first device determines from the first profile that the data fusion strategy of the first type of data is a first fusion strategy, and determines a sample value from the first sample value and the M sample values according to the first fusion strategy as the sample value of the first type of data at the first time; the first fusion strategy is any one of the following: taking the maximum value, taking the minimum value, taking the value stored in the first device for the earliest time, taking the value stored in the first device for the latest time, and taking the sample value collected by the device with the highest priority among the first data collection device and the M data collection devices.
[0014] In a case where the data collection device determines that a type of data cannot be collected and results obtained immediately, and needs to be processed by using multiple data collected in a previous period of time to obtain results, the first device can perform data fusion on multiple data collected by the same data collection device according to a same-source fusion strategy defined in the profile of the data of the type.
[0015] In some embodiments, the second profile can also include a fusion strategy of the second type of data. The first device can also perform data fusion on the sample values of the second type of data according to the fusion strategy in the second profile. It can be understood that, since the first type of data and the second type of data are both defined according to the rules of the data dictionary and have different data identifiers, in a case where the fusion strategy of the first type of data is the same as the fusion strategy of the second type of data, the first device can call the same program for data fusion to perform data fusion on the first type of data and the second type of data. That is, the program for data fusion on different types of data defined according to the rules of the data dictionary can be reused. This can reduce the workload of the developer and improve the efficiency of data access to the first device.
[0016] In combination with the first aspect, in some embodiments, the first profile can also include a statistical strategy of the first type of data.
[0017] In a case where the first device receives data of the same type collected by multiple different data collection devices at the same time, the first device can perform data fusion on the data collected by the multiple different data collection devices according to a multi-source fusion strategy defined in the profile of the data of the same type.
[0018] Specifically, the first device can determine from the first configuration file that the data statistical strategy of the first type of data is a first statistical strategy, and the first statistical strategy comprises one or more of the following: calculating a maximum value, calculating a minimum value, calculating a mean value, summing, calculating a variance, calculating a number of sample values, and determining a sample value with the latest acquisition time. The first device can perform data statistics on N sample values of the first type of data in the first time period according to the first statistical strategy, where N is a positive integer.
[0019] In some embodiments, the second configuration file can further comprise a statistical strategy of the second type of data. It can be understood that, since the first type of data and the second type of data are both defined according to the rules of the data dictionary and have different data identifiers, in the case that the statistical strategy of the first type of data is the same as the statistical strategy of the second type of data, the first device can call the same program for data statistics to perform data statistics on the first type of data and the second type of data. That is, the program for data statistics on different types of data defined according to the rules of the data dictionary can be reused. This can reduce the workload of the developer and improve the efficiency of data access to the first device.
[0020] In combination with the first aspect, in some embodiments, the first type of data can be single-point data. Single-point data can mean that the data acquisition device only acquires one type of data at one time. For example, heart rate data, body temperature data, and body weight data are all single-point data. Single-point data can comprise one field. For example, the field of heart rate data is heart rate. Single-point data can have a data identifier. The field of single-point data can have a field identifier. Since single-point data only comprises one field, the first data identifier used to identify the first type of data can be the data identifier of the first type of data as single-point data, or can also be the field identifier of the field of the first type of data.
[0021] In other embodiments, the first type of data can be one field of multi-point data. Multi-point data can mean that the data acquisition device can acquire multiple types of data at one time. For example, blood pressure data is multi-point data. Multi-point data can comprise multiple fields. For example, blood pressure data can comprise two fields: diastolic pressure and systolic pressure. Multi-point data can have a data identifier. Each field of multi-point data can have a different field identifier. The first data identifier used to identify the first type of data can be a field identifier. Optionally, when sample values of multiple fields of one multi-point data are acquired, the data acquisition device can also send the data identifier of the one multi-point data, the field identifiers of the multiple fields of the one multi-point data, and the sample values of the multiple fields to the first device.
[0022] In some embodiments of the first aspect, the first device comprises a display device, and the first configuration file comprises a first display strategy of the first type of data, the first display strategy comprising one or more of the following: a first display form, a first display position. The first device can display the received sample values of the first type of data on the first user interface according to the first display strategy through the display device.
[0023] In some embodiments of the first aspect, the second configuration file comprises a second display strategy of the second type of data, the second display strategy being the same as the first display strategy. The first device can also display the received sample values of the second type of data on the second user interface according to the first display strategy through the display device; wherein the program for displaying the sample values of the first type of data according to the first display strategy is the same as the program for displaying the sample values of the second type of data according to the first display strategy. For example, the first display form is a line chart, and the first device can call the same program for drawing a line chart to draw the sample values of the first type of data and the sample values of the second type of data.
[0024] It can be seen that the program for displaying different types of data defined according to the rules of the data dictionary can be reused. This can reduce the workload of the developer and improve the efficiency of data access to the first device.
[0025] In some embodiments of the first aspect, the first configuration file further comprises first description information of the first type of data. The first description information can be, for example, the name of the first type of data. The first device can send third data to the cloud server, the third data comprising the first description information and the sample values of the first type of data. The cloud server can store the third data. In this way, cloud synchronization of the first type of data can be achieved.
[0026] In some embodiments, the second configuration file further comprises second description information of the second type of data. The second description information can be, for example, the name of the second type of data. The first device can send data comprising the second description information and the sample values of the second type of data to the cloud server. The cloud server can store the sample values of the second type of data.
[0027] Since the first type of data and the second type of data are both defined according to the rules of the data dictionary and have different data identifiers, the first device can send the third data and the data comprising the second description information and the sample values of the second type of data to the cloud server through the same data interaction interface. That is, when a new type of data is generated, the developer does not need to develop a data interaction interface in the first device for the new type of data to access the cloud server. This can reduce the workload of the developer when the new type of data accesses the cloud server and improve the efficiency of data access.
[0028] In some embodiments of the first aspect, the first device has installed a first application program, the first application program has a permission to acquire the first type of data, and the first configuration file contains first description information of the first type of data. The first device can provide fourth data to the first application program in response to a request of the first application program to acquire the first type of data. The fourth data contains the first description information and a sample value of the first type of data.
[0029] In some embodiments, the first application program has a permission to acquire the first type of data. The second configuration file contains second description information of a second type of data. The first device can provide data containing the second description information and a sample value of the second type of data to the first application program in response to a request of the first application program to acquire the first type of data.
[0030] Since the first type of data and the second type of data are defined according to the rules of the data dictionary and have different data identifiers, the first device can provide the fourth data and the data containing the second description information and the sample value of the second type of data to the first application program through the same data open interface. That is, when a new type of data is generated, the developer does not need to develop a data open interface in the first device for the new type of data to be opened to the first application program. This can reduce the workload of the developer when the new type of data is opened to the first application program and improve the efficiency of data access.
[0031] In some embodiments of the first aspect, the first device is a cloud server. The cloud server can send fifth data containing a first data identifier and a sample value of the first type of data to a data display device. That is, the first data acquisition device can send the collected data to the cloud server according to the rules of the data dictionary. The cloud server can identify the data from the data acquisition device according to the configuration file complying with the rules of the data dictionary, and send the data from the data acquisition device to the data display device. The data display device stores a configuration file complying with the rules of the data dictionary. The data display device can identify the received data according to the configuration file complying with the rules of the data dictionary, and process the data according to the display strategy, data fusion strategy, data statistical strategy, etc. in the configuration file. For example, the data display device can identify that the fifth data belongs to the first type of data according to the first data identifier and the first configuration file. Further, the data display device can process the sample value of the first type of data according to the display strategy in the first configuration file.
[0032] In some embodiments, the first device is a cloud server. The first configuration file contains first description information of the first type of data. The cloud server can send sixth data to the data display device. The sixth data can contain the first description information and a sample value of the first type of data. The data display device, upon receiving the sixth data, can determine that the sixth data belongs to the first type of data according to the first description information in the sixth data. That is, the data display device can not need to identify the type of the sixth data according to the configuration file complying with the rules of the data dictionary. The data display device can determine the display strategy, data fusion strategy, data statistical strategy and other rules of the first type of data according to the first configuration file, and process the sample value of the first type of data.
[0033] In some embodiments, the first device is a cloud server. The cloud server can send sixth data to the data display device. In addition, the cloud server can also send the display strategy, data fusion strategy, data statistical strategy and other rules in the first configuration file to the data display device. In this way, the data display device can not need to store the configuration file complying with the rules of the data dictionary. The data display device, upon receiving the sixth data, can determine that the sixth data belongs to the first type of data according to the first description information in the sixth data. The data display device can process the first type of data according to the received rules for processing the first type of data.
[0034] In combination with the first aspect, in some embodiments, the first data acquisition device can be any one of the following devices: a smart watch, a smart bracelet, a body fat scale, smart glasses, a thermometer, a sphygmomanometer, and a heart rate monitoring device.
[0035] In combination with the first aspect, in some embodiments, the first type of data can be any one of the following data: walking data, running data, swimming data, cycling data, sleep data, weight data, stress data, heart rate data, blood pressure data, body temperature data, blood oxygen data, and blood glucose data.
[0036] In the second aspect, the present application provides a data processing method. The first data acquisition device can obtain first data, the first data containing a first data identifier and a first sample value of a first type of data, and complying with the rules of a first configuration file, the first configuration file being defined according to a first rule, the first configuration file containing the first data identifier, the first data identifier being used to identify the first type of data, and the first data identifier being unique in data identifiers defined according to the first rule. The first data acquisition device sends the first data to a first device.
[0037] The above first rule can be a rule of a data dictionary.
[0038] In conjunction with the second aspect, in some embodiments, the first data acquisition device can be any of the following devices: smartwatch, smart bracelet, body fat scale, smart glasses, thermometer, blood pressure monitor, or heart rate monitoring device.
[0039] In conjunction with the second aspect, in some embodiments, the first type of data can be any of the following: walking data, running data, swimming data, cycling data, sleep data, weight data, stress data, heart rate data, blood pressure data, body temperature data, blood oxygen data, and blood glucose data.
[0040] Thirdly, this application provides a communication system. The communication system may include a first data acquisition device and a data display device. The first data acquisition device is used to acquire first data and send the first data to the data display device. The first data includes a first data identifier and a first sample value of a first type of data, and conforms to the rules of a first configuration file. The first configuration file is defined according to the first rules and contains the first data identifier, which is used to identify the first type of data. The first data identifier is unique among data identifiers defined according to the first rules. The data display device can be used to identify that the first data belongs to the first type of data based on the first data identifier and the first configuration file.
[0041] The first rule mentioned above can be a rule from the data dictionary.
[0042] As can be seen from the above embodiments, by utilizing the rules of the data dictionary, when a new type of data is added, the first device can use a data identification program that recognizes existing data types to identify the new type of data. This can reduce the workload of developers during the process of data acquisition devices connecting data to the first device and improve the efficiency of data access.
[0043] In conjunction with the third aspect, in some embodiments, the communication system may further include a cloud server, and the first configuration file contains first descriptive information of the first type of data. The data display device may also be used to send third data to the cloud server, the third data containing the first descriptive information and sampled values of the first type of data. The cloud server may be used to store the third data.
[0044] Fourthly, this application provides an apparatus. The apparatus includes: a communication device, a memory, and a processor. The memory can be used to store a computer program, and the processor can be used to invoke the computer program, causing the apparatus to execute any possible implementation method as described in the first or second aspect.
[0045] Fifthly, this application provides a chip applied to a device, the chip including one or more processors, the processors being configured to invoke computer instructions to cause the device to perform any possible implementation method as described in the first or second aspect.
[0046] In a sixth aspect, the present application provides a computer program product comprising instructions which, when the computer program product runs on a device, cause the device to perform any possible implementation method of the first aspect or the second aspect.
[0047] In a seventh aspect, the present application provides a computer-readable storage medium comprising instructions which, when the instructions run on a device, cause the device to perform any possible implementation method of the first aspect or the second aspect.
[0048] It can be understood that the device provided in the fourth aspect, the chip provided in the fifth aspect, the computer program product provided in the sixth aspect, and the computer-readable storage medium provided in the seventh aspect are all used to execute the method provided in the embodiments of the present application. Therefore, the beneficial effects that can be achieved thereby can refer to the beneficial effects in the corresponding method, which will not be described here again. BRIEF DESCRIPTION OF DRAWINGS
[0049] Figure 1 FIG. 1 is a structural schematic diagram of a communication system 10 provided by an embodiment of the present application;
[0050] Figure 2A FIG. 2 is a structural schematic diagram of an electronic device 100 provided by an embodiment of the present application;
[0051] Figure 2B FIG. 3 is a software structural block diagram of the electronic device 100 provided by an embodiment of the present application;
[0052] Figure 3 FIG. 4 is a structural schematic diagram of another communication system 30 provided by an embodiment of the present application;
[0053] Figure 4 FIG. 5 is a structural schematic diagram of another communication system 40 provided by an embodiment of the present application;
[0054] Figures 5A-5C FIG. 6 is a schematic diagram of a scene in which some electronic devices 100 display body temperature data provided by an embodiment of the present application;
[0055] Figure 6 FIG. 7 is a structural schematic diagram of another communication system 60 provided by an embodiment of the present application. DETAILED DESCRIPTION
[0056] The technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings. In the description of the embodiments of the present application, unless otherwise specified, " / " represents the meaning of or, for example, A / B can represent A or B; the "and / or" in the text only describes the association relationship of the associated objects, which means that there can be three relationships, for example, A and / or B, which means that there are three cases of A alone, A and B together, and B alone. In addition, in the description of the embodiments of the present application, "multiple" means two or more than two.
[0057] Hereinafter, the terms "first" and "second" are used for descriptive purposes only and cannot be understood as implying or suggesting relative importance or implicitly indicating the number of indicated technical features. Therefore, the features defined with "first" and "second" can explicitly or implicitly include one or more of the features, and in the description of the embodiments of the present application, unless otherwise specified, the meaning of "multiple" is two or more than two.
[0058] Please refer to Figure 1 , Figure 1 is a schematic diagram of an architecture of a communication system 10 provided by the embodiments of the present application.
[0059] As shown in Figure 1 , the communication system 10 can include an electronic device 100, one or more data collection devices, a cloud server 300 and a third-party application server 301. Among them:
[0060] The one or more data collection devices described above can include a smart watch 201, a smart bracelet 202, a body fat scale 203, and smart glasses 204. Not limited to devices for collecting user's sports health data, the data collection devices described above can also include smart air conditioners, smart refrigerators, air purifiers, water purifiers, water immersion monitors, gas monitors and other smart home devices. These smart home devices can be used to collect user's home state data. Not limited to the sports health data and home state data described above, the data collected by the data collection device can also include configuration data of the device, working state of the device and other data. The embodiments of the present application do not limit the specific type of the data collection device.
[0061] The sports health data described above can include steps, calories, calories, exercise records, sleep, weight, stress, heart rate, body temperature, blood sugar, blood pressure, etc. The home state data described above can include the temperature in the home, the food materials in the smart refrigerator, the air quality index, the water quality, the gas usage state, etc.
[0062] In some embodiments, the data collection device has a limited size of the area (e.g. display screen) for displaying data, and can simply present the data collected by itself and send the data collected by itself to the electronic device 100 (e.g. mobile phone). The electronic device 100 can analyze the data from the data collection device and present rich analysis results and related suggestions. For example, the smart watch 201 can be used to collect the heart rate of the user. The smart watch 201 can only display the heart rate of the user at the current time. The heart rate collected by the smart watch 201 can be sent to the electronic device 100. The electronic device 100 can calculate the resting heart rate, heart rate range, time period of high heart rate, time period of low heart rate and other analysis results of the user according to the heart rate of the user in a period of time, and provide suggestions for improving the heart health level.
[0063] Optionally, the data collection device does not have the ability to display data. The data collection device can also only collect data and send the collected data to the electronic device 100. The electronic device 100 can analyze and display the received data.
[0064] The electronic device 100 can analyze the data from the data collection device and present rich analysis results and related suggestions as a data display device. The electronic device 100 can have a display device, for example, a display screen. The electronic device 100 can be a portable electronic device running an operating system, for example, an Android system, an iOS system, a Windows system, a Windows Phone system, a Blackberry system, a Symbian system, a Palm OS system, a Linux system, a Firefox OS system, a Tizen system, a Sailfish OS system, a Ubuntu Touch system, a webOS system, a Maemo system, a MeeGo system, a Or other operating systems, such as mobile phones, tablet computers and the like, and also non-portable electronic devices with touch-sensitive surfaces or touch panels, such as laptops, desktop computers and the like. The specific type of the electronic device 100 is not limited in the embodiments of the present application.
[0065] The electronic device 100 can be installed with a device management application (APP) for managing the data collection device. For example, in the case that the data collection device is a device for collecting sports health data, the device management APP for managing the data collection device can include a sports health APP. In the case that the data collection device is a device for collecting home status data, the device management APP for managing the data collection device can include a smart home APP (e.g. smart life APP).
[0066] The electronic device 100 can establish a binding relationship with one or more data collection devices. The electronic device 100 and the data collection device can establish the binding relationship through an account. That is, the account logged in on the APP of the electronic device 100 for controlling the data collection device is the same as the account logged in on the data collection device. Alternatively, the electronic device 100 and the data collection device can also establish the binding relationship through scanning a two-dimensional code, Bluetooth pairing, or the like. The method for the electronic device 100 and the data collection device to establish the binding relationship is not limited in the embodiments of the present application.
[0067] The data collection device can send the data collected by the data collection device to the electronic device (such as the electronic device 100) that establishes a binding relationship with the data collection device. The data collection device can send the data collected by the data collection device to the electronic device 100 through a short-distance communication connection such as a Bluetooth communication connection, a wireless fidelity (Wi-Fi) communication connection, or a ZigBee communication connection.
[0068] The electronic device 100 can also upload the data from the data collection device to the cloud server 300. Alternatively, the electronic device 100 can also upload the analysis result of the data collected by the data collection device and the related suggestions to the cloud server 300.
[0069] The cloud server 300 can receive and store the data from the electronic device 100. The cloud server 300 can be an application server of the device management APP described above for managing the data collection device. The cloud server 300 can store the binding relationship between the electronic device 100 and the data collection device. In some embodiments, the cloud server 300 can be used for the electronic device 100 to remotely control the data collection device.
[0070] In some embodiments, the data collection device can also upload the data collected by the data collection device to the cloud server 300 through a network. For example, the data collection device can access a network through a network access device. Alternatively, the data collection device has a mobile data network function (such as a SIM card inserted in the data collection device). The cloud server 300 can store the data collected by the data collection device and send the data collected by the data collection device to the data display device (such as the electronic device 100) that establishes a binding relationship with the data collection device. The data display device can analyze the data from the data collection device and present the analysis result of the data and the related suggestions.
[0071] In the subsequent embodiments of the present application, the scenario that the data collection device sends data to the data display device that establishes a binding relationship with the data collection device, and the data display device sends the data of the data collection device to the cloud server 300 will be taken as an example for introduction.
[0072] In some embodiments, the APP installed in the electronic device 100 can include a device management APP for managing the data collection device, and can also include a third-party APP. The device management APP can be an APP matched with the data collection device. The data collection device can send the data collected by itself to the device management APP in the electronic device 100 for managing itself. The data collection device and the device management APP for managing the data collection device can be developed and manufactured by the same manufacturer. The third-party APP can be an APP other than the device management APP. The third-party APP can request permission to obtain the data collected by the data collection device. After obtaining the open permission to obtain the data collected by the data collection device, the third-party APP can obtain the data collected by the data collection device through an open interface, and implement its own business by using the data collected by the data collection device. The open interface can be provided by the device management APP.
[0073] For example, the electronic device 100 is installed with a sports health APP and a YY sports APP. The sports health APP can be a device management APP in the electronic device 100, and can be used to manage the data collection device having a binding relationship with the electronic device 100, such as the smart watch 201, the smart bracelet 202, etc. The YY sports APP can be a third-party APP in the electronic device 100. The YY sports APP can obtain the data collected by the data collection device managed by the sports health APP, such as the smart watch 201 and the smart bracelet 202, through the open interface provided by the sports health APP, and implement its own business by using the data. For example, the YY sports APP can provide sports suggestions for the user, etc.
[0074] The third-party APP can obtain the data collected by the data collection device through the open interface provided by the device management APP. The third-party APP can also upload the data collected by the data collection device and the data generated in the process of implementing the related business by using the data collected by the data collection device to the third-party application server 301. The third-party application server 301 can store the data from the third-party APP. The process in which the third-party APP sends data to the third-party application server 301 can be the process in which the electronic device (such as the electronic device 100) installed with the third-party APP sends the data of the third-party APP to the third-party application server 301. The embodiments of the present application do not limit the specific implementation manner of the electronic device 100 sending data to the server (such as the cloud server 300 and the third-party application server 301).
[0075] For reference Figure 2A , Figure 2A An example is shown in the structural schematic diagram of the electronic device 100 provided by the embodiments of the present application.
[0076] For example Figure 2AAs shown, the electronic device 100 can include a processor 110, an external memory interface 120, an internal memory 121, a universal serial bus (USB) interface 130, a charging management module 140, a power management module 141, a battery 142, an antenna 1, an antenna 2, a mobile communication module 150, a wireless communication module 160, an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, a headset jack 170D, a sensor module 180, a key 190, a motor 191, an indicator 192, a camera 193, a display screen 194, and a subscriber identification module (SIM) card interface 195, etc. The sensor module 180 can include a pressure sensor 180A, a gyroscope sensor 180B, a barometric pressure sensor 180C, a magnetic sensor 180D, an acceleration sensor 180E, a distance sensor 180F, a proximity light sensor 180G, a fingerprint sensor 180H, a temperature sensor 180J, a touch sensor 180K, an ambient light sensor 180L, a bone conduction sensor 180M, etc.
[0077] It can be understood that the structure shown in the embodiments of the present application does not constitute a specific limitation on the electronic device 100. In other embodiments of the present application, the electronic device 100 can include more or fewer components than shown, or combine certain components, or split certain components, or different arrangement of components. The components shown can be implemented in hardware, software, or a combination of software and hardware.
[0078] The processor 110 can include one or more processing units, for example: the processor 110 can include an application processor (AP), a modem processor, a graphics processing unit (GPU), an image signal processor (ISP), a controller, a video codec, a digital signal processor (DSP), a baseband processor, and / or a neural-network processing unit (NPU), etc. Different processing units can be independent devices, or can be integrated in one or more processors.
[0079] The controller can generate operation control signals according to instruction operation codes and timing signals, and complete the control of fetching and executing instructions.
[0080] The processor 110 can also include a memory for storing instructions and data. In some embodiments, the memory in the processor 110 is a cache memory. The memory can hold instructions or data that the processor 110 has just used or is using repeatedly. If the processor 110 needs to use the instructions or data again, it can be called directly from the memory. This avoids repeated access and reduces the waiting time of the processor 110, thereby improving the efficiency of the system.
[0081] The USB interface 130 is an interface that meets the USB standard specification, and can be a Mini USB interface, a Micro USB interface, a USB Type C interface, etc. The USB interface 130 can be used to connect a charger to charge the electronic device 100, and can also be used to transmit data between the electronic device 100 and a peripheral device. It can also be used to connect a headset to play audio through the headset. The interface can also be used to connect other electronic devices, such as AR devices, etc.
[0082] The charging management module 140 is used to receive charging input from a charger. The charger can be a wireless charger or a wired charger. The charging management module 140 can charge the battery 142 while also providing power to the electronic device through the power management module 141.
[0083] The power management module 141 is used to connect the battery 142, the charging management module 140, and the processor 110. The power management module 141 receives input from the battery 142 and / or the charging management module 140 to provide power to the processor 110, the internal memory 121, the display 194, the camera 193, and the wireless communication module 160, etc.
[0084] The wireless communication function of the electronic device 100 can be realized through the antenna 1, the antenna 2, the mobile communication module 150, the wireless communication module 160, the modem processor, and the baseband processor, etc.
[0085] The antenna 1 and the antenna 2 are used to transmit and receive electromagnetic wave signals. Each antenna in the electronic device 100 can be used to cover a single or multiple communication frequency bands. Different antennas can also be multiplexed to improve the utilization rate of the antennas. For example, the antenna 1 can be multiplexed as a diversity antenna for a wireless local area network. In some other embodiments, the antennas can be used in combination with a tuning switch.
[0086] The mobile communication module 150 can provide a solution for wireless communication including 2G / 3G / 4G / 5G, etc. applied to the electronic device 100. The mobile communication module 150 can include at least one filter, a switch, a power amplifier, a low noise amplifier (LNA), etc. The mobile communication module 150 can receive an electromagnetic wave by the antenna 1, and perform filtering, amplification, etc. on the received electromagnetic wave, and transfer the processed electromagnetic wave to the modem processor to be demodulated. The mobile communication module 150 can also amplify a signal modulated by the modem processor, and radiate the amplified signal as an electromagnetic wave through the antenna 1. In some embodiments, at least part of the functional modules of the mobile communication module 150 can be disposed in the processor 110. In some embodiments, at least part of the functional modules of the mobile communication module 150 can be disposed in the same device as at least part of the modules of the processor 110.
[0087] The wireless communication module 160 can provide a solution for wireless communication including wireless local area networks (WLAN) (e.g., wireless fidelity (Wi-Fi) network), bluetooth (BT), global navigation satellite system (GNSS), frequency modulation (FM), near field communication (NFC), infrared (IR) technology, etc. applied to the electronic device 100. The wireless communication module 160 can be one or more devices that integrate at least one communication processing module. The wireless communication module 160 receives an electromagnetic wave via the antenna 2, performs frequency modulation and filtering on the electromagnetic wave signal, and transmits the processed signal to the processor 110. The wireless communication module 160 can also receive a signal to be transmitted from the processor 110, perform frequency modulation and amplification on the received signal, and radiate the processed signal as an electromagnetic wave through the antenna 2.
[0088] The electronic device 100 implements a display function through a GPU, a display screen 194, and an application processor, etc. The GPU is a microprocessor for image processing, and is connected to the display screen 194 and the application processor. The GPU is used to perform mathematical and geometric calculations for graphics rendering. The processor 110 can include one or more GPUs that execute program instructions to generate or change display information.
[0089] The display screen 194 is configured to display images, videos, and the like. The display screen 194 includes a display panel. The display panel can be a liquid crystal display (LCD), an organic light-emitting diode (OLED), an active-matrix organic light-emitting diode (AMOLED), a flex light-emitting diode (FLED), a Miniled, a MicroLed, a Micro-oLed, a quantum dot light emitting diode (QLED), or the like. In some embodiments, the electronic device 100 can include one or N display screens 194, where N is a positive integer greater than 1.
[0090] The electronic device 100 can implement the photographing function through the ISP, the camera 193, the video codec, the GPU, the display screen 194, and the application processor.
[0091] The ISP is configured to process the data fed back by the camera 193. For example, when taking a photo, the shutter is opened, the light is transmitted to the camera photosensitive element through the lens, the light signal is converted into an electrical signal, and the camera photosensitive element transmits the electrical signal to the ISP for processing to convert it into an image visible to the naked eye.
[0092] The camera 193 is configured to capture still images or videos. An object generates an optical image through a lens and projects it onto a photosensitive element. The photosensitive element converts the light signal into an electrical signal, and then transmits the electrical signal to the ISP to convert it into a digital image signal. The ISP outputs the digital image signal to the DSP for processing. The DSP converts the digital image signal into an image signal in a standard RGB, YUV, or the like format. In some embodiments, the electronic device 100 can include one or N cameras 193, where N is a positive integer greater than 1.
[0093] The digital signal processor is configured to process digital signals. In addition to processing digital image signals, it can also process other digital signals. For example, when the electronic device 100 selects a frequency point, the digital signal processor is configured to perform Fourier transform on the frequency point energy, and the like.
[0094] A video codec is used to compress or decompress digital video. The electronic device 100 can support one or more video codecs. In this way, the electronic device 100 can play or record video in a variety of encoding formats, such as moving picture experts group (MPEG) 1, MPEG 2, MPEG 3, MPEG 4, and so on.
[0095] An NPU is a neural-network (NN) computing processor that rapidly processes input information by drawing on the structure of a biological neural network, such as the mode of transmission between neurons in the human brain, and can also constantly self-learn. Through the NPU, the electronic device 100 can implement intelligent cognitive applications, such as image recognition, facial recognition, voice recognition, text understanding, and so on.
[0096] The internal memory 121 can include one or more random access memories (RAMs) and one or more non-volatile memories (NVMs).
[0097] A random access memory can include a static random-access memory (SRAM), a dynamic random access memory (DRAM), a synchronous dynamic random access memory (SDRAM), a double data rate synchronous dynamic random access memory (DDR SDRAM, such as a fifth-generation DDR SDRAM commonly referred to as a DDR5 SDRAM), and so on.
[0098] A non-volatile memory can include a disk storage device, a flash memory.
[0099] According to the operation principle, the flash memory can include NOR FLASH, NAND FLASH, 3D NAND FLASH, etc. According to the potential order of the storage unit, the flash memory can include single-level cell (SLC), multi-level cell (MLC), triple-level cell (TLC), quad-level cell (QLC), etc. According to the storage specification, the flash memory can include universal flash storage (UFS), embedded multi media Card (eMMC), etc.
[0100] The random access memory can be directly read and written by the processor 110, and can be used to store executable programs (such as machine instructions) of an operating system or other programs running, and can also be used to store data of users and application programs, etc.
[0101] The non-volatile memory can also store executable programs and data of users and application programs, etc., and can be loaded into the random access memory in advance for direct reading and writing by the processor 110.
[0102] The external memory interface 120 can be used to connect an external non-volatile memory, so as to expand the storage capacity of the electronic device 100. The external non-volatile memory communicates with the processor 110 through the external memory interface 120, so as to realize the data storage function. For example, files such as music and video are saved in the external non-volatile memory.
[0103] The electronic device 100 can realize the audio function through the audio module 170, the speaker 170A, the receiver 170B, the microphone 170C, the earphone interface 170D, and the application processor, etc. For example, music playing, recording, etc.
[0104] The audio module 170 is used to convert digital audio information into analog audio signals, and is also used to convert analog audio input into digital audio signals. The audio module 170 can also be used to encode and decode audio signals. In some embodiments, the audio module 170 can be arranged in the processor 110, or part of the function modules of the audio module 170 can be arranged in the processor 110.
[0105] The speaker 170A, also known as a "loudspeaker", is used to convert audio electrical signals into sound signals. The electronic device 100 can listen to music or listen to a hands-free call through the speaker 170A.
[0106] The receiver 170B, also called the "earpiece", is used to convert audio electrical signals into sound signals. When the electronic device 100 is on a call or listening to a voice message, the receiver 170B can be held close to a person's ear to listen to the voice.
[0107] The microphone 170C, also called the "microphone", "transducer", is used to convert sound signals into electrical signals.
[0108] The earphone interface 170D is used to connect a wired earphone. The earphone interface 170D can be a USB interface 130, or a 3.5mm open mobile terminal platform (OMTP) standard interface, cellular telecommunications industry association of the USA (CTIA) standard interface.
[0109] The pressure sensor 180A is used to sense a pressure signal, and can convert the pressure signal into an electrical signal. In some embodiments, the pressure sensor 180A can be disposed on the display screen 194.
[0110] The gyroscope sensor 180B can be used to determine the motion posture of the electronic device 100. In some embodiments, the angular velocity of the electronic device 100 around three axes (i.e., x, y, and z axes) can be determined by the gyroscope sensor 180B.
[0111] The barometric sensor 180C is used to measure air pressure. In some embodiments, the electronic device 100 calculates the altitude, assists positioning and navigation by the air pressure value measured by the barometric sensor 180C.
[0112] The magnetic sensor 180D includes a Hall sensor. The electronic device 100 can detect the opening and closing of a flip leather cover by using the magnetic sensor 180D.
[0113] The acceleration sensor 180E can detect the magnitude of acceleration of the electronic device 100 in various directions (generally three axes). When the electronic device 100 is stationary, the magnitude and direction of gravity can be detected. It can also be used to identify the electronic device posture, and applied to landscape / portrait screen switching, pedometer, and the like.
[0114] The distance sensor 180F is used to measure distance. The electronic device 100 can measure distance by infrared or laser. In some embodiments, when shooting a scene, the electronic device 100 can use the distance sensor 180F to measure distance to achieve fast focusing.
[0115] The proximity light sensor 180G can include, for example, a light emitting diode (LED) and a light detector, such as a photodiode. The light emitting diode can be an infrared light emitting diode. The electronic device 100 emits infrared light outwardly through the light emitting diode. The electronic device 100 detects infrared reflected light from a nearby object using the photodiode. When sufficient reflected light is detected, it can be determined that there is an object near the electronic device 100. When insufficient reflected light is detected, the electronic device 100 can determine that there is no object near the electronic device 100.
[0116] The ambient light sensor 180L is used to sense ambient light brightness. The electronic device 100 can adaptively adjust the display screen 194 brightness according to the sensed ambient light brightness.
[0117] The fingerprint sensor 180H is used to collect a fingerprint. The electronic device 100 can use the collected fingerprint characteristics to implement fingerprint unlocking, access application lock, fingerprint photograph, fingerprint answer incoming call, etc.
[0118] The temperature sensor 180J is used to detect temperature. In some embodiments, the electronic device 100 uses the temperature detected by the temperature sensor 180J to implement a temperature processing strategy. For example, when the temperature reported by the temperature sensor 180J exceeds a threshold value, the electronic device 100 implements a performance reduction of a processor located near the temperature sensor 180J in order to reduce power consumption and implement thermal protection.
[0119] The touch sensor 180K, also referred to as a "touch device". The touch sensor 180K can be disposed on the display screen 194, and the touch sensor 180K and the display screen 194 form a touch screen, also referred to as a "touch screen". The touch sensor 180K is used to detect a touch operation acting on or near it. The touch sensor can pass the detected touch operation to the application processor to determine the touch event type. Visual output related to the touch operation can be provided through the display screen 194. In other embodiments, the touch sensor 180K can also be disposed on the surface of the electronic device 100, which is different from the position where the display screen 194 is located.
[0120] The bone conduction sensor 180M can obtain a vibration signal. In some embodiments, the bone conduction sensor 180M can obtain a vibration signal of a human body sound part vibration bone block. The bone conduction sensor 180M can also contact the human body pulse to receive a blood pressure pulsation signal.
[0121] The key 190 includes a power-on key, a volume key, etc. The key 190 can be a mechanical key. It can also be a touch key. The electronic device 100 can receive a key input and generate a key signal input related to user settings and function control of the electronic device 100.
[0122] Motor 191 can generate vibration alerts. Motor 191 can be used for incoming call vibration alerts or for touch vibration feedback.
[0123] Indicator 192 can be an indicator light, used to indicate charging status, power changes, or to indicate messages, missed calls, notifications, etc.
[0124] The SIM card interface 195 is used to connect a SIM card. The SIM card can be inserted into or removed from the SIM card interface 195 to make contact with and separate from the electronic device 100. The electronic device 100 can support one or N SIM card interfaces, where N is a positive integer greater than 1. The SIM card interface 195 can support Nano SIM cards, Micro SIM cards, SIM cards, etc. Multiple cards can be inserted into the same SIM card interface 195 simultaneously. The multiple cards can be of the same or different types. The SIM card interface 195 is also compatible with different types of SIM cards. The SIM card interface 195 is also compatible with external memory cards. The electronic device 100 interacts with the network through the SIM card to realize functions such as calls and data communication. In some embodiments, the electronic device 100 uses an eSIM, i.e., an embedded SIM card. The eSIM card can be embedded in the electronic device 100 and cannot be separated from the electronic device 100.
[0125] The software system of electronic device 100 can adopt a layered architecture, event-driven architecture, microkernel architecture, microservice architecture, or cloud architecture. This application embodiment uses the layered architecture Android system as an example to exemplify the software structure of electronic device 100.
[0126] Figure 2B This is a software structure block diagram of the electronic device 100 according to an embodiment of this application.
[0127] A layered architecture divides software into several layers, each with a clear role and function. Layers communicate with each other through software interfaces. In some embodiments, the Android system is divided into four layers, from top to bottom: the application layer, the application framework layer, the Android runtime and system libraries, and the kernel layer.
[0128] The application layer can include a series of application packages.
[0129] like Figure 3 As shown, the application package can include applications for camera, gallery, calendar, calling, maps, navigation, WLAN, Bluetooth, music, video, and fitness and health. In addition to the fitness and health app, the application package can also include more applications for managing data collection devices.
[0130] The application framework layer provides an application programming interface (API) and a programming framework for the applications of the application layer. The application framework layer includes some pre-defined functions.
[0131] As shown in Figure 3 The application framework layer can include a window manager, a content provider, a view system, a phone manager, a resource manager, a notification manager, and the like.
[0132] The window manager is used to manage window programs. The window manager can acquire a display screen size, determine whether there is a status bar, lock a screen, and take a screenshot, and the like.
[0133] The content provider is used to store and acquire data, and make the data accessible to the applications. The data can include videos, images, audios, dialed and received calls, data collected from data collection devices (such as sports health data, home status data), and the like.
[0134] The view system includes visual controls, such as a control for displaying text, a control for displaying pictures, and the like. The view system can be used to build an application. A display interface can be composed of one or more views. For example, a display interface including a short message notification icon can include a view for displaying text and a view for displaying pictures.
[0135] The phone manager is used to provide a communication function of the electronic device 100. For example, management of a call state (including call connection, call hang-up, and the like).
[0136] The resource manager provides various resources for the applications, such as localized strings, icons, pictures, layout files, video files, and the like.
[0137] The notification manager makes the applications display notification information in a status bar. The notification manager can be used to convey a notification type of message, which can automatically disappear after a short stay without user interaction. For example, the notification manager is used to notify a download completion, a message reminder, and the like. The notification manager can also be a notification appearing in a system top status bar in a form of a graph or a scroll bar text, such as a notification of an application running in the background, and can also be a notification appearing on a screen in a form of a dialog window. For example, a text information is prompted in a status bar, a prompt sound is emitted, the electronic device is vibrated, a light flashes, and the like.
[0138] In some embodiments, the electronic device 100 can store the data sent by the data collection device in the content provider. The sports health APP can obtain the data from the data collection device from the content provider, and analyze the data from the data collection device. The sports health APP can call the view system to display the data from the data collection device and the analysis results of the data, and the like.
[0139] The Android Runtime includes the core library and the virtual machine. The Android runtime is responsible for the scheduling and management of the Android system.
[0140] The core library contains two parts: one part is the function function that the java language needs to call, and the other part is the core library of Android.
[0141] The application layer and the application framework layer run in the virtual machine. The virtual machine executes the java file of the application layer and the application framework layer into a binary file. The virtual machine is used to execute the management of the object life cycle, the stack management, the thread management, the security and the exception management, and the garbage collection and the like.
[0142] The system library can include a plurality of functional modules. For example: the surface manager, the media library, the three-dimensional graphics processing library (for example: OpenGL ES), the 2D graphics engine (for example: SGL) and the like.
[0143] The surface manager is used to manage the display subsystem, and provides the fusion of 2D and 3D layers for a plurality of application programs.
[0144] The media library supports a plurality of commonly used audio, video format playback and recording, and static image files and the like. The media library can support a plurality of audio and video coding formats, for example: MPEG4, H.264, MP3, AAC, AMR, JPG, PNG and the like.
[0145] The three-dimensional graphics processing library is used to realize three-dimensional graphics drawing, image rendering, synthesis, and layer processing and the like.
[0146] The 2D graphics engine is a drawing engine for 2D drawing.
[0147] The kernel layer is the layer between hardware and software. The kernel layer at least contains display driver, camera driver, audio driver, sensor driver.
[0148] The working flow of the software and hardware of the electronic device 100 is exemplarily explained below in combination with the capturing and photographing scene.
[0149] When the touch sensor 180K receives a touch operation, a corresponding hardware interrupt is sent to the kernel layer. The kernel layer processes the touch operation into a raw input event (including touch coordinates, a timestamp of the touch operation, and the like). The raw input event is stored in the kernel layer. The application framework layer obtains the raw input event from the kernel layer, and identifies a control corresponding to the input event. Taking an example in which the touch operation is a touch click operation, and the control corresponding to the click operation is a control of the camera application icon, the camera application calls an interface of the application framework layer, starts the camera application, and then starts the camera driver by calling the kernel layer, and captures a still image or a video by the camera 193.
[0150] A data processing method is introduced below by taking the communication system 30 composed of the electronic device 100, the smart watch 201, and the cloud server 300 in the communication system 10 as an example.
[0151] Please refer to Figure 3 , Figure 3 An exemplary structural diagram of the communication system 30 is shown.
[0152] As Figure 3 shown, the smart watch 201 can include a data ① acquisition module 310, a data ② acquisition module 311, a data ① packaging module 312, and a data ② packaging module 313. The data ① acquisition module 310 can be used to acquire data ①. The data ② acquisition module 311 can be used to acquire data ②. It can be understood that the smart watch 201 has hardware devices for acquiring data ① and data ②. For example, in the case of data ① being a heart rate, the data ① acquisition module 310 can include a heart rate monitoring device.
[0153] The smart watch 201 can include more or fewer data acquisition modules than the data ① acquisition module 310 and the data ② acquisition module 311.
[0154] The data ① packaging module 312 can be used to package the acquired data ① according to a data packaging protocol agreed between the smart watch 201 and the electronic device 100.
[0155] The data ② packaging module 313 can be used to package the acquired data ② according to a data packaging protocol agreed between the smart watch 201 and the electronic device 100.
[0156] The data packaging protocol for packaging data ① and data ② can determine the meaning of each field in the packaged data. The data packaging protocol for packaging data ① and data ② can be the same or different.
[0157] For example, the data ① is heart rate, and the data ② is pressure. The data ① collection module 310 collects the heart rate of the user as 81. The data ② collection module 311 collects the pressure of the user as 52. The data ① packaging module 312 can package the heart rate data. The packaged heart rate data can include "0181". The data ② packaging module 313 can package the pressure data. The packaged pressure data can include "0152".
[0158] The smart watch 201 can send the packaged data ① and data ② to the electronic device 100.
[0159] It can be understood that the smart watch 201 also includes a communication module (such as a Bluetooth communication module). The data ① packaging module 312 and the data ② packaging module 313 can transmit the packaged data to the communication module in the smart watch 201. For example, the smart watch 201 and the electronic device 100 establish a Bluetooth communication connection. The Bluetooth communication module in the smart watch 201 can send the packaged data ① and data ② to the electronic device 100 according to the Bluetooth communication protocol. The electronic device 100 can also include a communication module. The communication module in the electronic device 100 can receive the data sent from the smart watch 201 and transmit the data sent from the smart watch 201 to the corresponding application program (such as a sports health APP). In order to more clearly reflect the data processing process, the transmission process of the data in the communication system 30 is simplified in the embodiment of the application.
[0160] The electronic device 100 can include a sports health APP. Without being limited to the sports health APP, the electronic device 100 can also include other device management APPs for managing data collection devices. In subsequent embodiments of the application, the sports health APP is taken as an example for illustration.
[0161] The sports health APP can include a device management module 314, one or more data storage and cloud synchronization modules, one or more data calculation modules, and one or more business implementation modules.
[0162] The device management module 314 can include one or more data unpackaging modules. For example, a data ① unpackaging module 314A and a data ② unpackaging module 314B. The data ① unpackaging module 314A can be used to unpack the packaged data ① according to the data packaging protocol agreed between the smart watch 201 and the electronic device 100. The data ② unpackaging module 314B can be used to unpack the packaged data ② according to the data packaging protocol agreed between the smart watch 201 and the electronic device 100.
[0163] For example, the data 1 unpackaging module 314A can unpack the packaged heart rate data "0181" to obtain the following heart rate data "data type: heart rate, data value 81". The "data type: heart rate" can be determined by the data 1 unpackaging module 314A according to the first two bits "01" in "0181". The "data value 81" can be determined by the data 1 unpackaging module 314A according to the last two bits "81" in "0181".
[0164] The data 2 unpackaging module 314B can unpack the packaged pressure data "0152" to obtain the following pressure data "data type: pressure, data value 52". The "data type: pressure" can be determined by the data 2 unpackaging module 314B according to the first two bits "01" in "0152". The "data value 52" can be determined by the data 2 unpackaging module 314B according to the last two bits "52" in "0152".
[0165] It can be seen that the packaged heart rate data and the packaged pressure data cannot be unpackaged by the same data unpackaging module in the sports health APP, otherwise the meaning represented by the data content "01" cannot be determined.
[0166] It can be understood that in the case that the data packaging protocols used by the data collection devices such as the smart watch 201 for packaging different data are different, the same data content in different data can represent different meanings, and the sports health APP in the electronic device 100 needs to unpack the data according to different data packaging protocols to determine the meaning represented by the received data.
[0167] The device management module 314 can also include other modules for managing the sports health data collection devices such as the smart watch 201, without being limited to the above data packaging module.
[0168] The data storage and cloud synchronization module in the sports health APP can include a data 1 storage and cloud synchronization module 316 and a data 2 storage and cloud synchronization module 317. The data 1 storage and cloud synchronization module 316 can be used to store the data 1 obtained after unpackaging by the data 1 unpackaging module 314A and upload the data 1 to the cloud server 300. The data 2 storage and cloud synchronization module 317 can be used to store the data 2 obtained after unpackaging by the data 2 unpackaging module 314B and upload the data 2 to the cloud server 300.
[0169] The data calculation module in the sports and health app can include a data ① calculation module 318 and a data ② calculation module 319. The data ① calculation module 318 can obtain data ① from the data ① storage and cloud synchronization module 316 and perform one or more of the following calculations on data ①: determining the mean, determining the range of variation, determining the maximum value, determining the minimum value, determining the sum, and determining the count of data ① within a certain period. The data ② calculation module 319 can obtain data ② from the data ② storage and cloud synchronization module 317 and perform calculations on data ②.
[0170] A business implementation module can be used to implement a business function. The aforementioned business function can represent the services that a sports and health app can provide to users. The business implementation modules in a sports and health app can include a business A implementation module 320 and a business B implementation module 321. For example, the business A implementation module can be used to present heart rate-related data and stress-related data. The business B implementation module can be used to present health maintenance recommendations determined based on the heart rate-related data and stress-related data. Then, both business A implementation module 320 and business B implementation module 321 can obtain heart rate-related data from data ① calculation module 318 and stress-related data from data ② calculation module 319.
[0171] In some embodiments, a sports and health app may also include one or more data sharing modules. Figure 3 (Not shown in the image). For example, there are data ① open modules and data ② open modules. The data open modules can be used to provide open interfaces for third-party apps to obtain corresponding data.
[0172] The cloud server 300 may include a data ① storage module 322 and a data ② storage module 323. The data ① storage module 322 can be used to store data ①. The data ② storage module 323 can be used to store data ②. The sports and health app can upload data ① and data ② to the cloud server 300 according to the data encapsulation protocol agreed upon with the cloud server 300. Furthermore, the cloud server 300 can determine the meaning of the received data according to the data encapsulation protocol agreed upon between the sports and health app and the cloud server 300, and then store it.
[0173] From the above Figure 3It can be known from the communication system 30 that different types of data in the smart watch 201 can be encapsulated according to different data encapsulation protocols, and a plurality of data collection devices such as the smart watch 201 can encapsulate the data collected by the data collection devices according to different data encapsulation protocols. The sports health APP in the electronic device 100 needs to use different data encapsulation protocols to identify the meaning represented by different data. That is, the sports health APP needs to include a module for managing data encapsulated according to different data encapsulation protocols. Then, in the case that a new type of data is added to the electronic device 100 for display, the cloud server 300 for storage and opening to the third-party APP, the developer of the sports health APP needs to develop code for identifying data, analyzing data, presenting data, and opening data and other data processing codes for the new type of data. The cloud server 300 and the third-party APP also need to increase the code for processing the new type of data according to the data encapsulation protocol used by the new type of data.
[0174] It can be seen that the above processing method needs to modify and adapt the data processing code of the developers of multiple parties when a new type of data is accessed to the data display device, the cloud server, and the third-party APP. This makes the workload of the developers large and the data access efficiency low.
[0175] The embodiment of the present application provides a data processing method. In the method, the data collection device can report data A to the data display device according to the data type definition rule in the data dictionary. The data display device can determine the specific content of the received data A according to the data type definition rule in the data dictionary, and analyze the data A according to the data processing rule in the data dictionary. The data display device can display the data A and the analysis result thereof, and can also upload the data A to the cloud server and open it to the third-party APP. The cloud server can determine the specific content of the received data A according to the data type definition rule in the data dictionary, and store it. The third-party APP can determine the specific content of the received data A according to the data type definition rule in the data dictionary, and use the data A to realize the demand business of the third-party APP.
[0176] The above-mentioned data A can be sports health data, home state data, and the like. The embodiment of the present application does not limit the specific type of the data A.
[0177] The rules of the above data dictionary (such as data type definition rules, data processing rules, etc.) can be applicable to multiple different types of data. As can be seen, with the rules of the above data dictionary, in the case of adding a new type of data, the code for adding the new type of data to the data display device, the cloud server, the third-party APP, and the data display device for analyzing and displaying the new type of data can reuse the code for processing the existing type of data. This can reduce the workload of the developer and improve the efficiency of data access.
[0178] In order to facilitate understanding of the data processing method provided in the present application, the concept of the data dictionary involved in the present application is introduced below.
[0179] The data dictionary refers to the definition and description of data items, data structures, data storage, and processing logic of data. The content contained in the data dictionary can refer to the content shown in Table 1 below.
[0180]
[0181]
[0182]
[0183] Table 1
[0184] The data dictionary can include data type definition rules and data processing rules.
[0185] The data type definition rules can include the following data items in the data type definition in Table 1 above: typeID, subType, name, description, type, sensitivityLevel, validatePolicies, and displayPolicies.
[0186] The format of the data item typeID can be, for example, 00100001. The first 3 bits can identify the grouping of the data type, and the last 5 bits can be used to ensure that typeID has global uniqueness. In this way, the data display device, the cloud server, and the third-party APP can determine the type of the data according to the type identifier of the data. The format of the data item typeID is not limited in the embodiments of the present application.
[0187] The data item subType is an optional data item. In some embodiments, a type of data can be further divided into multiple subtypes. The data corresponding to the multiple subtypes can have a data subtype identifier. For example, the data of the sports record can include multiple subtypes of data: running record, swimming record, mountaineering record, cycling record, and the like.
[0188] The data item name can be an English string. For example, the name of sleep data can be "SLEEP_RECORD". The data item name can be used as a unique access identifier in code.
[0189] The data item type can include a single-sampling data category, a sequence-sampling data category, and the like. The single-sampling data category can indicate that one sampling of data can determine one category of data value. For example, one sampling of heart rate data by a data collection device can obtain one heart rate value. The sampling of heart rate can indicate that the heart rate is collected at one time. The single-sampling data category can also be referred to as single-point data. The sequence-sampling data category can indicate that one sampling of data can determine multiple categories of data values. For example, one sampling of running record data by a data collection device can obtain multiple categories of data values such as running speed average, running distance, and consumed calories. The sampling of running record can indicate that data related to running in a time period from starting running to ending running is collected.
[0190] The data item sensitivityLevel can be used to determine the sensitivity level of data. The sensitivity level can be defined according to the degree of adverse impact on individuals, organizations, or the public caused by data leakage or misuse. For example, if a type of data can cause irrecoverable or disastrous adverse impact on individuals, organizations, or the public caused by data leakage or misuse, the sensitivityLevel of the type of data can be 4. If a type of data can cause significant adverse impact on individuals, organizations, or the public caused by data leakage or misuse, the sensitivityLevel of the type of data can be 3. If a type of data can cause relatively serious adverse impact on individuals, organizations, or the public caused by data leakage or misuse, the sensitivityLevel of the type of data can be 2. If a type of data can cause limited adverse impact on individuals, organizations, or the public caused by data leakage or misuse, the sensitivityLevel of the type of data can be 1. If a type of data can cause negligible adverse impact on individuals, organizations, or the public caused by data leakage or misuse, the sensitivityLevel of the type of data can be 0. The embodiments of the present application do not limit the specific value of sensitivityLevel.
[0191] The data item validatePolicies is an optional data item. The data item validatePolicies can be used to check the rationality of the data collection device. For example, the validatePolicies of the body temperature data can be body temperature ≥ 34 and body temperature ≤ 42. If the device management APP for managing the data collection device receives the body temperature data with the value of 45, the APP can determine that the body temperature data is abnormal data. The device management APP for managing the data collection device can process (such as delete) the abnormal data to reduce the situation of presenting the abnormal data to the user.
[0192] The data item displayPolicies can be used to determine the display strategy of the data. The value list of displayPolicies can include display form displayForm and display position displayPosition.
[0193] For example, if the displayForm of a type of data is 1, the data display device can display the sampling value of the type of data in the form of a line chart. If the displayForm of a type of data is 2, the data display device can display the sampling value of the type of data in the form of a column chart. If the displayForm of a type of data is 3, the data display device can display the sampling value of the type of data in the form of a pie chart. If the displayForm of a type of data is 4, the data display device can display the sampling value of the type of data in the form of a radar chart. If the displayForm of a type of data is 5, the data display device can display the sampling value of the type of data in the form of a scatter chart.
[0194] If the displayPosition of a type of data is Left, the data display device can display the sampling value of the type of data with display form A (such as a line chart) on the left side of the user interface. If the displayPosition of a type of data is Right, the data display device can display the sampling value of the type of data with display form A on the right side of the user interface. If the displayPosition of a type of data is Top, the data display device can display the sampling value of the type of data with display form A on the top of the user interface. If the displayPosition of a type of data is Bottom, the data display device can display the sampling value of the type of data with display form A on the bottom of the user interface.
[0195] The data dictionary can further include more displayForm and displayPosition than the above-mentioned displayForm and displayPosition. The embodiments of the present application do not limit the values of displayForm and displayPosition. The data dictionary can further indicate different displayForm and different displayPosition by other data, letters or other characters.
[0196] The values of displayForm and displayPosition are only illustrative and should not be construed as limiting the present application.
[0197] In some embodiments, displayPolicies can include one of displayForm and displayPosition. Optionally, displayPolicies can further include more rules for instructing the data display device to display data, such as alignment, etc., other than displayForm and displayPosition.
[0198] In some embodiments, displayPolicies can further include displayForm and displayPosition of statistical data (e.g., maximum value, minimum value, average value, etc.) of the data of the type, in addition to displayForm and displayPosition of the sampling values of the data of the type in a period of time.
[0199] The data type definition rule can further include a field list fields. The field list of a type of data can include one or more fields. For example, the field list of single-point data heart rate can include one field, i.e., heart rate. The field list of multi-point data blood pressure can include two fields, i.e., systolic pressure and diastolic pressure. The above-mentioned multi-point data can indicate that the data acquisition device can obtain multiple types of data at one time.
[0200] The data processing rule can include other data items in Table 1 other than the data type definition rule. For example, each data item in the field definition and each data item in the statistical strategy definition.
[0201] One of the fields in the field list fields can have the data items contained in the field definition in Table 1: fieldType, fieldName, fieldDescription, format, unit(cn), unit(en), fieldOptional, mergePolicy, dataSourcePriority, mergePolicySameSource, statPolicies. That is, the data items contained in the field definition in Table 1 can describe one of the fields in the field list fields from different dimensions.
[0202] The data item fieldType can be used to identify different types of fields under one type of data. The format of the fieldType of one field can be 00100001001, the first 8 bits can be the typeID of the type of data to which this field belongs, and the last 3 bits can be used to ensure that the fieldType has uniqueness in the fields contained in the data corresponding to the above typeID.
[0203] The data item fieldName can be an English string. For example, the fieldName of body temperature can be "bodyTemperature".
[0204] The data item fieldOptional can be used to indicate whether a field is optional. For example, the value of the data item fieldOptional "M" can indicate that a field is mandatory. The value of the data item fieldOptional "O" can indicate that a field is optional. When a type of data is defined according to the rules of the data dictionary, the mandatory fields contained in this type of data must be defined.
[0205] The data item mergePolicy can be used to determine the strategy for processing the same type of data collected at the same time from multiple data collection devices. That is, the multi-source fusion strategy. The multi-source fusion strategy can include taking the maximum value (MAX), taking the minimum value (MIN), taking the new value (NEW), taking the old value (OLD), and taking the priority of the data source (SOURCE_PRIORITY). The above data source can represent the source of the data, and the data collection device.
[0206] The data item dataSourcePriority is an optional data item, which can be used to determine the priority of the data source. The data item dataSourcePriority only needs to be defined when the value of the above data item mergePolicy is SOURCE_PRIORITY.
[0207] The data item mergePolicySameSource can be used to determine the processing policy for the same type of data collected by one data collection device. That is, the same source fusion policy. For example, in the scenario where the smart watch 201 determines whether the user is asleep at time A, the smart watch 201 needs to use multiple sleep-related data monitored before time A to determine whether the user is asleep at time A. That is, in the case where the data collection device cannot collect the same type of data in real time to obtain the result, and needs to use multiple data collected in the previous period to process and obtain the result, the data display device can use the above-mentioned same source fusion policy to determine the method of processing the multiple data collected in the previous period. The same source fusion policy can include taking the maximum value (MAX), taking the minimum value (MIN), taking the new value (NEW), and taking the old value (OLD).
[0208] The data item statPolicies can represent the list of statistical policies of a field. The list of statistical policies of a field can include one or more statistical policies. For example, a statistical policy for calculating the maximum value, a statistical policy for calculating the minimum value, a statistical policy for calculating the average value, a statistical policy for calculating the sum, and the like.
[0209] Each statistical policy can have the data items included in the statistical policy definition in Table 1: statType, statFieldName, statFormat, and statPolicy. Among them:
[0210] The data item statType can be used to identify the statistical data type of a field. The format of the data item statType can refer to the data format of the aforementioned data item fieldType.
[0211] The data item statPolicy can be used to determine the statistical policy of a field. The statistical policy can include calculating the maximum value (MAX), calculating the minimum value (MIN), calculating the average value (AVG), summing (SUM), counting (COUNT), calculating the variance (SD), and taking the new value (LAST).
[0212] The embodiments of the present application do not limit the names of the data items in the data dictionary. In addition to the data items listed in Table 1 above, the data dictionary can also include more or fewer data items.
[0213] In addition to the above-mentioned data dictionary, the above-mentioned rules for providing a unified definition for different types of data can also have other names. The embodiments of the present application do not limit this.
[0214] Different types of data can be defined by metadata according to the data dictionary shown in Table 1. Metadata corresponding to one type of data can be used to determine the values of each data item possessed by the one type of data. Then, metadata corresponding to different types of data defined by the data dictionary can have the same or similar data structure. Metadata corresponding to different types of data having the same data structure can indicate that the types of data items contained in these metadata are the same. Metadata corresponding to different types of data having similar data structure can indicate that some of the metadata contain optional data items in the data dictionary, and some of the metadata do not contain optional data items in the data dictionary.
[0215] Since metadata corresponding to different types of data can have the same or similar data structure, the code for calculating and presenting the newly added type of data in the device management APP (such as a sports health APP) for managing the data acquisition device can reuse the code of the existing type of data. For example, the code for data fusion and data statistics, and the like. This can reduce the workload of the developer and improve the efficiency of data access.
[0216] Based on the above data dictionary, a data processing method provided by the embodiments of the present application is introduced by taking the communication system 40 composed of the electronic device 100, the smart watch 201 and the cloud server 300 in the communication system 10 as an example.
[0217] Please refer to Figure 4 , Figure 4 An exemplary structure schematic diagram of the communication system 40 is shown.
[0218] (1) The data collected by the smart watch 201 is accessed to the electronic device 100.
[0219] As Figure 4 shown, the smart watch 201 can contain a data 1 collection module 410, a data 2 collection module 411, and a data reporting module 412. Among them, the data 1 collection module 410 and the data 2 collection module 411 can refer to the foregoing introduction of the communication system 30. The data reporting module 412 can be used to report the data 1 to the sports health APP in the electronic device 100 according to the data type definition rule contained in the metadata corresponding to the data 1, and report the data 2 to the sports health APP in the electronic device 100 according to the data type definition rule contained in the metadata corresponding to the data 2.
[0220] In a possible implementation, the smart watch 201 can be written with the data type definition rule contained in the metadata corresponding to the data 1 before leaving the factory, and the data type definition rule contained in the metadata corresponding to the data 2. Optionally, the data type definition rule adapted to the data 1 and the data 2 can also be written into the smart watch 201 through software update in the smart watch 201 after the smart watch 201 leaves the factory.
[0221] When the data 1 is collected, the smart watch 201 can determine the data type definition rule adapted to the data 1. The smart watch 201 can report the data 1 to the sports health APP in the electronic device 100 through the data reporting module 412 according to the data type definition rule adapted to the data 1.
[0222] (2) The electronic device 100 processes the data of the data collection device.
[0223] The electronic device 100 can contain the sports health APP. The sports health APP can contain the data management module 413, the data dictionary 414, the business A implementation module 415, and the business B implementation module 416. The data management module 413 can obtain the data 1 and the data 2 reported by the data reporting module 412 in the smart watch 201. It can be understood that the data 1 and the data 2 also pass through the processing of other modules (such as the Bluetooth communication module) in the smart watch 201 and the electronic device 100 in the process of being transmitted from the data reporting module 412 to the data management module 413. In order to more clearly reflect the processing process of the data, the transmission process of the data in the communication system 40 is simplified in the embodiment of the application. The embodiment of the application does not limit the specific method of transmitting the data 1 and the data 2 from the data reporting module 412 to the data management module 413 and from the data management module 413 to the data storage module 417 in the cloud server 300.
[0224] The data dictionary 414 can contain the configuration file of the data 1 and the configuration file of the data 2. The configuration file of one type of data can comply with the definition content in the metadata corresponding to the one type of data. That is, the configuration file of the data 1 can be determined according to the metadata corresponding to the data 1. The configuration file of the data 2 can be determined according to the metadata corresponding to the data 2. The configuration file of one type of data can be used for the device management APP to identify, process, cloud synchronize, and open to the third-party APP, etc. processing of the received one type of data.
[0225] When receiving data 1 and data 2 from the data reporting module 412, the data management module 413 can obtain the configuration file of data 1 and the configuration file of data 2 from the data dictionary 414. The data 1 reported by the data reporting module 412 contains the data item typeID of data 1, and the data 2 contains the data item typeID of data 2. The data management module 413 can obtain the configuration file of data 1 from the data dictionary 414 according to the data item typeID of data 1, and obtain the configuration file of data 2 from the data dictionary 414 according to the data item typeID of data 2.
[0226] According to the data type definition rules in the configuration file of data 1 and the configuration file of data 2, the data management module 413 can identify the specific content of data 1 and data 2. According to the data processing rules in the configuration file of data 1 and the configuration file of data 2, the data management module 413 can perform data fusion, data statistics and other calculation processing on data 1 and data 2.
[0227] As shown in Table 1, the data processing rules in the data dictionary can include data fusion rules and data statistics rules. The data fusion rules can include data items mergePolicy, dataSourcePriority and mergePolicySameSource. The data statistics rules can include data item statPolicy.
[0228] (a) Data fusion
[0229] In a possible implementation, the data management module 413 can first determine whether data 1 is reported by a data collection device other than the smart watch 201, and whether the smart watch 201 and other data collection devices collect data 1 at the same time. If the data management module 413 only receives data 1 collected by the smart watch 201, the data management module 413 can store the data 1 collected by the smart watch 201.
[0230] If the data management module 413 receives multiple data 1 collected by the smart watch 201 and other data collection devices at time A, the data management module 413 can determine which data 1 in the multiple data 1 is the accurate data at time A according to the data item mergePolicy of the multi-source fusion strategy in the configuration file of data 1.
[0231] For example, in the case that the data item mergePolicy in the configuration file of data 1 is NEW, the data management module 413 can take the data 1 with the latest write time in the multiple data 1 as the fused data, that is, the accurate data at time A. The write time can be the time when the data is written into the storage module of the electronic device 100.
[0232] For another example, in the case that the data item mergePolicy in the profile of data ① is OLD, the data management module 413 can take the data ① with the oldest writing time among the above-mentioned multiple data ① as the fused data.
[0233] For another example, in the case that the data item mergePolicy in the profile of data ① is MAX, the data management module 413 can take the data ① with the largest value among the above-mentioned multiple data ① as the fused data.
[0234] For another example, in the case that the data item mergePolicy in the profile of data ① is MIN, the data management module 413 can take the data ① with the smallest value among the above-mentioned multiple data ① as the fused data.
[0235] For another example, in the case that the data item mergePolicy in the profile of data ① is SOURCE_PRIORITY, the data management module 413 can take the data ① collected by the device with the highest device priority among the above-mentioned multiple data collection devices such as the smart watch 201 as the fused data.
[0236] In the case that the data item mergePolicy is SOURCE_PRIORITY, the profile of data ① contains the data item dataSourcePriority. The dataSourcePriority can be used to determine the device priority.
[0237] In one possible implementation, the device priority determined by the dataSourcePriority is the priority determined according to the category of the data collection device. For example, when collecting blood pressure data, the priority of the sphygmomanometer is higher than that of the smart watch. The data management module 413 can determine the category of the above-mentioned multiple data collection devices that collect data ① at time A, and select the data ① collected by the data collection device with the highest category priority according to the device priority determined by the dataSourcePriority. If there are multiple data collection devices with the highest category priority among the above-mentioned multiple data collection devices that collect data ① at time A, the data management module 413 can select one of the data ① collected by the multiple data collection devices with the highest category priority as the fused data in combination with other fusion strategies (such as MAX, MIN, NEW, OLD, etc.).
[0238] In one possible implementation, the device priority determined by the dataSourcePriority can include two levels of priority: priority determined according to the category of the data acquisition device, and priority determined according to the model of the data acquisition device. The priority determined according to the category of the data acquisition device can refer to the description of the foregoing embodiments. The priority determined according to the model of the data acquisition device can be used to determine the priority of each model of the data acquisition device. For example, when collecting blood pressure data, the data acquisition device of the category of sphygmomanometer has multiple models: model A sphygmomanometer, model B sphygmomanometer, and the like. The priority of the model A sphygmomanometer is higher than the priority of the model B sphygmomanometer. Then, the data management module 413 can first use the priority determined according to the category of the data acquisition device to select the data 1 collected by the data acquisition device of the highest category priority from the multiple data acquisition devices collecting data 1 at time A. Further, if there are multiple data acquisition devices of the highest category priority, the data management module 413 can determine the models of the multiple data acquisition devices of the highest category priority, and use the priority determined according to the model of the data acquisition device to select the data 1 collected by the data acquisition device of the highest model priority.
[0239] In one possible implementation, the device priority determined by the dataSourcePriority can include only the priority determined according to the model of the data acquisition device. The data management module 413 can determine the models of the multiple data acquisition devices collecting data 1 at time A, and select the data 1 collected by the data acquisition device of the highest model priority according to the device priority determined by the dataSourcePriority.
[0240] The method of the data management module 413 for data fusion of the data 2 can refer to the foregoing description of the data fusion of the data 1. Here, no longer be described.
[0241] The foregoing multi-source fusion strategy can reduce the case that multiple data acquisition devices collect the same type of data at the same time, resulting in data conflict. Without being limited to the foregoing enumerated multi-source fusion strategy, the data dictionary can further include more multi-source fusion strategies.
[0242] In some embodiments, in the case that the data management module 413 receives multiple same type of data collected by one data acquisition device, the data management module 413 can perform data fusion on the multiple same type of data according to the data item mergePolicySameSource of the same source fusion strategy in the configuration file of this type of data. The method of the data management module 413 for data fusion of the data can refer to the foregoing description of the multi-source fusion of the data.
[0243] (b) Data Statistics
[0244] In a possible implementation, the data management module 413 can perform data statistics on a plurality of data 1 in a time period according to the data item statPolicy of the data statistics policy in the configuration file of the data 1. The time period may, for example, be one hour, one day, or the like. The embodiments of the present application do not limit the length of the time period.
[0245] In a case where the data management module 413 only receives the data 1 collected by the smart watch 201, the plurality of data 1 in the time period can be the plurality of data 1 collected by the smart watch 201 in the time period. In a case where the data management module 413 receives the data 1 collected by the smart watch 201 and other data collection devices, the plurality of data 1 in the time period can be the plurality of data 1 collected in the time period and processed by the multi-source fusion.
[0246] For example, in a case where the data item statPolicy in the configuration file of the data 1 is AVG, the data management module 413 can calculate the average of the plurality of data 1 in the time period.
[0247] For another example, in a case where the data item statPolicy in the configuration file of the data 1 is SUM, the data management module 413 can calculate the sum of the plurality of data 1 in the time period.
[0248] For another example, in a case where the data item statPolicy in the configuration file of the data 1 is MAX, the data management module 413 can determine the maximum of the plurality of data 1 in the time period.
[0249] For another example, in a case where the data item statPolicy in the configuration file of the data 1 is MIN, the data management module 413 can determine the minimum of the plurality of data 1 in the time period.
[0250] For another example, in a case where the data item statPolicy in the configuration file of the data 1 is SD, the data management module 413 can calculate the variance of the plurality of data 1 in the time period.
[0251] For another example, in a case where the data item statPolicy in the configuration file of the data 1 is COUNT, the data management module 413 can calculate the number of data of the plurality of data 1 in the time period.
[0252] For another example, in a case where the data item statPolicy in the configuration file of the data 1 is LAST, the data management module 413 can determine the latest value of the plurality of data 1 in the time period. The latest value can be the data with the latest collection time in the time period.
[0253] The data dictionary can also include more data statistical strategies, not limited to the above-mentioned data statistical strategies.
[0254] The data management module 413 performs data statistics on the data according to the data statistical rules, which can facilitate the business implementation module to meet the needs of displaying various types of statistical data. For example, the average value, the total value, and the data in the form of line chart, column chart, and the like are displayed.
[0255] The businesses that the business A implementation module 415 and the business B implementation module 416 need to implement can refer to the introduction of the communication system 30 described above. Figure 3 The business A implementation module 415 and the business B implementation module 416 can obtain data 1, data 2, the statistical results of data 1 under various data statistical strategies, the statistical results of data 2 under various data statistical strategies, and the like from the data management module 413.
[0256] For example, the business A implementation module 415 can be used to present data related to data 1 and data related to data 2. The business A implementation module can determine the display strategy of data 1 (such as displaying a line chart at the top of the user interface) from the configuration file of data 1, and determine the display strategy of data 2 (such as displaying a column chart at the top of the user interface) from the configuration file of data 2. The business A implementation module 415 can display data 1 obtained from the data management module 413 according to the display strategy of data 1, and display data 2 obtained from the data management module 413 according to the display strategy of data 2.
[0257] In addition, if the configuration file of data 1 defines the display strategy of the statistical data of data 1 (such as displaying the average value below the line chart of data 1 in the user interface), the business A implementation module can also obtain the statistical data of data 1 from the data management module 413, and display the statistical data of data 1 according to the display strategy of the statistical data of data 1. The method of displaying the statistical data of data 2 by the business A implementation module can refer to the method of displaying the statistical data of data 1 described above. Here, the details are not described again.
[0258] It can be understood that the user interface for displaying data related to data 1 and the user interface for displaying data related to data 2 are different user interfaces.
[0259] (3) The electronic device 100 uploads the data collected by the data collection device to the cloud server 300, and opens it to the three-party APP.
[0260] In some embodiments, the data management module 413 can send the data 1 to the cloud server 300 according to the data type definition rule in the configuration file of the data 1. The cloud server 300 can include a data storage module 417. When receiving the data 1, the cloud server 300 can determine the specific content of the data 1 according to the data type definition rule contained in the metadata corresponding to the data 1, and store the data 1 to the data storage module 417.
[0261] The process that the cloud server 300 receives the data 2 and stores the data 2 to the data storage module 417 can refer to the introduction of the cloud server 300 storing the data 1 to the data storage module 417.
[0262] In some embodiments, the data management module 413 can open the data 1 to the third-party APP according to the data type definition rule in the configuration file of the data 1. The third-party APP can determine the specific content of the data 1 according to the data type definition rule contained in the metadata corresponding to the data 1, and use the data 1 to realize its own demand business.
[0263] As can be known from the foregoing embodiments, in the case that different types of data are defined according to the rules of the data dictionary, the metadata corresponding to different types of data can have the same or similar data structure, and the data item typeID possessed by different types of data is globally unique. Therefore, the interface for data interaction between the data acquisition device and the electronic device 100 in the process that different types of data access the device management APP of the electronic device 100 can be shared, the interface for data interaction between the electronic device 100 and the cloud server 300 in the process of cloud synchronization of different types of data can be shared, and the open interface provided by the device management APP in the process of opening different types of data to the third-party APP can also be shared. When a new type of data is added, the related interfaces for the new type of data to access the electronic device 100, the cloud server 300 and to be opened to the third-party APP can be the same as the related interfaces for the existing types of data to access the electronic device 100, the cloud server 300 and to be opened to the third-party APP. The above-mentioned existing types of data are data defined according to the rules of the data dictionary. That is to say, when a new type of data accesses the electronic device 100, the cloud server 300 and is opened to the third-party APP, the developer can not need to develop an access interface suitable for the new type of data additionally. This can reduce the workload of the developer when adding a new type of data, and improve the efficiency of data access.
[0264] In some embodiments, the cloud server 300 can store a profile of one or more types of data. The profile of a type of data can be determined according to the metadata corresponding to the type of data. When a new type of data is generated, the cloud server 300 can send the profile of the new type of data to the electronic device 100. The device management APP (e.g., a sports health APP) in the electronic device 100 can update the data dictionary using the profile of the new type of data. In this way, when the new type of data collected by the data collection device is received, the device management APP can determine the content of the new type of data using the updated data dictionary, and perform calculation, display, and other processing on the new type of data according to the profile of the new type of data.
[0265] In some embodiments, when a new type of data is generated, the electronic device 100 can update the version of the device management APP in response to a user operation for updating the version of the device management APP. The data dictionary in the device management APP after version update can include the profile of the new type of data.
[0266] The following describes the process of connecting the data collected by the data collection device to the data display device, the cloud server, and the three-party APP, taking the newly added body temperature data as an example.
[0267] (1) Define the metadata corresponding to the body temperature data according to the rules of the data dictionary.
[0268] The metadata corresponding to the body temperature data can be used to determine the values of each data item possessed by the body temperature data. The metadata corresponding to the body temperature data can refer to the content shown in Table 2 below.
[0269]
[0270] Table 2
[0271] The values of each data item in Table 2 can refer to the introduction of the data dictionary in the foregoing embodiments. Here, no further description is given.
[0272] (2) Determine the profile of the body temperature data according to the metadata corresponding to the body temperature data.
[0273] The profile of the body temperature data can include:
[0274]
[0275]
[0276] It can be seen that the profile of the body temperature data defines the values of each data item of the body temperature data. Since the body temperature data is single-point data, the profile of the body temperature data only contains one field in the field list fields, i.e., the field name "fieldName" is "bodyTemperature" and the field data type identifier "fieldType" is "400011975". The profile of the body temperature data can also contain data fusion policies and statistical policies for one field in the body temperature data. For example, the statistical policy list "statPolicies" in the above profile contains four statistical policies: calculating average (AVG), calculating maximum (MAX), calculating minimum (MIN), and counting (COUNT).
[0277] The profile of the body temperature data described above can be used by the device management APP to identify the received body temperature data and perform data fusion, data statistics, and the like on the body temperature data.
[0278] (3) The data type definition rule in the profile of the body temperature data is solidified to the body temperature data collection device.
[0279] In a possible implementation, before the body temperature data collection device is shipped, the manufacturer of the body temperature data collection device can write the data type definition rule in the profile of the body temperature data to the body temperature data collection device. Alternatively, the data type definition rule in the profile of the body temperature data described above can also be written to the body temperature data collection device after the body temperature data collection device is shipped and software update is performed.
[0280] The data type definition rule described above can include data items: typeID, name, type, sensitivityLevel, validatePolicies, and displayPoliciy. One or more of the data items name, type, sensitivityLevel, validatePolicies, and displayPoliciy described above can also not be written to the body temperature data collection device.
[0281] The data type definition rule can further include a field list fields. The manufacturer of the body temperature data collection device can also write one or more data items defined in the field of the configuration file of the body temperature data into the body temperature data collection device. Since the body temperature data is single-point data, the body temperature data only has one field, i.e., the body temperature. The manufacturer of the body temperature data collection device can write the data items fieldType and unit (en) in the field definition into the body temperature data collection device. Then, the body temperature data collection device can report the body temperature data according to the above data type definition rule, and report the field included in the body temperature data according to the data items in the field definition.
[0282] (4) The body temperature data collection device reports the collected body temperature data to the data display device according to the data type definition rule of the body temperature data.
[0283] When the body temperature data is collected, the body temperature data collection device can describe the body temperature data according to the data type definition rule of the body temperature data, and send the described data to the data display device. The data display device can be a device that has a binding relationship with the body temperature data collection device.
[0284] In a possible implementation, the described body temperature data can include a type identifier typeID, a field data type identifier fieldType, and a sampling value of the field.
[0285] For example, the described body temperature data can be:
[0286] "typeID": 400011
[0287] "fieldType": 400011975
[0288] "start_time": 1626836477471
[0289] "end_time": 1626836477471
[0290] "value": 36.0
[0291] It can be understood that the "start_time" and "end_time" above can represent the start time and end time of the collection of the body temperature data, respectively. The described body temperature data by the body temperature data collection device can also include more data items, such as name, type, sensitivityLevel, validatePolicies, etc.
[0292] In another possible implementation, since the body temperature data is single-point data, the body temperature data collection device can be uniquely identified by the field data type identifier fieldType of the field contained in the body temperature data. That is, the described body temperature data can contain the field data type identifier fieldType and the sampling value of the field, but does not contain the type identifier typeID.
[0293] For example, the described body temperature data can be:
[0294] "fieldType": 400011975
[0295] "start_time": 1626836477471
[0296] "end_time": 1626836477471
[0297] "value": 36.0
[0298] In the case where the data collection device describes the data as multi-point data, the data collection device can uniquely identify the data by the type identifier typeID of the data, and identify different fields contained in the data by the field data type identifier fieldType. For example, the blood pressure data is multi-point data. The blood pressure data described according to the rules of the data dictionary can contain the type identifier typeID of the blood pressure data, the start time and end time of collection, the field data type identifier fieldType of the diastolic pressure field of the blood pressure data, the sampling value of the diastolic pressure field, the field data type identifier fieldType of the systolic pressure field of the blood pressure data, and the sampling value of the systolic pressure field.
[0299] (5) The data display device identifies the body temperature data reported by the body temperature data collection device by using the configuration file of the body temperature data, and performs calculation and display on the body temperature data and the like.
[0300] Here, the data display device is taken as the electronic device 100, and the device management APP in the data display device for managing the body temperature data collection device is taken as the sports health APP as an example for description.
[0301] The electronic device 100 stores the configuration file of the above-mentioned body temperature data. When the electronic device 100 receives the body temperature data reported from the body temperature data collection device, the sports health APP in the electronic device 100 can identify the specific content in the body temperature data by using the configuration file of the body temperature data.
[0302] For example, according to the data item "fieldType": 400011975 in the received data, the sports health APP can identify that the data is temperature data. Wherein, the sports health APP can determine that the data of fieldType 400011975 is temperature data of field name bodyTemperature according to the configuration file of the temperature data.
[0303] In some embodiments, when the data collection device reports the data collected by itself to the data display device, the data collection device can also report its device identifier to the data display device. The device identifier of each type of data collection device is globally unique. For example, the device identifier of the temperature data collection device of model A is 71. The device identifier of the temperature data collection device of model B is 72. The device identifier of the blood pressure data collection device of model C is 73. The format of the device identifier of the data collection device is not limited in the embodiments of the present application.
[0304] After the sports health APP identifies the specific content in the temperature data, the temperature data can be stored in the data storage module in the electronic device 100. For example, the storage format of the temperature data in the data storage module in the electronic device 100 can refer to the content shown in Table 3 below:
[0305] Id start_time end_time fieldType value device_id sync_status 1 1626836477471 1626836477471 400011975 36.0 71 0 2 1626836477481 1626836477481 400011975 36.2 71 0
[0306] Table 3
[0307] Wherein, each row in Table 3 can represent a record of temperature data. A record of temperature data can represent the temperature data collected by a temperature data collection device at a time. device_id in Table 3 can represent the device identifier of the data collection device. sync_status in Table 3 can represent the cloud synchronization state of the temperature data. For example, sync_status 0 can represent that the temperature data has not been uploaded to the cloud server. sync_status 1 can represent that the temperature data has been uploaded to the server. The storage format of the temperature data can also include more or less content, not limited to the content listed in Table 3. For example, data name, data unit, data sensitivity level, etc.
[0308] As can be known from the foregoing embodiments, all data defined according to the rules of the data dictionary has a globally unique type identifier typeID and has the same or similar data structure. Therefore, the sports health APP can identify all data reported according to the rules of the data dictionary through the same data identification module. The code for implementing the data identification module is the program for identifying the data reported according to the rules of the data dictionary. The data identification module can be equivalent to an interface for data interaction between the data display device and the data collection device. When a new type of data is added and the new type of data is reported according to the rules of the data dictionary, the new type of data can reuse the data interaction interface of the existing type of data during the reporting process. The developer only needs to define the configuration file of the new type of data according to the rules of the data dictionary, without the need to additionally develop a data interaction interface suitable for the new type of data. This can reduce the workload of the developer when the new type of data accesses the data display device and improve the efficiency of data access.
[0309] In some embodiments, the configuration file of the body temperature data contains a data item validation rule set validatePolicies. The sports health APP can validate the body temperature data stored in the data storage module according to validatePolicies to determine whether the body temperature data is abnormal.
[0310] In some embodiments, the sports health APP can determine data fusion and data statistics of the body temperature data according to the configuration file of the body temperature data.
[0311] For example, when it is determined that multiple body temperature data stored in the data storage module have multi-source conflicts, the sports health APP can use the data item multi-source fusion strategy mergePolicy contained in the configuration file of the body temperature data to perform data fusion on the multiple body temperature data having multi-source conflicts. The multiple body temperature data having multi-source conflicts can include body temperature data collected by multiple types of body temperature data collection devices at the same time.
[0312] The profile of the body temperature data indicates that the mergePolicy is "SOURCE_PRIORITY", that is, the priority of the data collection device is used to determine the fused data. The profile of the body temperature data includes a data item device priority dataSourcePriority. The sports health APP can select the body temperature data collected by the body temperature data collection device with the highest device priority from the multiple body temperature data with multi-source conflicts according to the dataSourcePriority. For example, the dataSourcePriority is [1, 129, 384, 57, 72, 71]. The device priority determined by the dataSourcePriority is the priority determined according to the model of the data collection device. The device identifiers in the array [1, 129, 384, 57, 72, 71] can identify a specific model of the data collection device. Among them, the body temperature data collection device with the device identifier 1 has the highest priority. The body temperature data collection device with the device identifier 71 has the lowest priority. If the above multiple body temperature data with multi-source conflicts are from the body temperature data collection device with the device identifier 129 and the body temperature data collection device with the device identifier 71, the sports health APP can select the body temperature data collected by the body temperature data collection device with the device identifier 129 as the fused body temperature data.
[0313] In some embodiments, the device priority determined by the above dataSourcePriority is the priority determined according to the category of the body temperature data collection device. The value of the dataSourcePriority can include a device category identifier. One device category identifier can identify a category of body temperature data collection devices. The sports health APP can select the body temperature data collected by the body temperature data collection device with the highest category priority as the fused body temperature data. The embodiments of the present application do not limit the representation method of the device category identifier. For example, the device category identifier can be represented by one or more of numbers, letters, and the like.
[0314] The above fused body temperature data can be used for data statistics, data display, and the like.
[0315] The profile of the body temperature data includes MAX, MIN, AVG, and COUNT, which are four statistical strategies. The sports health APP can perform statistical processing corresponding to the above four statistical strategies on the body temperature data in a period of time, and store the statistical body temperature data after the statistical processing in the data storage module of the electronic device 100. For example, the storage format of the statistical body temperature data in the data storage module of the electronic device 100 can refer to the content shown in Table 4 as follows:
[0316]
[0317]
[0318] Table 4
[0319] In Table 4, each row can represent a record of statistical temperature data. The record of statistical temperature data can represent a period of time, for example, a day, and the statistical value obtained by the sports health APP according to a statistical strategy on the received temperature data. In Table 4, Id can represent the need of the record corresponding to the row. In Table 4, date can represent the time period of the temperature data collection time for data statistics. For example, date 20210722 can represent data statistics on temperature data collected within 2021-07-22. Other contents in Table 4 can refer to the introduction of the foregoing embodiments.
[0320] In some embodiments, the sports health APP can determine the display strategy of the temperature data according to the configuration file of the temperature data. For example, in the configuration file of the temperature data, the data item display strategy displayPolicies is [1, Top], which can represent that the temperature data needs to be displayed in the form of a line chart and displayed at the top of the user interface. The sports health APP can call the code for drawing a line chart to draw a line chart of the temperature data within a period of time, and display the line chart at the top of the user interface. Optionally, the sports health APP can also display the statistical temperature data (such as the maximum value, the minimum value, etc.).
[0321] Figures 5A-5C An example is shown to illustrate the scene schematic diagram of the electronic device 100 displaying the temperature data and the statistical temperature data.
[0322] As shown in Figure 5A , the electronic device 100 can display a user interface 510. The user interface 510 displays a page on which application icons are placed. The page can include a plurality of application icons. For example, a smart life application icon, a sports health application icon 511, a YY sports application icon 512, and a ZZ health application icon 513. In response to a user operation, such as a touch operation, acting on the above-mentioned application icon, the electronic device 100 can start the application program corresponding to the application icon. It can be understood that the sports health application icon 511 corresponds to the sports health APP which can be a device management APP for managing the temperature data collection device. The YY sports application icon corresponds to the YY sports APP and the ZZ health application icon 513 corresponds to the ZZ health APP, both of which can be third-party APPs. In response to the user operation acting on the sports health application icon 511, the electronic device 100 can display the user interface 520 as shown in Figure 5B .
[0323] As shown in Figure 5BAs shown, the user interface 520 may contain multiple cards. A card can be used to present a specific type of data. For example, heart rate card 521 can be used to present heart rate data. Body temperature card 522 can be used to present body temperature data. Stress card 523 can be used to present stress data. Exercise recording card 524 can be used to present exercise recording data. In response to a user operation on a card, such as a touch operation, the electronic device 100 can display more detailed information about the data corresponding to that card. For example, sampled values of the data over a period of time, statistical data under different statistical strategies, etc. In response to a user operation on body temperature card 522, the electronic device 100 can display... Figure 5C The user interface shown is 530.
[0324] like Figure 5C As shown, the user interface 530 may include a time option area 531, a body temperature data display area 532, a body temperature average card 533, and a body temperature range card 534. The time option area 531 may contain multiple time options. When a time option is selected, the body temperature data display area 532 can display the body temperature data for the corresponding time period in the form of a line graph. For example, when the time option indicating January 15th is selected, the body temperature data display area 532 can display a line graph of all body temperature data collected by the temperature data acquisition device on January 15th. When the time option indicating January is selected, the body temperature data display area 532 can display a line graph of all body temperature data collected by the temperature data acquisition device in January. In this way, users can view body temperature data for different time periods through different time options in the time option area 531.
[0325] The body temperature mean card 533 can be used to display the mean of body temperature data over a period of time (such as within a day).
[0326] The body temperature range card 534 can be used to display the range of body temperature data fluctuations over a period of time (such as within a day). The range of body temperature data fluctuations over a period of time can be determined by the minimum and maximum values of body temperature data within that period.
[0327] The above Figures 5A-5C The user interface shown is merely an exemplary illustration of how a data display device displays body temperature data in this application embodiment, and should not be construed as limiting this application.
[0328] If the aforementioned heart rate data, body temperature data, stress data, and exercise record data are all defined in metadata according to the rules of the data dictionary, with body temperature data as a newly added data type and heart rate data, stress data, and exercise record data as existing data types, then the sports and health app can perform data fusion and data statistics on the aforementioned body temperature data (e.g., Figure 5CThe mean body temperature, the body temperature range, and the data display (e.g., the line chart in the body temperature data display area 532) are all codes that can be reused by the sports health APP to process the existing types of data. Figure 5C The codes for the mean body temperature, the body temperature range, and the data display (e.g., the line chart in the body temperature data display area 532) can all be reused by the sports health APP to process the existing types of data.
[0329] As can be seen from the above embodiments, when different types of data are defined according to the rules of the data dictionary, the codes for data fusion (e.g., multi-source fusion strategy) of these different types of data in the sports health APP can be reused, the codes for data statistics (e.g., statistical strategy) of these different types of data can be reused, and the codes for data display (e.g., line chart display data) of these different types of data can also be reused. When a new type of data is added, and the new type of data is defined according to the rules of the data dictionary, the codes for data fusion, data statistics, and data display of the new type of data can all be reused by the codes for processing the existing types of data in the sports health APP. The developer can only need to modify the part (e.g., type identifier typeID) for identifying the data in the codes for processing the existing types of data in the sports health APP to identify the content of the new type of data, without modifying the code logic for processing the data, and develop the codes for processing the new type of data. This can reduce the workload of the developer when the new type of data is accessed to the data display device, and improve the efficiency of data access.
[0330] (6) The data display device sends the body temperature data to the cloud server according to the data type definition rule of the body temperature data.
[0331] In some embodiments, the data display device can send the body temperature data that is not synchronized with the cloud in the data storage module to the cloud server. The cloud server can be an application server of a device management APP for managing the body temperature data collection device. The cloud server can identify that the received data belongs to the body temperature data and the specific content in the body temperature data according to the data type definition rule of the body temperature data.
[0332] In some embodiments, the data display device can send the body temperature data that is not synchronized with the cloud in the data storage module to the cloud server. The cloud server can be an application server of a device management APP for managing the body temperature data collection device. The cloud server can identify that the received data belongs to the body temperature data and the specific content in the body temperature data according to the data type definition rule of the body temperature data.
[0333] In some embodiments, the data display device can also download the body temperature data from the cloud server. In the case that the data display device uninstalls the device management APP and then re-downloads the device management APP, only part of the body temperature data can be stored in the data display device. Then, the data display device can download the body temperature data from the cloud server that is stored in the cloud server but not in the data display device.
[0334] Referring to the foregoing introduction of the different types of data defined according to the rules of the data dictionary by the metadata definition of the data acquisition device accessing the data display device, the different types defined according to the rules of the data dictionary by the metadata definition of the data display device accessing the cloud server can share an interactive interface for data uploading. When these data are downloaded from the cloud server to the data display device, an interactive interface for data downloading can be shared. In this way, in the case of generating new types of data, the developer can not need to develop an interactive interface for the data display device and the cloud server to transmit the new types of data every time. This can reduce the workload of the developer when the new types of data access the cloud server and improve the efficiency of data access.
[0335] (7) The data display device opens the body temperature data to the third-party APP according to the data type definition rule of the body temperature data.
[0336] In some embodiments, the third-party APP can request the device management APP in the data display device for managing the body temperature data acquisition device to obtain the open permission of the body temperature data. In the case of requesting the open permission of the body temperature data, the device management APP can provide the third-party APP with an open interface of the body temperature data. The device management APP can open the body temperature data to the third-party APP through the open interface of the body temperature data. The body temperature data opened to the third-party APP can be described according to the data type definition rule of the body temperature data. The third-party APP can identify that the obtained data belongs to the body temperature data and the specific content of the body temperature data according to the data type definition rule of the body temperature data. Optionally, the data display device can also associate the name of the body temperature data in the configuration file of the body temperature data with the body temperature data sampling value and open it to the third-party APP. In this way, the third-party APP can also not need to identify whether the obtained data belongs to the body temperature data according to the configuration file of the body temperature data.
[0337] In some embodiments, the third-party APP can include data type definition rules of different types of data. The different types of data can be defined according to the rules of the data dictionary. Then, the code for identifying the different types of data in the third-party APP can be reused, and the code for processing the different types of data can also be reused. In this way, when a new type of data is added, the code for identifying the new type of data and the code for processing the new type of data can reuse the code corresponding to the existing types of data in the third-party APP. This can reduce the workload of the developers of the third-party APP when the new type of data accesses the third-party APP, and improve the efficiency of data access.
[0338] Based on the above processing process of the body temperature data, another communication system 60 provided by the embodiments of the present application is introduced.
[0339] As shown in Figure 6 , the communication system 60 can include a body temperature data collection device 610, an electronic device 100, and a cloud server 300.
[0340] Among them:
[0341] The body temperature data collection device 610 can include a body temperature data collection module 611 and a data reporting module 612. The body temperature data collection module 611 can be used to collect body temperature data and send the body temperature data to the data reporting module 612. The data reporting module 612 has a data type definition rule written in the configuration file of the body temperature data. The data reporting module 612 can report the body temperature data to the sports health APP in the electronic device 100 according to the rules of the data dictionary.
[0342] Among them, the process of the data reporting module 612 reporting the body temperature data according to the rules of the data dictionary can be the process of describing the body temperature data according to the data type definition rule in the configuration file of the body temperature data, and sending the described body temperature data.
[0343] The electronic device 100 can include a sports health APP and a third-party APP. The sports health APP can be a device management APP for managing the body temperature data collection device 610. The sports health APP can include a data calculation module 621, a data storage module 622, a data display module 623, a data opening module 624, and a data dictionary 625.
[0344] The data dictionary 625 can include a configuration file of the body temperature data. The sports health APP can use the configuration file of the body temperature data in the data dictionary 625 to identify the body temperature data reported by the body temperature data collection device 610 according to the rules of the data dictionary.
[0345] The data computing module 621 can perform data fusion, data statistics and other computing processes on the body temperature data according to the profile of the body temperature data.
[0346] The data storage module 622 can store the body temperature data. The storage format of the body temperature data in the data storage module 622 can refer to the description of the foregoing embodiments.
[0347] The data display module 623 can be used to display a plurality of sample values of the body temperature data and statistical values obtained by data statistics on the body temperature data. In some embodiments, the displayed body temperature data can be data obtained by data fusion by the data computing module 621.
[0348] The data opening module 624 can be used to provide an opening interface of the body temperature data for a third-party APP.
[0349] As known from the foregoing embodiments, all data defined according to the metadata definition rule of the data dictionary has a globally unique type identifier typeID and has the same or similar data structure. Therefore, not limited to the body temperature data, the sports health APP can also manage other data defined according to the metadata definition rule of the data dictionary by using the data computing module 621, the data storage module 622, the data display module 623 and the data opening module 624. That is, the data computing module 621, the data storage module 622, the data display module 623 and the data opening module 624 can be reused. When a new type of data is added and the new type of data is reported according to the data dictionary rule, the developer can not need to develop other modules suitable for managing the new type of data.
[0350] The sports health APP can open the body temperature data to the third-party APP having the permission to obtain the body temperature data through the body temperature data opening interface provided by the data opening module 624. The body temperature data opened to the third-party APP can be obtained after the body temperature data is described according to the data type definition rule of the body temperature data. The described body temperature data can include the type identifier of the body temperature data and the sample value of the body temperature data. The third-party APP can identify the obtained body temperature data according to the data type definition rule of the body temperature data, and use the body temperature data to realize its own demand business. Optionally, the sports health APP can also associate the name of the body temperature data in the profile of the body temperature data with the sample value of the body temperature data, and open it to the third-party APP. In this way, the third-party APP can also not need to identify whether the obtained data belongs to the body temperature data according to the profile of the body temperature data.
[0351] The motion health APP can also perform cloud synchronization on the body temperature data. The motion health APP can describe the body temperature data according to a data type definition rule of the body temperature data, and send the described body temperature data to the cloud server 300. The described body temperature data can include a type identifier of the body temperature data and a sampling value of the body temperature data. The cloud server 300 can identify the received body temperature data according to the data type definition rule of the body temperature data, and store the body temperature data. Alternatively, the motion health APP can also send the sampling value of the body temperature data and the name of the body temperature data identified according to the configuration file of the body temperature data to the cloud server. In this way, the cloud server can directly store the received body temperature data without identifying whether the received data belongs to the body temperature data according to the data type definition rule of the body temperature data and then storing the data.
[0352] It can be seen that, by using the rule of the data dictionary designed in the embodiments of the present application, in the case of adding a type of data, the code for processing the newly added type of data, such as accessing the data to the data display device, the cloud server, the third-party APP, and the data display device for analyzing and displaying the data, can reuse the code for processing the existing type of data. This can reduce the workload of the developers and improve the efficiency of data access.
[0353] The above-described embodiments are only used to illustrate the technical solutions of the present application, but not limit the present application; although the present application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that: it can still modify the technical solutions recorded in the foregoing embodiments, or make equivalent replacement for part of the technical features; and these modifications or replacements do not make the essence of the corresponding technical solutions deviate from the scope of the technical solutions of the embodiments of the present application.
Claims
1. A data processing method, characterized by, The method comprises: The first device receives first data from a first data collection device, the first data comprising a first data identifier and a first sample value of a first type of data, and conforming to rules of a first configuration file, the first configuration file being defined according to first rules, the first rules comprising data type definition rules and data processing rules, the first configuration file comprising a first set of data items of the first type of data defined according to the data type definition rules and a second set of data items of the first type of data defined according to the data processing rules, the first set of data items comprising the first data identifier, the first data identifier being used to identify the first type of data, the first data identifier being unique among data identifiers defined according to the first rules, the second set of data items comprising one or more data processing strategies: a data fusion strategy, a data statistics strategy; The first device identifies, according to the first data identifier and the first set of data items, that the first data belongs to the first type of data; The first device processes the first data according to the data processing strategy in the second set of data items.
2. The method of claim 1, wherein, The first rules are rules of a data dictionary.
3. The method according to claim 1 or 2, further comprising: The first device receives second data from a second data collection device, the second data comprising a second data identifier and a second sample value of a second type of data, and conforming to rules of a second configuration file, the second configuration file being defined according to the first rules, the second configuration file comprising the second data identifier, the second data identifier being used to identify the second type of data, the second data identifier being unique among data identifiers defined according to the first rules; The first device identifies, according to the second data identifier and the second configuration file, that the second data belongs to the second type of data; wherein the program used by the first device to identify the first data and the program used by the first device to identify the second data are the same.
4. The method according to claim 1 or 2, characterized in that, The first sample value is collected by the first data collection device at a first time, and the method further comprises: The first device receives M sample values of the first type of data, the M sample values being respectively collected by M data collection devices at the first time; M being a positive integer; The first device determines, from the first configuration file, that the data fusion strategy of the first type of data is a first fusion strategy, and determines, according to the first fusion strategy, a sample value from the first sample value and the M sample values as the sample value of the first type of data at the first time; the first fusion strategy being any one of: taking the maximum value, taking the minimum value, taking the value stored in the first device for the earliest time, taking the value stored in the first device for the latest time, and taking the sample value collected by a device with the highest priority among the first data collection device and the M data collection devices.
5. The method according to claim 1 or 2, characterized in that, The method further comprises: The first device determines, from the first configuration file, that a data statistical strategy of the first type of data is a first statistical strategy, the first statistical strategy including one or more of: calculating a maximum value, calculating a minimum value, calculating a mean value, summing, calculating a variance, calculating a number of sample values, and determining a sample value with a latest acquisition time; The first device performs data statistics on N sample values of the first type of data with acquisition times within a first time period according to the first statistical strategy, N being a positive integer.
6. The method of claim 3, wherein, The first device includes a display device, and the first configuration file includes a first display strategy of the first type of data, the first display strategy including one or more of: a first display form and a first display position; the method further includes: The first device displays, through the display device, the received sample values of the first type of data on a first user interface according to the first display strategy.
7. The method of claim 6, wherein, The second configuration file includes a second display strategy of a second type of data, the second display strategy being the same as the first display strategy; the method further includes: The first device displays, through the display device, the received sample values of the second type of data on a second user interface according to the first display strategy; and the program for causing the sample values of the first type of data to be displayed according to the first display strategy is the same as the program for causing the sample values of the second type of data to be displayed according to the first display strategy.
8. The method of claim 1 or 2, wherein, The first configuration file includes first description information of the first type of data; the method further includes: The first device sends third data to a cloud server, the third data including the first description information and the sample values of the first type of data.
9. The method of claim 1 or 2, wherein, The first device has installed a first application program, the first application program having a permission to acquire the first type of data, and the first configuration file includes first description information of the first type of data; the method further includes: The first device provides fourth data to the first application program in response to a request of the first application program to acquire the first type of data; the fourth data includes the first description information and the sample values of the first type of data.
10. The method of claim 1 or 2, wherein, The first device is a cloud server; the method further includes: The cloud server sends fifth data to a data display device, the fifth data including the first data identifier and the sample values of the first type of data.
11. The method of claim 1 or 2, wherein, The first data acquisition device is any one of: a smart watch, a smart bracelet, a body fat scale, smart glasses, a thermometer, a sphygmomanometer, and a heart rate monitoring device.
12. The method of claim 1 or 2, wherein, The first type of data is any one of: walking data, running data, swimming data, cycling data, sleep data, weight data, stress data, heart rate data, blood pressure data, body temperature data, blood oxygen data, and blood glucose data.
13. A communication system, characterized by The communication system includes a first data acquisition device and a data display device, wherein The first data collection device is configured to acquire first data and send the first data to the data display device. The first data includes a first data identifier and a first sample value of a first type of data, and conforms to a first configuration file defined according to a first rule. The first rule includes a data type definition rule and a data processing rule. The first configuration file includes a first set of data items of the first type of data defined according to the data type definition rule, and a second set of data items of the first type of data defined according to the data processing rule. The first set of data items includes the first data identifier, and the first data identifier is used to identify the first type of data. The first data identifier is unique in data identifiers defined according to the first rule. The second set of data items includes one or more data processing strategies, such as a data fusion strategy and a data statistical strategy. The data display device is configured to identify, according to the first data identifier and the first set of data items, that the first data belongs to the first type of data. The data display device is further configured to process the first data according to the data processing strategy in the second set of data items.
14. The communication system of claim 13, wherein, The communication system further includes a cloud server, and the first configuration file includes first description information of the first type of data. The data display device is further configured to send third data to the cloud server. The third data includes the first description information and a sample value of the first type of data. The cloud server is configured to store the third data.
15. An apparatus, comprising: The device includes a memory and a processor. The memory is configured to store a computer program, and the processor is configured to invoke the computer program, so that the device executes the method in any one of claims 1-12.
16. A computer-readable storage medium comprising instructions, wherein: When the instructions run on the device, the device executes the method in any one of claims 1-12.
17. A computer program product, characterised in that, The computer program product includes computer instructions. When the computer instructions run on the device, the device executes the method in any one of claims 1-12.
Citation Information
Patent Citations
Conventional data collecting system capable of collecting various structural data sources and collecting method
CN103473378A
Human health degree monitoring method based on big data analysis
CN107669250A
Method and System for Semantically Unifying Data
US20110246530A1