Data transmission method, system and related apparatus
By verifying and binding relationships with servers, the limitations of data security and communication methods for smart devices are resolved, enabling remote data transmission and secure presentation of smart devices, and supporting data transmission for various health devices.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- HUAWEI TECH CO LTD
- Filing Date
- 2021-11-08
- Publication Date
- 2026-06-09
AI Technical Summary
Because smart devices have small display screens, they face issues with data security and limited communication methods when they need to rely on other devices to present data. In particular, devices that do not support Bluetooth communication cannot achieve secure access.
By performing security verification between the first and second devices via a server, a binding relationship is established, and the storage space and data output conditions of the first device are utilized to achieve remote data transmission and secure presentation of the second device.
It enables smart devices with limited storage space and data output conditions to securely and remotely access other devices. By leveraging their storage space and data output conditions, it compensates for software and hardware deficiencies and supports data transmission from various health devices.
Smart Images

Figure CN116095623B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of terminals, and in particular to data transmission methods, systems and related devices. Background Technology
[0002] With the continuous development of technology, more and more manufacturers are dedicated to producing various smart devices, such as smart bracelets, blood glucose meters, blood pressure monitors, treadmills, etc. Because the display screens of these smart devices are too small, they still need to rely on electronic devices with superior display screens, such as mobile phones and tablets, to present data to users. Most of these smart devices use Bluetooth communication technology to bind with and transmit data to electronic devices, which then display the data. During the binding process, it is usually necessary to scan the smart device's barcode to obtain its information. The open nature of barcodes poses a risk of malicious binding and interception of smart device data. Furthermore, some devices do not support Bluetooth communication.
[0003] How to solve the above problems so that smart devices can be securely connected to other devices is an urgent issue to be addressed. Summary of the Invention
[0004] This application provides a data transmission method, system, and related apparatus. This method enables devices with limited storage space, limited data output conditions, and limited communication methods to securely and remotely access other devices and transmit data to other devices, thereby enabling the output of local data by utilizing the storage space and data output conditions of other devices.
[0005] In a first aspect, this application provides a data transmission method applied to a communication system including a first device, a second device, a first server, and a second server; the first server stores user accounts, and the second server stores the binding relationship between the user accounts and the second device; the method includes: the second device generating first data, the first data including a user's health data; the second device sending the first data to the second server; the second server sending the first data and the user account to the first server; the first server sending the first data to the first device logged into the first server using the user account; and the first device outputting the first data.
[0006] After implementing the method provided in the first aspect, the second device can securely and remotely access the first device and transmit data to the first device, thereby enabling the output of data from the second device using the storage space and data output conditions of the first device.
[0007] In conjunction with the method provided in the first aspect, before the second device generates the first data, the method further includes: the first device logging into the first server using a user account and obtaining the identifier of the second device; the first device sending a binding request to the second server, the binding request carrying the user account and the identifier of the second device; and the second server storing the binding relationship between the user account and the identifier of the second device.
[0008] In conjunction with the method provided in the first aspect, the first device obtains the identifier of the second device, specifically including: the first device receiving the identifier of the second device input by a user; or, the first device scanning the barcode of the second device, parsing the barcode, and obtaining the identifier of the second device; or, the first device reading the barcode electronic tag through NFC technology to obtain the identifier of the second device.
[0009] In this way, the first device can obtain the identifier of the second device to be bound through multiple methods, which facilitates the establishment of the binding relationship between the two on the second server side, further improving the feasibility of this solution.
[0010] In conjunction with the method provided in the first aspect, before the second device generates the first data, the method further includes: the second server performing a security verification on the first device; the result of the security verification being passed; or, the second server and the first device performing a security verification on each other; the result of the security verification being passed; or, the first device performing a security verification on the second server; the result of the security verification being passed.
[0011] In this way, before the first device sends a binding request to the second server, it needs to pass the security verification of the second server. This can prevent other devices from binding maliciously and further improve the security of this solution.
[0012] In conjunction with the method provided in the first aspect, when the second server sends the first data to the first server for the first time as the first transmission; the method further includes that the second server also carries the user account when sending the first data.
[0013] In this way, the first server can accurately push the first data generated by the second device to the first device logged in with a user account, based on the correspondence between the second device and the user account.
[0014] In conjunction with the method provided in the first aspect, before the first server sends the first data to the first device that logs in to the first server using the user account, the method further includes: the first device logging in to the first server using the user account through an application, a mini-program, or a webpage.
[0015] In this way, the first device can log in to the first server using a user account in multiple ways to receive short data from the second device, which improves the feasibility of this solution.
[0016] In conjunction with the method provided in the first aspect, before the second server sends the first data to the first server, the method further includes: the first server performing a security verification on the second server; the result of the security verification being passed; or, the first server and the second server performing a security verification on each other; the result of the security verification being passed; or, the second server performing a security verification on the first server; the result of the security verification being passed.
[0017] This prevents the first server from being maliciously written to by other servers, and also prevents the second server from accidentally writing data to other servers, thus ensuring secure data transmission.
[0018] In conjunction with the method provided in the first aspect, the first server is provided by the manufacturer of the first device; the second server is provided by the manufacturer of the second device; the manufacturers of the first device and the second device may be the same or different.
[0019] This allows the first device to support access from other devices developed by the first device manufacturer, as well as other devices not developed by the first device manufacturer, thereby expanding the scope of implementation of this solution.
[0020] In conjunction with the method provided in the first aspect, the storage space of the first device is greater than the storage space of the second device, and / or the information output conditions of the first device are better than the information output conditions of the second device.
[0021] In this way, the second device can use the hardware and software conditions of the first device to output local data, thus making up for the hardware and software deficiencies of the first device.
[0022] In conjunction with the method provided in the first aspect, the second device includes any one or more of the following: a blood glucose meter, a blood pressure monitor, a treadmill, a body fat scale, or a smart bracelet.
[0023] In this way, the first device can support a wide variety of health devices, sports devices, etc.
[0024] In conjunction with the method provided in the first aspect, the second device generates the first data specifically by: the second device collecting the first data.
[0025] In this way, the first data that the second device can generate can be specifically obtained by collecting the user's exercise and health data.
[0026] In conjunction with the method provided in the first aspect, the second device uses any one or more of the following communication technologies to send the first data to the second server: GSM, GPRS, CDMA, WCDMA, TD-SCDMA, LTE, GNSS, or WLAN.
[0027] In this way, the second device can implement this scheme through multiple communication methods, thereby increasing the feasibility of the scheme.
[0028] Secondly, this application provides a data transmission method applied to a first device; the method includes: the first device receiving first data; the first data including a user's health data; the first data being generated by a second device and sent to the first device first through a second server and then through a first server; wherein the first server stores a user account, and the second server stores the binding relationship between the user account and the second device; and the first device outputting the first data.
[0029] After implementing the method provided in the second aspect, the second device can securely and remotely access the first device and transmit data to the first device, thereby enabling the output of data from the second device using the storage space and data output conditions of the first device.
[0030] In conjunction with the method provided in the second aspect, before the first device receives the first data, the method further includes: the first device logging into the first server using the user account and obtaining the identifier of the second device; the first device sending a binding request to the second server, the binding request carrying the user account and the identifier of the second device; the user account and the identifier of the second device being used to store the binding relationship between the user account and the identifier of the second device in the second server.
[0031] In conjunction with the method provided in the second aspect, the first device obtains the identifier of the second device, specifically including: the first device receiving the identifier of the second device input by a user; or, the first device scanning the barcode of the second device, parsing the barcode, and obtaining the identifier of the second device; or, the first device reading the barcode electronic tag through NFC technology to obtain the identifier of the second device.
[0032] In this way, the first device can obtain the identifier of the second device to be bound through multiple methods, which facilitates the establishment of the binding relationship between the two on the second server side, further improving the feasibility of this solution.
[0033] In conjunction with the method provided in the second aspect, before the first device sends a binding request to the second server, the method further includes: the first device passing the security verification of the second server; or, the first device and the second server performing security verification on each other; the result of the security verification being passed; or, the first device performing security verification on the second server; the result of the security verification being passed.
[0034] In this way, before the first device sends a binding request to the second server, it needs to pass the security verification of the second server. This can prevent other devices from binding maliciously and further improve the security of this solution.
[0035] In conjunction with the method provided in the second aspect, before the first device outputs the first data, the method further includes: the first device logging into the first server using a user account through an application, a mini-program, or a webpage.
[0036] In this way, the first device can log in to the first server using a user account in multiple ways to receive short data from the second device, which improves the feasibility of this solution.
[0037] In conjunction with the method provided in the second aspect, the first server is provided by the manufacturer of the first device; the second server is provided by the manufacturer of the second device; the manufacturers of the first device and the second device may be the same or different.
[0038] This allows the first device to support access from other devices developed by the first device manufacturer, as well as other devices not developed by the first device manufacturer, thereby expanding the scope of implementation of this solution.
[0039] In conjunction with the method provided in the second aspect, the storage space of the first device is greater than the storage space of the second device, and / or the information output conditions of the first device are better than the information output conditions of the second device.
[0040] In this way, the second device can use the hardware and software conditions of the first device to output local data, thus making up for the hardware and software deficiencies of the first device.
[0041] In conjunction with the method provided in the second aspect, the second device includes any one or more of the following: a blood glucose meter, a blood pressure monitor, a treadmill, a body fat scale, or a smart bracelet.
[0042] In this way, the first device can support a wide variety of health devices, sports devices, etc.
[0043] In conjunction with the method provided in the second aspect, the second device generating the first data specifically includes: the second device collecting the first data.
[0044] In this way, the first data that the second device can generate can be specifically obtained by collecting the user's exercise and health data.
[0045] In conjunction with the method provided in the second aspect, the second device uses any one or more of the following communication technologies to send the first data to the second server: GSM, GPRS, CDMA, WCDMA, TD-SCDMA, LTE, GNSS, or WLAN.
[0046] In this way, the second device can implement this scheme through multiple communication methods, thereby increasing the feasibility of the scheme.
[0047] Thirdly, this application provides a data transmission method, which is applied in a second device; the method includes:
[0048] The second device generates first data, which includes the user's health data; the second device sends the first data, first through a second server and then through a first server, to the first device that logs in to the first server using the user account; the first device is used to output the first data; wherein, the first server stores the user account, and the second server stores the binding relationship between the user account and the second device.
[0049] After implementing the method provided in the third aspect, the second device can securely and remotely access the first device and transmit data to the first device, thereby enabling the output of data from the second device using the storage space and data output conditions of the first device.
[0050] In conjunction with the method provided by the third aspect, the first server is provided by the manufacturer of the first device; the second server is provided by the manufacturer of the second device; the manufacturers of the first device and the second device may be the same or different.
[0051] This allows the first device to support access from other devices developed by the first device manufacturer, as well as other devices not developed by the first device manufacturer, thereby expanding the scope of implementation of this solution.
[0052] In conjunction with the method provided by the third aspect, the storage space of the first device is greater than the storage space of the second device, and / or the information output conditions of the first device are better than the information output conditions of the second device.
[0053] In this way, the second device can use the hardware and software conditions of the first device to output local data, thus making up for the hardware and software deficiencies of the first device.
[0054] In conjunction with the method provided in the third aspect, the second device includes any one or more of the following: a blood glucose meter, a blood pressure monitor, a treadmill, a body fat scale, or a smart bracelet.
[0055] In this way, the first device can support a wide variety of health devices, sports devices, etc.
[0056] In conjunction with the method provided by the third aspect, the second device generates the first data specifically by: the second device collecting the first data.
[0057] In this way, the first data that the second device can generate can be specifically obtained by collecting the user's exercise and health data.
[0058] In conjunction with the method provided in the third aspect, the second device uses any one or more of the following communication technologies to send the first data to the second server: GSM, GPRS, CDMA, WCDMA, TD-SCDMA, LTE, GNSS, or WLAN.
[0059] In this way, the second device can implement this scheme through multiple communication methods, thereby increasing the feasibility of the scheme.
[0060] Fourthly, this application provides a data transmission method applied to a first server; the first server stores user accounts, and the method includes: the first server receiving first data sent by a second server; the first data being generated by a second device and sent to the second server; the first data including user health data; the first server sending the first data to a first device that logs in to the first server using the user account; and the first device outputting the first data.
[0061] After implementing the method provided in the fourth aspect, the second device can securely and remotely access the first device and transmit data to the first device, thereby enabling the output of data from the second device using the storage space and data output conditions of the first device.
[0062] In conjunction with the method provided in the fourth aspect, when the first server receives the first data sent by the second server for the first time; the method further includes that the first server also carries the user account when receiving the first data.
[0063] In this way, the first server can accurately push the first data generated by the second device to the first device logged in with a user account, based on the correspondence between the second device and the user account.
[0064] In conjunction with the method provided in the fourth aspect, before the first server receives the first data sent by the second server, the method further includes: the first server performing a security verification on the second server; the result of the security verification being passed; or, the first server and the second server performing security verification on each other; the result of the security verification being passed; or, the second server passing the security verification of the first server.
[0065] This prevents the first server from being maliciously written to by other servers, and also prevents the second server from accidentally writing data to other servers, thus ensuring secure data transmission.
[0066] In conjunction with the method provided in the fourth aspect, the first server is provided by the manufacturer of the first device; the second server is provided by the manufacturer of the second device; the manufacturers of the first device and the second device may be the same or different.
[0067] This allows the first device to support access from other devices developed by the first device manufacturer, as well as other devices not developed by the first device manufacturer, thereby expanding the scope of implementation of this solution.
[0068] In conjunction with the method provided in the fourth aspect, the storage space of the first device is greater than the storage space of the second device, and / or the information output conditions of the first device are better than the information output conditions of the second device.
[0069] In this way, the second device can use the hardware and software conditions of the first device to output local data, thus making up for the hardware and software deficiencies of the first device.
[0070] In conjunction with the method provided in the fourth aspect, the second device includes any one or more of the following: a blood glucose meter, a blood pressure monitor, a treadmill, a body fat scale, or a smart bracelet.
[0071] In this way, the first device can support a wide variety of health devices, sports devices, etc.
[0072] Fifthly, this application provides a data transmission method applied to a second server; the second server stores the binding relationship between a user account and a second device; the method includes: the second server receiving first data sent by the second device; the first data being generated by the second device and including user health data; the second server sending the first data through the first server to a first device logged into the first server using the user account; the first server storing the user account; and the first device outputting the first data.
[0073] After implementing the method provided in the fifth aspect, the second device can securely and remotely access the first device and transmit data to the first device, thereby enabling the output of data from the second device using the storage space and data output conditions of the first device.
[0074] In conjunction with the method provided in the fifth aspect, before the second server sends the first data to the first device that logs in to the first server using the user account, the method further includes: the second server receiving a binding request sent by the first device; the binding request carrying the user account and the identifier of the second device; and the second server storing the binding relationship between the user account and the identifier of the second device.
[0075] In conjunction with the method provided in the fifth aspect, before the second server receives the binding request sent by the first device, the method further includes: the second server performing a security verification on the first device; the result of the security verification being passed; or, the second server and the first device performing a security verification on each other; the result of the security verification being passed; or, the second server performing a security verification through the first device.
[0076] In this way, before the first device sends a binding request to the second server, it needs to pass the security verification of the second server. This can prevent other devices from binding maliciously and further improve the security of this solution.
[0077] In conjunction with the method provided in the fifth aspect, when the second server first sends the first data to the first server; the method further includes that the second server also carries the user account when sending the first data.
[0078] In this way, the first server can accurately push the first data generated by the second device to the first device logged in with a user account, based on the correspondence between the second device and the user account.
[0079] In conjunction with the method provided in the fifth aspect, before the second server sends the first data to the first server, the method further includes: the second server performing a security verification on the first server; or, the second server and the first server performing a security verification on each other; the result of the security verification being passed; or, the second server performing a security verification on the first server; the result of the security verification being passed.
[0080] This prevents the first server from being maliciously written to by other servers, and also prevents the second server from accidentally writing data to other servers, thus ensuring secure data transmission.
[0081] In conjunction with the method provided in the fifth aspect, the first server is provided by the manufacturer of the first device; the second server is provided by the manufacturer of the second device; the manufacturers of the first device and the second device may be the same or different.
[0082] This allows the first device to support access from other devices developed by the first device manufacturer, as well as other devices not developed by the first device manufacturer, thereby expanding the scope of implementation of this solution.
[0083] In conjunction with the method provided in the fifth aspect, the storage space of the first device is greater than the storage space of the second device, and / or the information output conditions of the first device are better than the information output conditions of the second device.
[0084] In this way, the second device can use the hardware and software conditions of the first device to output local data, thus making up for the hardware and software deficiencies of the first device.
[0085] In conjunction with the method provided in the fifth aspect, the second device includes any one or more of the following: a blood glucose meter, a blood pressure monitor, a treadmill, a body fat scale, or a smart bracelet.
[0086] In this way, the first device can support a wide variety of health devices, sports devices, etc.
[0087] In conjunction with the method provided in the fifth aspect, the second server uses any one or more of the following communication technologies to receive the first data sent by the second device: GSM, GPRS, CDMA, WCDMA, TD-SCDMA, LTE, GNSS, or WLAN.
[0088] In this way, the second device can implement this scheme through multiple communication methods, thereby increasing the feasibility of the scheme.
[0089] In a sixth aspect, this application provides an electronic device including one or more processors and one or more memories; wherein the one or more memories are coupled to the one or more processors, and the one or more memories are used to store computer program code including computer instructions, which, when executed by the one or more processors, cause the electronic device to perform the method as described in any of the second aspects above.
[0090] In a seventh aspect, this application provides an electronic device including one or more processors and one or more memories; wherein the one or more memories are coupled to the one or more processors, and the one or more memories are used to store computer program code, the computer program code including computer instructions, which, when executed by the one or more processors, cause the electronic device to perform the method as described in any of the third aspects above.
[0091] Eighthly, this application provides a computer program product containing instructions that, when run on an electronic device, cause the electronic device to perform the method as described in any of the second aspects above.
[0092] Ninthly, this application provides a computer program product containing instructions that, when run on an electronic device, cause the electronic device to perform the method as described in any of the third aspects above.
[0093] In a tenth aspect, this application provides a computer-readable storage medium including instructions that, when executed on an electronic device, cause the electronic device to perform the method as described in any of the second aspects above.
[0094] In one aspect, this application provides a computer-readable storage medium including instructions that, when executed on an electronic device, cause the electronic device to perform the method as described in any of the third aspects above.
[0095] In a twelfth aspect, this application provides a communication system comprising a first device, a second device, a first server, and a second server. The first device is configured to perform the method as described in any of the second aspects above; the second device is configured to perform the method as described in any of the third aspects above; the first server is configured to perform the method as described in any of the fourth aspects above; and the second device is configured to perform the method as described in any of the fifth aspects above. Attached Figure Description
[0096] Figure 1 A schematic diagram of a communication system provided in an embodiment of this application;
[0097] Figure 2A A schematic diagram of the hardware architecture of an electronic device 100 provided in an embodiment of this application;
[0098] Figure 2B A schematic diagram of the software architecture of an electronic device 100 provided in an embodiment of this application;
[0099] Figure 3 A schematic diagram of the hardware architecture of an electronic device 200 provided in an embodiment of this application;
[0100] Figure 4 A schematic diagram of the hardware architecture of a server 100 provided for an embodiment of this application;
[0101] Figure 5 A schematic diagram of the hardware architecture of a server 200 provided for an embodiment of this application;
[0102] Figure 6 This application provides a schematic flowchart of a method for an electronic device 200 to access an electronic device 100.
[0103] Figures 7A-7J This is a schematic diagram of a user interface for a set of electronic devices 200 connected to electronic device 100, provided in an embodiment of this application. Detailed Implementation
[0104] The technical solutions in the embodiments of this application will be clearly and thoroughly described below with reference to the accompanying drawings. In the description of the embodiments of this application, unless otherwise stated, " / " means "or," for example, A / B can mean A or B; the word "and / or" in the text is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, and B existing alone.
[0105] Hereinafter, the terms "first" and "second" are used for descriptive purposes only and should not be construed as implying or suggesting relative importance or implicitly indicating the number of indicated technical features. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more of that feature, and in the description of the embodiments of this application, unless otherwise stated, "multiple" means two or more.
[0106] In this application, the reference to "embodiment" means that a specific feature, structure, or characteristic described in connection with an embodiment may be included in at least one embodiment of this application. The appearance of this phrase in various places throughout the specification does not necessarily refer to the same embodiment, nor is it a mutually exclusive, independent, or alternative embodiment. It will be explicitly and implicitly understood by those skilled in the art that the embodiments described in this application can be combined with other embodiments.
[0107] The term "user interface (UI)" used in the following embodiments of this application refers to the medium interface through which an application or operating system interacts and exchanges information with the user. It realizes the conversion between the internal form of information and the form that the user can accept. The user interface is source code written in a specific computer language such as Java or Extensible Markup Language (XML). The interface source code is parsed and rendered on the electronic device, ultimately presenting content that the user can recognize. A common form of user interface is the graphical user interface (GUI), which refers to a user interface related to computer operation displayed graphically. It can be visible interface elements such as text, icons, buttons, menus, tabs, text boxes, dialog boxes, status bars, navigation bars, and widgets displayed on the screen of an electronic device.
[0108] More and more smart wearable devices can connect to mobile phones, leveraging the powerful data integration, storage, and presentation capabilities of mobile phones to present data from smart wearable devices to users in a rich, vivid, and comprehensive way. One feasible approach is to use Bluetooth communication technology to connect to and transmit data to a mobile phone.
[0109] Next, we will refer to the mobile phone as the first device and the smart wearable device as the second device to introduce the specific methods for achieving data transmission via Bluetooth communication.
[0110] Phase 1: Pairing the first device with the second device.
[0111] First, the first device needs to establish a binding relationship with the second electronic device. The binding can be achieved through any of the following methods: the electronic device scans the smart device's barcode to obtain its name, type, Bluetooth address, and the protocol it uses; or the electronic device uses NFC to identify the smart device's electronic tag by tapping it against the smart device; or the electronic device manually inputs the smart device's information to identify its name, type, Bluetooth address, and the protocol it uses.
[0112] Then, the first device can send a pairing request to the second device via Bluetooth broadcast, based on the Bluetooth communication address, the protocol used, etc. Optionally, this request can include the pairing password of the second device. After the second device receives the request, or receives the request and detects that the pairing password is correct, the second device sends a pairing success message to the first device, that is, the first device and the second device establish a pairing relationship.
[0113] Phase Two: The second device sends data to the first device.
[0114] After successful pairing, the second device can store information about the first device, such as the first device's Bluetooth communication address. When the second device needs to transmit data to the first device, it can transmit data to the second device based on the first device's Bluetooth communication address.
[0115] However, during the pairing and data transmission between the second and first devices, the communication distance between them must remain within the Bluetooth communication range. If this range is exceeded, pairing and data transmission failures will occur. Furthermore, second devices that do not support Bluetooth communication cannot connect to the first device using the aforementioned method.
[0116] To address the aforementioned issues, this application provides a method, system, and apparatus for data transmission. In this method, if the second device does not support Bluetooth communication, it can access the first device via GPRS, GSM, or other communication technologies. Specifically, after passing security verification by the second device's server, the first device first establishes a binding relationship with the second device. Then, after passing security verification by the first device's server, the second device's server can push data from the second device to the first device through the first device's server, and present the data from the second device to the user using the output data of the electronic device. This achieves secure and remote access for the second device to the first device.
[0117] The first and second devices must support one or more of the following communication technologies: Global System for Mobile Communications (GSM), General Packet Radio Service (GPRS), Code Division Multiple Access (CDMA), Wideband Code Division Multiple Access (WCDMA), Time Division Code Division Multiple Access (TD-SCDMA), Long Term Evolution (LTE), 5G, Global Navigation Satellite System (GNSS), and Wireless Local Area Networks (WLAN). Optionally, the first and second devices may also support Bluetooth (BT) communication technology.
[0118] Furthermore, the modules used for outputting data in the first device, such as display modules or audio modules, are superior to those in the second device. For example, the first device has a larger display screen and supports a wider color gamut, while the second device either lacks a display screen or has a smaller display screen and supports a narrower color gamut. Also, the first device has a better sound quality from its earpiece and speakers, while the second device either lacks an earpiece and speakers or has poor sound quality from them.
[0119] Next, let's combine... Figure 1 This application provides a detailed description of the communication system used in the data transmission method.
[0120] like Figure 1 As shown, the communication system includes: electronic device 100, electronic device 200, server 100, and server 200.
[0121] Electronic device 100 can also be referred to as the first device. Electronic device 100 can be: mobile phone, tablet computer, desktop computer, laptop computer, handheld computer, notebook computer, ultra-mobile personal computer (UMPC), netbook, as well as cellular phone, personal digital assistant (PDA), augmented reality (AR) device, virtual reality (VR) device, artificial intelligence (AI) device, wearable device, in-vehicle device, smart home device and / or smart city device. The specific type of electronic device is not particularly limited in the embodiments of this application.
[0122] Electronic device 200 can also be referred to as a second device. Electronic device 100 can be a smart bracelet, blood glucose meter, blood pressure monitor, body fat scale, heart rate monitor, treadmill, or other smart devices. This application embodiment does not impose any special limitations on the specific type of electronic device.
[0123] Server 100 is a cloud server used to provide application services to electronic device 100, such as pushing application messages to electronic device 100. There can be one or more servers 100. This application embodiment does not impose a special limitation on the number of servers.
[0124] Server 200 is a server used to provide data storage, data processing, data transmission, and other services for electronic device 200. There can be one or more servers 200. This application embodiment does not impose a special limitation on the number of servers.
[0125] In the communication system provided in this application, electronic device 100 can obtain device information and user information from electronic device 200. After passing the security verification by server 200, it sends the device information and user information to server 200, thus completing the binding between electronic device 200 and the user on server 200. After successful binding, data generated or collected by electronic device 200 is presented on the user's electronic device 100. Specifically, the data transmission from electronic device 100 to electronic device 200 includes: server 200 first obtaining the device data based on the received device information of electronic device 200; then, based on the user information, writing the data into the server 100 corresponding to the user's electronic device 100; finally, server 100 can push the data to electronic device 100, and electronic device 100 outputs the data to the user. It is worth noting that before server 100 writes data to server 200, it must first pass the security verification of server 200. Only in this way can electronic device 200 securely access electronic device 100 and output data from electronic device 200 to electronic device 100.
[0126] To provide a clearer and more detailed description of the data transmission method provided in the embodiments of this application, the hardware and software architecture of the electronic device 100 and electronic device 200 involved in implementing the method provided in the embodiments of this application will be described below.
[0127] Figure 2A A schematic diagram of the hardware structure of the electronic device 100 is shown.
[0128] Electronic device 100 may include processor 110, external memory interface 120, internal memory 121, universal serial bus (USB) interface 130, charging management module 140, power management module 141, battery 142, antenna 1, antenna 2, mobile communication module 150, wireless communication module 160, audio module 170, speaker 170A, receiver 170B, microphone 170C, headphone jack 170D, sensor module 180, button 190, motor 191, indicator 192, camera 193, display screen 194, and subscriber identification module (SIM) card interface 195, etc. The sensor module 180 may include a pressure sensor 180A, a gyroscope sensor 180B, a barometric pressure sensor 180C, a magnetic sensor 180D, an accelerometer sensor 180E, a distance sensor 180F, a proximity 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.
[0129] It is understood that the structures illustrated in the embodiments of the present invention do not constitute a specific limitation on the electronic device 100. In other embodiments of this application, the electronic device 100 may include more or fewer components than illustrated, or combine some components, or split some components, or have different component arrangements. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.
[0130] Processor 110 may include one or more processing units, such as application processors (APs), modem processors, graphics processing units (GPUs), image signal processors (ISPs), controllers, video codecs, digital signal processors (DSPs), baseband processors, and / or neural network processing units (NPUs). These different processing units may be independent devices or integrated into one or more processors. The controller can generate operation control signals based on instruction opcodes and timing signals to control instruction fetching and execution.
[0131] In this embodiment, the processor 110 first acquires device information of the electronic device 200 and user message information of the electronic device 100. Specifically, the processor 110 acquires device information of the electronic device 200 by: calling the camera 193 to scan the barcode of the electronic device 200 and parsing the device information; or by using NFC communication technology to approach the electronic tag of the electronic device 200 to acquire device information; or by recognizing information input by the user about the electronic device 200. Specifically, the processor 110 acquires user information of the electronic device 100 by: acquiring information about users registered on the electronic device 100; or by recognizing information input by the user about the electronic device 200.
[0132] Afterwards, the processor 110 can also call the wireless communication module 160 to send a verification code to the server 200. If the verification is successful, the processor 110 will send the obtained device information of the electronic device 200 and the user information to the server 200.
[0133] Finally, the processor 110 can also invoke the display screen 194, audio module 170, indicator 192, etc., to output relevant data pushed by the server 100 or requested by the electronic device 100 from the server 100, or collected or generated by the electronic device 200. Specifically, the relevant data from the electronic device 200 stored in the server 100 is written to the server 100 by the server 200 after passing the security verification of the server 100. 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. This memory can store instructions or data that the processor 110 has just used or is recurring. If the processor 110 needs to use the instruction or data again, it can directly retrieve it from the memory. This avoids repeated access, reduces the waiting time of the processor 110, and thus improves the efficiency of the system.
[0134] In some embodiments, the processor 110 may include one or more interfaces. Interfaces may include an inter-integrated circuit (I2C) interface, an inter-integrated circuit sound (I2S) interface, a pulse code modulation (PCM) interface, a universal asynchronous receiver / transmitter (UART) interface, a mobile industry processor interface (MIPI), a general-purpose input / output (GPIO) interface, a subscriber identity module (SIM) interface, and / or a universal serial bus (USB) interface, etc.
[0135] The I2C interface is a bidirectional synchronous serial bus, including a serial data line (SDA) and a serial clock line (SCL). In some embodiments, the processor 110 may include multiple I2C buses. The processor 110 can couple to the touch sensor 180K, charger, flash, camera 193, etc., through different I2C bus interfaces. For example, the processor 110 can couple to the touch sensor 180K through the I2C interface, enabling the processor 110 and the touch sensor 180K to communicate through the I2C bus interface, thereby realizing the touch function of the electronic device 100.
[0136] The I2S interface can be used for audio communication. In some embodiments, the processor 110 may include multiple I2S buses. The processor 110 can be coupled to the audio module 170 via the I2S bus to enable communication between the processor 110 and the audio module 170. In some embodiments, the audio module 170 can transmit audio signals to the wireless communication module 160 via the I2S interface to enable the function of answering phone calls through a Bluetooth headset.
[0137] The PCM interface can also be used for audio communication, sampling, quantizing, and encoding analog signals. In some embodiments, the audio module 170 and the wireless communication module 160 can be coupled via the PCM bus interface. In some embodiments, the audio module 170 can also transmit audio signals to the wireless communication module 160 via the PCM interface, enabling the function of answering phone calls through a Bluetooth headset. Both the I2S interface and the PCM interface can be used for audio communication.
[0138] The UART interface is a universal serial data bus used for asynchronous communication. This bus can be a bidirectional communication bus. It converts the data to be transmitted between serial and parallel communication. In some embodiments, the UART interface is typically used to connect the processor 110 and the wireless communication module 160. For example, the processor 110 communicates with the Bluetooth module in the wireless communication module 160 via the UART interface to implement Bluetooth functionality. In some embodiments, the audio module 170 can transmit audio signals to the wireless communication module 160 via the UART interface to enable music playback through Bluetooth headphones.
[0139] The MIPI interface can be used to connect the processor 110 to peripheral devices such as the display screen 194 and the camera 193. The MIPI interface includes a camera serial interface (CSI) and a display serial interface (DSI). In some embodiments, the processor 110 and the camera 193 communicate via the CSI interface to enable the electronic device 100 to capture images. The processor 110 and the display screen 194 communicate via the DSI interface to enable the electronic device 100 to display images.
[0140] The GPIO interface can be configured via software. It can be configured as a control signal or a data signal. In some embodiments, the GPIO interface can be used to connect the processor 110 to a camera 193, a display screen 194, a wireless communication module 160, an audio module 170, a sensor module 180, etc. The GPIO interface can also be configured as an I2C interface, an I2S interface, a UART interface, a MIPI interface, etc.
[0141] USB port 130 is a USB standard compliant interface, specifically a Mini USB port, Micro USB port, USB Type-C port, etc. USB port 130 can be used to connect a charger to charge electronic device 100, and can also be used for data transfer between electronic device 100 and peripheral devices. It can also be used to connect headphones for audio playback. This interface can also be used to connect other electronic devices, such as AR devices.
[0142] It is understood that the interface connection relationships between the modules illustrated in the embodiments of the present invention are merely illustrative and do not constitute a structural limitation on the electronic device 100. In other embodiments of this application, the electronic device 100 may also employ different interface connection methods or combinations of multiple interface connection methods as described in the above embodiments.
[0143] The charging management module 140 receives charging input from a charger. The charger can be a wireless charger or a wired charger. In some wired charging embodiments, the charging management module 140 receives charging input from the wired charger via the USB interface 130. In some wireless charging embodiments, the charging management module 140 receives wireless charging input via the wireless charging coil of the electronic device 100. While charging the battery 142, the charging management module 140 can also supply power to the electronic device via the power management module 141.
[0144] The power management module 141 connects 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, providing power to the processor 110, internal memory 121, display screen 194, camera 193, and wireless communication module 160, etc. The power management module 141 can also monitor parameters such as battery capacity, battery cycle count, and battery health status (leakage current, impedance). In some other embodiments, the power management module 141 may also be located within the processor 110. In other embodiments, the power management module 141 and the charging management module 140 may be located in the same device.
[0145] The wireless communication function of electronic device 100 can be implemented through antenna 1, antenna 2, mobile communication module 150, wireless communication module 160, modem processor, and baseband processor.
[0146] Antenna 1 and antenna 2 are used to transmit and receive electromagnetic wave signals. Each antenna in electronic device 100 can be used to cover one or more communication frequency bands. Different antennas can also be multiplexed to improve antenna utilization. For example, 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 conjunction with tuning switches.
[0147] The mobile communication module 150 can provide solutions for wireless communication, including 2G / 3G / 4G / 5G, applied to the electronic device 100. The mobile communication module 150 may include at least one filter, switch, power amplifier, low noise amplifier (LNA), etc. The mobile communication module 150 can receive electromagnetic waves via antenna 1, and perform filtering, amplification, and other processing on the received electromagnetic waves before transmitting them to a modem processor for demodulation. The mobile communication module 150 can also amplify the signal modulated by the modem processor and convert it into electromagnetic waves for radiation via antenna 1. In some embodiments, at least some functional modules of the mobile communication module 150 may be housed in the processor 110. In some embodiments, at least some functional modules of the mobile communication module 150 and at least some modules of the processor 110 may be housed in the same device.
[0148] The modem processor may include a modulator and a demodulator. The modulator modulates the low-frequency baseband signal to be transmitted into a mid-to-high frequency signal. The demodulator demodulates the received electromagnetic wave signal into a low-frequency baseband signal. The demodulator then transmits the demodulated low-frequency baseband signal to the baseband processor for processing. After processing by the baseband processor, the low-frequency baseband signal is transmitted to the application processor. The application processor outputs sound signals through an audio device (not limited to speaker 170A, receiver 170B, etc.) or displays images or videos through the display screen 194. In some embodiments, the modem processor may be a separate device. In other embodiments, the modem processor may be independent of the processor 110 and may be housed in the same device as the mobile communication module 150 or other functional modules.
[0149] The wireless communication module 160 can provide solutions for wireless communication applications on the electronic device 100, including wireless local area networks (WLANs) (such as wireless fidelity (Wi-Fi) networks), global navigation satellite systems (GNSS), frequency modulation (FM), near field communication (NFC), and infrared (IR) technologies. The wireless communication module 160 can be one or more devices integrating at least one communication processing module. The wireless communication module 160 receives electromagnetic waves via antenna 2, performs frequency modulation and filtering of the electromagnetic wave signals, and sends the processed signal to processor 110. The wireless communication module 160 can also receive signals to be transmitted from processor 110, perform frequency modulation and amplification, and convert them into electromagnetic waves for radiation via antenna 2. In some embodiments, the wireless communication module 160 may or may not provide Bluetooth (BT) for application on the electronic device 100; this application embodiment does not impose limitations on this. In some embodiments, antenna 1 of electronic device 100 is coupled to mobile communication module 150, and antenna 2 is coupled to wireless communication module 160, enabling electronic device 100 to communicate with networks and other devices via wireless communication technology. The wireless communication technology may include Global System for Mobile Communications (GSM), General Packet Radio Service (GPRS), Code Division Multiple Access (CDMA), Wideband Code Division Multiple Access (WCDMA), Time Division Code Division Multiple Access (TD-SCDMA), Long Term Evolution (LTE), GNSS, WLAN, NFC, FM, and / or IR technologies, etc.The GNSS may include the Global Positioning System (GPS), the Global Navigation Satellite System (GLONASS), the BeiDou Navigation Satellite System (BDS), the Quasi-Zenith Satellite System (QZSS), and / or satellite-based augmentation systems (SBAS). In other embodiments, the wireless communication technologies described above may also include BT, etc., and this application does not limit this aspect.
[0150] In this embodiment of the application, the electronic device 100 can call the wireless communication module 160 and use communication technologies such as GSM, GPRS, CDMA, WCDMA, TD-SCDMA, LTE, GNSS or WLAN to communicate with the server 100 and the server 200.
[0151] In other embodiments of this application, electronic device 100 may also communicate with electronic device 200 using BT communication technology. Electronic device 100 implements display functions through a GPU, display screen 194, and application processor. The GPU is a microprocessor for image processing, connected to the display screen 194 and the application processor. The GPU is used to perform mathematical and geometric calculations and for graphics rendering. Processor 110 may include one or more GPUs, which execute program instructions to generate or modify display information.
[0152] Display screen 194 is used to display images, videos, etc. Display screen 194 includes a display panel. The display panel can be a liquid crystal display (LCD). The display panel can also be manufactured using organic light-emitting diodes (OLEDs), active-matrix organic light-emitting diodes (AMOLEDs), flexible light-emitting diodes (FLEDs), miniled, microLEDs, micro-OLEDs, quantum dot light-emitting diodes (QLEDs), etc. In some embodiments, electronic device 100 may include one or N displays 194, where N is a positive integer greater than 1.
[0153] Electronic device 100 can perform shooting functions through ISP, camera 193, video codec, GPU, display 194 and application processor.
[0154] The ISP (Image Signal Processor) is used to process data fed back from the camera 193. For example, when taking a picture, the shutter is opened, and light is transmitted through the lens to the camera's photosensitive element. The light signal is converted into an electrical signal, and the camera's photosensitive element transmits the electrical signal to the ISP for processing, transforming it into an image visible to the naked eye. The ISP can also perform algorithmic optimization of image noise, brightness, and skin tone. The ISP can also optimize parameters such as exposure and color temperature of the shooting scene. In some embodiments, the ISP can be set in the camera 193.
[0155] Camera 193 is used to capture still images or videos. An object is projected onto a photosensitive element by generating an optical image through the lens. The photosensitive element can be a charge-coupled device (CCD) or a complementary metal-oxide-semiconductor (CMOS) phototransistor. The photosensitive element converts the light signal into an electrical signal, which is then passed to an ISP for conversion into a digital image signal. The ISP outputs the digital image signal to a DSP for processing. The DSP converts the digital image signal into image signals in standard RGB, YUV, or other formats. In some embodiments, the electronic device 100 may include one or N cameras 193, where N is a positive integer greater than 1.
[0156] Digital signal processors (DSPs) are used to process digital signals. Besides digital image signals, they can also process other digital signals. For example, when electronic device 100 selects a frequency, the DSP can perform Fourier transforms on the frequency energy.
[0157] Video codecs are used to compress or decompress digital video. Electronic device 100 may support one or more video codecs. Thus, electronic device 100 can play or record videos in various encoding formats, such as Moving Picture Experts Group (MPEG) 1, MPEG2, MPEG3, MPEG4, etc.
[0158] An NPU (Neural Processing Unit) is a computational processor for neural networks (NNs). By borrowing the structure of biological neural networks, such as the transmission patterns between neurons in the human brain, it can rapidly process input information and continuously learn on its own. NPUs enable intelligent cognitive applications in electronic devices, such as image recognition, facial recognition, speech recognition, and text understanding.
[0159] Internal memory 121 may include one or more random access memory (RAM) and one or more non-volatile memory (NVM).
[0160] Random access memory can include static random-access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM, for example, fifth generation DDR SDRAM is generally called DDR5 SDRAM), etc.
[0161] Non-volatile memory can include disk storage devices and flash memory.
[0162] Flash memory can be classified according to its operating principle, including NOR FLASH, NAND FLASH, 3D NAND FLASH, etc.; according to the level of the storage cell, including single-level cell (SLC), multi-level cell (MLC), triple-level cell (TLC), quad-level cell (QLC), etc.; and according to the storage specification, including universal flash storage (UFS) and embedded multimedia card (eMMC), etc.
[0163] The random access memory can be directly read and written by the processor 110. It can be used to store executable programs (such as machine instructions) of the operating system or other running programs, as well as user and application data.
[0164] Non-volatile memory can also store executable programs and user and application data, and can be pre-loaded into random access memory for direct reading and writing by the processor 110.
[0165] The external memory interface 120 can be used to connect to external non-volatile memory, thereby expanding the storage capacity of the electronic device 100. The external non-volatile memory communicates with the processor 110 through the external memory interface 120 to perform data storage functions. For example, music, video, and other files can be stored in the external non-volatile memory.
[0166] In this embodiment of the application, the memory can store user information, which may include the user's mobile phone number, account information, etc. The account information is the information used by the user to register for a certain APP or a certain device, such as the information used to register a Huawei Cloud account, including but not limited to: mobile phone number, username, user account, account password, etc.
[0167] In this embodiment of the application, the memory may also store information of the electronic device 200, including but not limited to: unique device identifiers such as device serial number (SN), device name, etc.
[0168] In this embodiment, the memory is also used to store: a verification code agreed upon by the manufacturer of electronic device 100 and other cooperating manufacturers, such as the manufacturer of electronic device 200, for security verification, etc. This security verification mechanism may be, for example, an AccessToken mechanism. A detailed description of the AccessToken mechanism will be provided in the method embodiments below, and will not be repeated here.
[0169] Electronic device 100 can implement audio functions, such as music playback and recording, through audio module 170, speaker 170A, receiver 170B, microphone 170C, headphone jack 170D, and application processor.
[0170] The audio module 170 is used to convert digital audio information into analog audio signals for output, and also to convert analog audio input into digital audio signals. The audio module 170 can also be used for encoding and decoding audio signals. In some embodiments, the audio module 170 may be located in the processor 110, or some functional modules of the audio module 170 may be located in the processor 110.
[0171] 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 make hands-free calls through the speaker 170A.
[0172] The receiver 170B, also known as the "earpiece," is used to convert audio electrical signals into sound signals. When the electronic device 100 answers a telephone call or voice message, the receiver 170B can be brought close to the ear to listen to the voice.
[0173] Microphone 170C, also known as a "microphone" or "voice transducer," is used to convert sound signals into electrical signals. When making a phone call or sending a voice message, the user can speak by bringing their mouth close to microphone 170C, inputting the sound signal into microphone 170C. Electronic device 100 may have at least one microphone 170C. In some embodiments, electronic device 100 may have two microphones 170C, which, in addition to collecting sound signals, can also perform noise reduction. In other embodiments, electronic device 100 may also have three, four, or more microphones 170C, which can collect sound signals, reduce noise, identify the sound source, and perform directional recording, etc.
[0174] The 170D headphone jack is used to connect wired headphones. The 170D headphone jack can be a USB 130 interface or a 3.5mm Open Mobile Terminal Platform (OMTP) standard interface, a CTIA (Cellular Telecommunications Industry Association of the USA) standard interface.
[0175] In this embodiment, the audio module 170 is used to convert the data received from the electronic device 200 from digital audio information into analog audio signals for output. For example, when the electronic device 200 is a blood glucose meter, after the electronic device 200 collects relevant data on the user's blood glucose level, it can transmit the data to the electronic device 100 through the server 200 and server 100. Then, the electronic device 100 can play the collected and detected information such as the user's blood glucose level through the speaker 170A or the receiver 170B.
[0176] Pressure sensor 180A is used to sense pressure signals and convert them into electrical signals. In some embodiments, pressure sensor 180A can be disposed on display screen 194. There are many types of pressure sensors 180A, such as resistive pressure sensors, inductive pressure sensors, and capacitive pressure sensors. A capacitive pressure sensor may include at least two parallel plates with conductive material. When force is applied to pressure sensor 180A, the capacitance between the electrodes changes. Electronic device 100 determines the pressure intensity based on the change in capacitance. When a touch operation is applied to display screen 194, electronic device 100 detects the intensity of the touch operation based on pressure sensor 180A. Electronic device 100 can also calculate the touch position based on the detection signal from pressure sensor 180A. In some embodiments, touch operations applied to the same touch position but with different touch operation intensities can correspond to different operation commands. For example, when a touch operation with an intensity less than a first pressure threshold is applied to the SMS application icon, a command to view an SMS is executed. When a touch operation with an intensity greater than or equal to the first pressure threshold is applied to the SMS application icon, a command to create a new SMS is executed.
[0177] The gyroscope sensor 180B can be used to determine the motion attitude of the electronic device 100. In some embodiments, the gyroscope sensor 180B can determine the angular velocity of the electronic device 100 about three axes (i.e., the x, y, and z axes). The gyroscope sensor 180B can be used for image stabilization. For example, when the shutter is pressed, the gyroscope sensor 180B detects the angle of the shake of the electronic device 100, calculates the distance that the lens module needs to compensate based on the angle, and allows the lens to counteract the shake of the electronic device 100 by moving in the opposite direction, thus achieving image stabilization. The gyroscope sensor 180B can also be used in navigation and motion-sensing game scenarios.
[0178] The barometric pressure sensor 180C is used to measure air pressure. In some embodiments, the electronic device 100 calculates altitude using the air pressure value measured by the barometric pressure sensor 180C to assist in positioning and navigation.
[0179] The magnetic sensor 180D includes a Hall sensor. The electronic device 100 can use the magnetic sensor 180D to detect the opening and closing of the flip cover. In some embodiments, when the electronic device 100 is a flip phone, the electronic device 100 can detect the opening and closing of the flip cover using the magnetic sensor 180D. Then, based on the detected opening and closing state of the cover or the flip cover, features such as automatic flip unlocking can be set.
[0180] The 180E accelerometer can detect the magnitude of acceleration of electronic device 100 in various directions (typically three axes). When electronic device 100 is stationary, it can detect the magnitude and direction of gravity. It can also be used to identify the posture of electronic devices and applied to applications such as screen orientation switching and pedometers.
[0181] A distance sensor 180F is used to measure distance. Electronic device 100 can measure distance via infrared or laser. In some embodiments, during a shooting scene, electronic device 100 can utilize the distance sensor 180F to measure distance for rapid focusing.
[0182] The proximity sensor 180G may include, for example, a light-emitting diode (LED) and a light detector, such as a photodiode. The LED may be an infrared LED. The electronic device 100 emits infrared light outward through the LED. The electronic device 100 uses the photodiode to detect infrared reflected light from nearby objects. 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. The electronic device 100 may use the proximity sensor 180G to detect when a user holds the electronic device 100 close to their ear for a call, so as to automatically turn off the screen to save power. The proximity sensor 180G can also be used in holster mode and pocket mode for automatic unlocking and locking of the screen.
[0183] The ambient light sensor 180L is used to sense the brightness of ambient light. The electronic device 100 can adaptively adjust the brightness of the display screen 194 based on the sensed ambient light brightness. The ambient light sensor 180L can also be used to automatically adjust the white balance when taking pictures. The ambient light sensor 180L can also work with the proximity sensor 180G to detect whether the electronic device 100 is in a pocket to prevent accidental touches.
[0184] The fingerprint sensor 180H is used to collect fingerprints. The electronic device 100 can utilize the characteristics of the collected fingerprints to achieve fingerprint unlocking, accessing application locks, taking photos with fingerprints, answering calls with fingerprints, etc.
[0185] Temperature sensor 180J is used to detect temperature. In some embodiments, electronic device 100 uses the temperature detected by temperature sensor 180J to execute a temperature handling strategy. For example, when the temperature reported by temperature sensor 180J exceeds a threshold, electronic device 100 performs thermal protection by reducing the performance of a processor located near temperature sensor 180J to reduce power consumption. In other embodiments, when the temperature is below another threshold, electronic device 100 heats battery 142 to prevent abnormal shutdown of electronic device 100 due to low temperature. In still other embodiments, when the temperature is below yet another threshold, electronic device 100 boosts the output voltage of battery 142 to prevent abnormal shutdown due to low temperature.
[0186] Touch sensor 180K, also known as a "touch device," can be located on display screen 194. The touch sensor 180K and display screen 194 together form a touchscreen, also known as a "touchscreen." Touch sensor 180K detects touch operations applied to or near it. The touch sensor can transmit the detected touch operation to the application processor to determine the type of touch event. Visual output related to the touch operation can be provided through display screen 194. In other embodiments, touch sensor 180K may also be located on the surface of electronic device 100, in a different position than display screen 194.
[0187] The bone conduction sensor 180M can acquire vibration signals. In some embodiments, the bone conduction sensor 180M can acquire vibration signals from the vibrating bone segments of the human vocal cords. The bone conduction sensor 180M can also contact the human pulse to receive blood pressure signals. In some embodiments, the bone conduction sensor 180M can also be incorporated into headphones to form bone conduction headphones. The audio module 170 can parse the voice signals from the vibrating bone segments of the vocal cords acquired by the bone conduction sensor 180M to realize voice functionality. The application processor can parse heart rate information from the blood pressure signals acquired by the bone conduction sensor 180M to realize heart rate detection functionality.
[0188] Buttons 190 include a power button, volume buttons, etc. Buttons 190 can be mechanical buttons or touch-sensitive buttons. Electronic device 100 can receive button input and generate key signal inputs related to user settings and function control of electronic device 100.
[0189] Motor 191 can generate vibration alerts. Motor 191 can be used for incoming call vibration alerts or for touch vibration feedback. For example, different vibration feedback effects can correspond to touch operations performed on different applications (such as taking photos, playing audio, etc.). Motor 191 can also correspond to different vibration feedback effects for touch operations performed on different areas of the display screen 194. Different application scenarios (such as time reminders, receiving messages, alarm clocks, games, etc.) can also correspond to different vibration feedback effects. The touch vibration feedback effect can also be customized.
[0190] Indicator 192 can be an indicator light, used to indicate charging status, power changes, or to indicate messages, missed calls, notifications, etc.
[0191] In this embodiment, the indicator 192 is used to prompt the user that there is a new message when the electronic device 100 outputs relevant information from the electronic device 200 side through the display screen 194 or the audio module 170.
[0192] 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.
[0193] The software system of electronic device 100 can adopt a layered architecture, event-driven architecture, microkernel architecture, microservice architecture, or cloud architecture. This embodiment of the invention uses the layered architecture Android system as an example to exemplify the software structure of electronic device 100.
[0194] Figure 2B This is a software structure block diagram of the electronic device 100 according to an embodiment of the present invention.
[0195] 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.
[0196] The application layer can include a series of application packages.
[0197] like Figure 2B As shown, the application package may include applications such as a primary application, camera, gallery, calendar, call, map, navigation, WLAN, Bluetooth, music, video, and SMS.
[0198] The first application is an application installed on electronic device 100 that integrates data and services from other products developed by the manufacturer of electronic device 100, namely electronic device 200. It can also integrate data and services from products developed by other manufacturers that cooperate with the manufacturer of electronic device 100. The first application can be a small program that can be called without installation, an application that requires installation, or an upgraded application that integrates new functions into an existing application. Furthermore, the first application can be a system application or a third-party application; this application embodiment does not limit the type of the first application.
[0199] For example, taking electronic device 100 as a Huawei product, the aforementioned first application can be a system application, such as a sports and health APP. This sports and health APP can connect to sports and health electronic devices 200 developed by Huawei or its business partners.
[0200] For example, taking electronic device 100 as a Huawei product, the aforementioned first application can also be a system application, such as the Huawei Learning APP. This Huawei Learning APP can connect to educational electronic devices 200 developed by Huawei or its business partners.
[0201] For example, taking electronic device 100 as a Huawei product, the aforementioned first application can also be a third-party application. This third-party application can be used to access electronic device 200, and the manufacturer of electronic device 200 can be the same as or different from the manufacturer of the third-party application.
[0202] It is understood that the embodiments of this application do not limit the type of the first application described above, nor do they limit the type or manufacturer of the electronic device 200 to which the first application is connected.
[0203] System applications refer to applications provided or developed by the manufacturers of electronic devices, while third-party applications refer to applications provided or developed by manufacturers of non-electronic devices. Manufacturers of electronic devices can include the manufacturers, suppliers, providers, or operators of the electronic devices. Manufacturers can refer to companies that manufacture electronic devices using self-made or purchased parts and raw materials. Suppliers can refer to companies that provide the complete electronic device, raw materials, or parts. Operators can refer to companies responsible for distributing the electronic devices. The application framework layer provides application programming interfaces (APIs) and programming frameworks for applications in the application layer. The application framework layer includes some predefined functions.
[0204] like Figure 2BAs shown, the application framework layer may include a window manager, content provider, view system, phone manager, resource manager, notification manager, etc.
[0205] The window manager is used to manage windowed applications. It can retrieve screen size, determine the presence of a status bar, lock the screen, and capture screenshots, among other things.
[0206] Content providers store and retrieve data, making that data accessible to applications. This data may include videos, images, audio, made and received phone calls, browsing history and bookmarks, phone books, etc.
[0207] A view system includes visual controls, such as controls for displaying text and controls for displaying images. View systems can be used to build applications. A display interface can consist of one or more views. For example, a display interface including a text notification icon could include views for displaying text and views for displaying images.
[0208] The phone manager is used to provide communication functions for electronic device 100. For example, it manages call status (including connection and disconnection).
[0209] The file explorer provides applications with various resources, such as localized strings, icons, images, layout files, video files, and more.
[0210] The notification manager allows applications to display notifications in the status bar. These notifications can be used to deliver informational messages and can disappear automatically after a short pause, requiring no user interaction. For example, the notification manager can be used to notify users of completed downloads or message alerts. The notification manager can also display notifications as icons or scrolling text in the top status bar, such as notifications from background applications, or as dialog boxes on the screen. Examples include displaying text messages in the status bar, emitting sounds, vibrating electronic devices, and flashing indicator lights.
[0211] The Android Runtime consists of core libraries and a virtual machine. The Android runtime is responsible for the scheduling and management of the Android system.
[0212] The core library consists of two parts: one part is the functionalities that need to be called by the Java language, and the other part is the Android core library.
[0213] The application layer and application framework layer run in a virtual machine. The virtual machine executes the Java files of the application layer and application framework layer as binary files. The virtual machine is used to perform functions such as object lifecycle management, stack management, thread management, security and exception management, and garbage collection.
[0214] System libraries can include multiple functional modules. For example: surface manager, media libraries, 3D graphics processing libraries (e.g., OpenGL ES), 2D graphics engines (e.g., SGL), etc.
[0215] The Surface Manager is used to manage the display subsystem and provides the blending of 2D and 3D layers for multiple applications.
[0216] The media library supports playback and recording of various common audio and video formats, as well as still image files. It supports multiple audio and video encoding formats, such as MPEG4, H.264, MP3, AAC, AMR, JPG, and PNG.
[0217] The 3D graphics processing library is used to implement 3D graphics drawing, image rendering, compositing, and layer processing.
[0218] A 2D graphics engine is a graphics engine for 2D drawing.
[0219] The kernel layer is the layer between hardware and software. The kernel layer contains at least the display driver, camera driver, audio driver, and sensor driver.
[0220] The following example, using a scene of capturing a photograph, illustrates the workflow of the software and hardware of the electronic device 100.
[0221] When 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, timestamp of the touch operation, etc.). The raw input event is stored in the kernel layer. The application framework layer retrieves the raw input event from the kernel layer and identifies the control corresponding to the input event. Taking a touch click as an example, where the corresponding control is the camera application icon, the camera application calls the application framework layer's interface to launch the camera application, and then calls the kernel layer to launch the camera driver, capturing still images or videos through camera 193.
[0222] As one possible product form, the electronic device 200 described in this application embodiment can be implemented using a general bus architecture.
[0223] Figure 3 A schematic diagram of the hardware structure of the electronic device 200 is shown.
[0224] See Figure 3As shown, the electronic device 200 includes a processor 201 and a transceiver 202 internally connected and communicating with the processor. The processor 201 can be a general-purpose processor or a dedicated processor, such as a baseband processor or a central processing unit (CPU). The baseband processor can process communication protocols and communication data, while the CPU can control communication devices (e.g., terminals, terminal chips, DUs, or CUs), execute computer programs, and process data from these programs. The transceiver 202, also known as a transceiver unit, transceiver, or transceiver circuit, is used to implement transceiver functions. The transceiver 202 may include a receiver and a transmitter. The receiver, also known as a receiver circuit, is used to implement a receiving function; the transmitter, also known as a transmitter or transmitting circuit, is used to implement a transmitting function. Optionally, the electronic device 200 may also include an antenna 203 and / or a radio frequency (RF) unit (not shown in the figure). The antenna 203 and / or the RF unit may be located inside the electronic device 200 or separate from it; that is, the antenna 203 and / or the RF unit may be remotely or distributed.
[0225] Optionally, the electronic device 200 may include one or more memories 204, which may store instructions, which may be computer programs, that can be executed on the electronic device 200 to cause the electronic device 200 to perform the methods described in the method embodiments below. Optionally, the memory 204 may also store data. The electronic device 200 and the memory 204 may be provided separately or integrated together.
[0226] The processor 201, transceiver 202, and memory 204 can be connected via a communication bus.
[0227] The scope of the electronic device 200 described in this application is not limited thereto, and the structure of the electronic device 200 may vary. Figure 3 The limitations. Electronic device 200 can be a standalone device or part of a larger device. For example, electronic device 200 can be:
[0228] (1) Devices used to measure a user’s health status, such as blood glucose meters, blood pressure monitors, heart rate monitors, etc.
[0229] (2) Devices used to measure a user’s exercise status, such as sensors deployed in treadmills and bicycles to detect the user’s exercise time, exercise duration, exercise speed, heart rate, etc.
[0230] It should be understood that the electronic devices 200 of the various product forms mentioned above have the following characteristics: Figure 6 Any function of the electronic device 200 in the method embodiment shown.
[0231] refer to Figure 4 , Figure 4 This is a hardware structure block diagram of the server 100 provided in an embodiment of this application.
[0232] like Figure 4 As shown, server 100 may include: one or more processors 301, memory 302, communication interface 303, transmitter 305, receiver 306, coupler 307, and antenna 308. These components can be connected via bus 304 or other means. Figure 4 Taking a bus connection as an example:
[0233] In this embodiment of the application, the processor 301 can be used to read and execute computer-readable instructions. Specifically, the processor 301 can be used to call a program stored in the memory 302, such as the method provided in the embodiment of the application for sending data written by the server 200 on the electronic device 200 side to the electronic device 100 of the user logged into the first application, the implementation program on the server 100 side, and execute the instructions contained in the program.
[0234] The memory 302 is coupled to the processor 301 and is used to store various software programs and / or multiple sets of instructions. Specifically, the memory 302 may include high-speed random access memory and may also include non-volatile memory, such as one or more disk storage devices, flash memory devices, or other non-volatile solid-state storage devices.
[0235] The memory 302 can store an operating system (hereinafter referred to as the system), such as uCOS, VxWorks, RTLinux and other embedded operating systems. The memory 302 can also store a network communication program, which can be used to communicate with the server 200, electronic device 100, etc.
[0236] The communication interface 303 can be used by the server 100 to communicate with other communication devices, such as electronic devices 100 and server 200. Specifically, the communication interface 303 can be a 3G communication interface, a Long Term Evolution (LTE) (4G) communication interface, a 5G communication interface, a WLAN communication interface, a WAN communication interface, etc. Not limited to wireless communication interfaces, the server 100 can also be configured with a wired communication interface 303 to support wired communication; for example, the link between the server 100 and electronic devices 100 can be a wired communication connection.
[0237] In some embodiments of this application, transmitter 305 and receiver 306 can be considered as a wireless modem. Transmitter 305 can be used to transmit signals output by processor 301. Receiver 306 can be used to receive signals. In server 100, the number of transmitters 305 and receivers 306 can be one or more. Antenna 308 can be used to convert electromagnetic energy in a transmission line into electromagnetic waves in free space, or to convert electromagnetic waves in free space into electromagnetic energy in a transmission line. Coupler 307 can be used to split mobile communication signals into multiple paths and distribute them to multiple receivers 306. Understandably, the antenna 308 of the network device can be implemented as a massive MIMO (Massively Multi-Analog Device) array.
[0238] In this embodiment, the memory 302 of the server 100 can store user information of the electronic device 100. This user information may include the user's mobile phone number, account information, etc., where the account information is used by the user to register for a specific app or device, such as information used to register a Huawei Cloud account, and includes, but is not limited to: mobile phone number, username, user account, account password, etc.
[0239] When a user logs into the first application on the electronic device 100 using their Huawei Cloud account, the server 100 can establish a communication connection with the electronic device 100 through the communication interface 303 and store the user account and electronic device identifier used by the user to log into the first application.
[0240] After the server 100 receives the data sent by the server 200 to the electronic device 200 via the communication interface 303, the server 100 can send it to the electronic device 200 that is logged into the first application.
[0241] It needs to be explained that, Figure 4 The server 100 shown is merely one implementation of the embodiments of this application. In actual applications, the server 100 may include more or fewer components, which is not limited here.
[0242] Figure 5 This is a hardware structure block diagram of the server 200 provided in an embodiment of this application.
[0243] like Figure 5 As shown, server 200 may include: one or more processors 301, memory 302, communication interface 303, transmitter 305, receiver 306, coupler 307, and antenna 308. These components can be connected via bus 304 or other means. Figure 5 Taking a bus connection as an example:
[0244] In this embodiment, the processor 301 can be used to read and execute computer-readable instructions. Specifically, the processor 301 can be used to call a program stored in the memory 302, such as the method for writing data monitored by the electronic device 200 to the server 200 provided in the embodiment of this application, the implementation program on the server 200 side, and execute the instructions contained in the program.
[0245] The memory 302 is coupled to the processor 301 and is used to store various software programs and / or multiple sets of instructions. Specifically, the memory 302 may include high-speed random access memory and may also include non-volatile memory, such as one or more disk storage devices, flash memory devices, or other non-volatile solid-state storage devices.
[0246] The memory 302 can store an operating system (hereinafter referred to as the system), such as uCOS, VxWorks, RTLinux and other embedded operating systems. The memory 302 can also store a network communication program, which can be used to communicate with the server 100, electronic device 100, etc.
[0247] The communication interface 303 can be used by the server 200 to communicate with other communication devices, such as electronic devices 100, 200, and the server 200. Specifically, the communication interface 303 can be a 3G communication interface, a Long Term Evolution (LTE) (4G) communication interface, a 5G communication interface, a WLAN communication interface, a WAN communication interface, etc. Not limited to wireless communication interfaces, the server 200 can also be configured with a wired communication interface 303 to support wired communication.
[0248] In some embodiments of this application, transmitter 305 and receiver 306 can be considered as a wireless modem. Transmitter 305 can be used to transmit signals output by processor 301. Receiver 306 can be used to receive signals. In server 200, the number of transmitters 305 and receivers 306 can be one or more. Antenna 308 can be used to convert electromagnetic energy in a transmission line into electromagnetic waves in free space, or to convert electromagnetic waves in free space into electromagnetic energy in a transmission line. Coupler 307 can be used to split mobile communication signals into multiple paths and distribute them to multiple receivers 306. Understandably, the antenna 308 of the network device can be implemented as a massive MIMO (Massively Multi-Size Antenna Array).
[0249] In this embodiment, server 200 can receive user-related data detected by electronic device 200 through communication interface 303 and store it in memory 302. Server 200 can then send this data to server 100.
[0250] It needs to be explained that, Figure 5The server 200 shown is merely one implementation of the embodiments of this application. In actual applications, the server 200 may include more or fewer components, which is not limited here.
[0251] Based on the above description of the electronic device 100, electronic device 200, server 100, and server 200 involved in the embodiments of this application, the following will be combined with... Figure 6 The method flow shown is used to describe the method flow of electronic device 200 accessing electronic device 100 provided in the embodiments of this application.
[0252] Figure 6 This application provides an exemplary method for an electronic device 200 to access an electronic device 100. The specific steps are as follows:
[0253] S101, electronic device 100 obtains user information and device information of electronic device 200.
[0254] The electronic device 100 may obtain user information in any of the following ways:
[0255] Electronic device 100 obtains user information that the user previously registered on electronic device 100.
[0256] Alternatively, it can recognize information input by the user from the electronic device 200.
[0257] The aforementioned user information may include the user's mobile phone number, account information, etc. The account information is the information used by the user to register for a certain APP or a certain device, such as the information used to register a Huawei Cloud account, including but not limited to: mobile phone number, username, user account, account password, etc.
[0258] The electronic device 100 may obtain the device information of the electronic device 200 in any of the following ways:
[0259] Electronic device 100 can scan the barcode of electronic device 200 by calling camera 193 to obtain the device information of electronic device 200;
[0260] Alternatively, the processor 110 can use NFC communication technology to attach to the electronic tag of the electronic device 200 to obtain the device information of the electronic device 200;
[0261] Alternatively, the processor 110 can recognize information input by the user into the electronic device 200.
[0262] The information of the aforementioned electronic device 200 includes, but is not limited to: unique device identifiers such as device serial number (SN), device name, etc.
[0263] It is understood that the embodiments of this application do not restrict the order in which electronic device 100 obtains device information of electronic device 200 and user information.
[0264] S102, Server 200 performs security verification on electronic device 100.
[0265] In this embodiment of the application, before the server 200 reads the user information and electronic device 200 information in the electronic device 100, the server 200 needs to perform a security verification on the electronic device 100. Only after the security verification is passed can the electronic device 100 send the user information and electronic device 200 information to the server 200.
[0266] In some other embodiments of this application, before the server 200 reads the user information and electronic device 200 information from the electronic device 100, not only does the server 200 need to perform security verification on the electronic device 100, but the electronic device 100 also needs to perform security verification on the server 200. Only after both parties pass the security verification will the electronic device 100 send the user information and electronic device 200 information to the server 200.
[0267] In some other embodiments of this application, before the server 200 reads the user information and electronic device 200 information from the electronic device 100, the electronic device 100 only needs to perform a security verification on the server 200. Only after the security verification is passed will the electronic device 100 send the user information and electronic device 200 information to the server 200.
[0268] Figure 6 The method flow shown is illustrated by taking the example of server 200 performing security verification on electronic device 100.
[0269] Next, we will describe in detail the implementation method of server 200 performing security verification on electronic device 100:
[0270] First, electronic device 100 sends first verification information to server 200. Specifically, electronic device 100 first sends first verification information to server 200 via any one of the following communication technologies: GSM, GPRS, CDMA, WCDMA, TD-SCDMA, LTE, GNSS, or WLAN. This first verification information is used by server 200 to perform security verification on electronic device 100. This first verification information is the "key" used by server 200 to perform security verification on electronic device 100; server 200 can use this key to perform security verification on electronic device 100. This application uses the AccessToken authentication mechanism as an example, but it does not limit the security verification mechanism used by server 200.
[0271] The AccessToken authentication mechanism refers to a pre-agreed password for security verification between the manufacturer of electronic device 100 and the manufacturer of server 200 during business cooperation negotiations. For example, the manufacturer of server 200 assigns the electronic device a first identifier (ID1) and a first password (secret1), where ID1 is a unique and non-repeating number, and secret1 is the password agreed upon by both parties. Electronic device 100 can generate AccessToken1 based on ID1 and secret1. AccessToken1 is the first verification information mentioned above. If ID1 and secret1 are agreed upon by both parties, AccessToken1 can be correctly recognized by server 200. Successful recognition indicates that electronic device 100 has passed the security verification.
[0272] Subsequently, server 200 sends the first verification result to electronic device 100. Specifically, after receiving the first verification information, if server 200 successfully identifies the first verification information, it means that electronic device 100 has passed the security verification, and the first verification result sent by server 200 to electronic device 100 through any of the communication technologies such as GSM, GPRS, CDMA, WCDMA, TD-SCDMA, LTE, GNSS, or WLAN is a successful verification result; if identification fails, it means that electronic device 100 has failed the security verification, and the first verification result sent by server 200 to electronic device 100 is a failed verification result.
[0273] In this embodiment of the application, the electronic device 100 may not only execute step S101 first and then execute step S102, but the electronic device 100 may also execute step S102 first and then execute step S101.
[0274] S103, electronic device 100 sends information about electronic device 200 and user information to server 200.
[0275] After successful security verification by server 200, server 200 can read the information of electronic device 200 and user information from electronic device 100. For example, server 200 can first send a verification success message to electronic device 100 via any of the following communication technologies: GSM, GPRS, CDMA, WCDMA, TD-SCDMA, LTE, GNSS, or WLAN. In response to the message, electronic device 100 can call the interface provided by server 200 to write its device information and user information into server 200. This is used by server 200 to establish a binding relationship between electronic device 100 and user. After successful binding, server 200 can store the association between electronic device 200's information and user information on its local end.
[0276] It is understandable that in step S103, the electronic device 100 can send its own information and user information to the server 200 separately. That is, the electronic device 100 can first send one piece of information, such as its own information, along with its identifier, and then send the other piece of information, such as user information, also carrying its identifier. Here, the identifier of the electronic device 100 is used by the server 200 to establish a binding relationship between the separately sent information and user information.
[0277] S104, server 200 sends a first message to electronic device 100 indicating whether the binding was successful.
[0278] Specifically, after server 200 establishes an association between electronic device 200 and user information, that is, after binding electronic device 200 to user, if the association between electronic device 200 and user information is successfully established, a first binding success message is sent to electronic device 100 via any of the following communication technologies: GSM, GPRS, CDMA, WCDMA, TD-SCDMA, LTE, GNSS, or WLAN. Otherwise, a binding failure message is sent. In other words, when electronic device 200 successfully calls the interface provided by server 200, the interface has a return value; for example, a return value of 0 indicates a successful call, and a return value of 1 indicates a failed call.
[0279] S105, Electronic device 100 outputs the binding result and data from electronic device 200.
[0280] After receiving the return value, electronic device 100 can identify the corresponding binding result and output it. Furthermore, electronic device 100 can also output data measured by electronic device 200. However, this process is not performed after electronic device 200 is successfully bound to the user and before electronic device 100 outputs data measured by electronic device 200. Figure 6 The method flow shown also includes the following steps:
[0281] S201, Server 200 receives data detected by Electronic Device 200 sent by Electronic Device 200.
[0282] Specifically, after the user uses the electronic device 200 to detect the user's physical health status, the electronic device 200 can directly write the detected data to the server 200 and store it on the server 200.
[0283] In this embodiment, the electronic device 200 has limited storage space and display capabilities. Therefore, the electronic device 200 can store a small amount of data, such as only the data measured by the user within one day, or the most recently measured data. This embodiment does not impose any limitations on this.
[0284] S202, Server 100 performs a security check on Server 200.
[0285] In this embodiment of the application, before the server 200 writes data to the server 100, the server 100 needs to perform a security verification on the server 200. Only after the security verification is passed can the server 200 write the data measured by the electronic device 200 to the server 100.
[0286] In some other embodiments of this application, before server 200 writes data to server 100, not only does server 100 need to perform security verification on server 200, but server 200 also needs to perform security verification on server 100. Only after both parties pass the security verification can server 200 write the data measured by electronic device 200 to server 100.
[0287] In some other embodiments of this application, before server 200 writes data to server 100, only server 200 performs security verification on server 100. Only after the security verification is passed can server 200 write the data measured by electronic device 200 to server 100.
[0288] Figure 6 The illustrated method flow only uses the example of server 100 performing security verification on itself. Next, we will specifically describe the implementation method of server 100 performing security verification on itself.
[0289] First, server 200 sends second verification information to server 100. It can be understood that the security verification mechanism in step S202 is similar to the security verification mechanism in step S102. Here, the second verification information is AccessToken2 generated by server 200 based on the second identifier (ID2) assigned by the vendor of server 100 and the agreed second password (secret2).
[0290] It is worth noting that secret2 can be set according to the cooperation project agreed upon by both parties. For example, when only one party is allowed to read data, the password can be set to 1; when only one party is allowed to write data, the password can be set to 2; when both parties are allowed to read and write data, the password can be set to 2.
[0291] It is understood that the security verification mentioned in this application is only introduced using the AccessToken verification mechanism as an example, but this application does not restrict the security verification mechanism adopted by server 100.
[0292] Then, server 100 sends a second verification result to server 200. Specifically, after receiving the second verification information, if server 100 successfully recognizes the second verification information, it means that server 200 has passed the security verification, and the second verification result sent by server 100 to server 200 is a successful verification; if the recognition fails, it means that server 200 has not passed the security verification, and the second verification result sent by server 100 to server 200 is a failed verification.
[0293] S203, Server 200 sends the data measured by electronic device 200 to Server 100.
[0294] Once the security verification on server 200 is successful, server 100 can write data to server 200. Specifically, server 200 can write the data measured by the user's corresponding electronic device 200 to server 100, which manages the user's account, based on the stored binding relationship between the electronic device 200 and the user. In other words, the data measured by the electronic device 200 sent by server 200 to server 100 is data already tagged with the user's account, so that server 100 can push the data to the corresponding user.
[0295] S204, Server 100 sends the data measured by Electronic Device 200 to Electronic Device 100.
[0296] Specifically, the server 100 can send the data measured by the electronic device 200 to the electronic device 100 that is logged into the corresponding user account, based on the tag described in step S204.
[0297] It is worth noting that, as introduced above Figure 6 The illustrated method is applicable not only to electronic devices 200 that do not support Bluetooth communication, but also to electronic devices 200 that support both Bluetooth communication and any one of the following communication technologies: GSM, GPRS, CDMA, WCDMA, TD-SCDMA, LTE, GNSS, or WLAN. When electronic device 200 supports both Bluetooth communication and any of the aforementioned communication technologies, it can connect to electronic device 100 via Bluetooth communication, or it can connect via... Figure 6 The method shown is used to connect to the electronic device 100. In certain situations, this method may be preferred. Figure 6 The method shown, for example, when the communication distance between electronic device 200 and electronic device 100 exceeds the range of Bluetooth communication, employs... Figure 6The illustrated method allows electronic device 200 to connect to electronic device 100. This allows electronic device 100 to remotely receive data from electronic device 200. Therefore, the method employs… Figure 6 Compared to Bluetooth communication, the method shown allows users to bind their parents' health monitoring devices to their own accounts, and then use their own devices to remotely monitor their parents' health, making it convenient for users to remind their parents to eat healthily, take medication on time, and so on.
[0298] Regarding the use of Bluetooth communication to connect electronic device 200 to electronic device 100, refer to current mature application technologies, which will not be elaborated here.
[0299] Next, combine Figures 7A-7J This application will now introduce a UI implementation method provided in this application.
[0300] In this embodiment, before electronic device 100 can connect to electronic device 200 and output all data from connected electronic devices 200, electronic device 100 can use a first application or webpage to log in to its user account on server 100, and then receive the upstream data from electronic device 200 sent by server 200. The definition of the first application has been described in the previous section on the software architecture of electronic device 100, and will not be repeated here.
[0301] The UI embodiments provided in this application are illustrated using a sports and health APP as the first application and a blood glucose meter as the second device.
[0302] refer to Figures 7A-7D , Figures 7A-7D An example is shown of a series of user interfaces provided by the first application.
[0303] Figure 7A An example is shown of the desktop displayed on electronic device 100.
[0304] like Figure 7A As shown, the user interface 710 displays a series of application icons installed on the electronic device 100, including the first application, namely the Sports & Health APP. When the electronic device 100 detects that the user is interacting with the icon 711 of the Sports & Health APP, the electronic device 100 can display... Figure 7B The user interface shown.
[0305] Figure 7B An example is shown of the homepage provided by the sports and health APP displayed on the electronic device 100.
[0306] like Figure 7BAs shown, user interface 720 is the application interface provided by the Fitness Health APP. The page navigation bar displays controls 721, 722, 723, and 724 for switching to sub-pages such as Health, Exercise, Devices, and My Profile. The "Health" sub-page is specifically... Figure 7B The user interface 720 displayed on the electronic device 100 shows a "Health" subpage that displays the user's health data for various items, such as steps, exercise time, exercise distance, calories burned, etc. This health data is collected by the sports and health app from the device itself, the electronic device 100, and other electronic devices 200 connected to it, and then integrated. The "Device" subpage is used to bind other electronic devices 200, such as a blood glucose meter, and to view the user's health data detected by the bound devices. The "My" subpage is used for user registration and login, allowing users to view and manage their personal sports and health data, understand their personal sports and health history, and display their personal information.
[0307] When electronic device 100 detects an operation on control 724, in response to the operation, electronic device 100 will switch to... Figure 7C The "My" subpage shown is used to view user information, including user account, username, and other information.
[0308] Figure 7C An example is shown of the "My" subpage displayed on electronic device 100.
[0309] like Figure 7C As shown, user interface 730 displays the user's account information, specifically the currently logged-in user account in the Sports & Health APP. This user account is "188******92" and the account name is "User 1". It's understood that user interface 730 displays information corresponding to the currently logged-in user account. If the user has not registered or has registered but not logged in, user interface 730 will not display the user's account information. The steps for user registration and login are not detailed here.
[0310] When electronic device 100 detects a user action on control 723, in response to the action, electronic device 100 will switch to... Figure 7D The "Device" subpage shown is used to view the bound devices and the data detected by the bound devices.
[0311] Figure 7D An example is shown of the "Device" subpage displayed on electronic device 100.
[0312] like Figure 7DAs shown, the user interface 740 displays a control 741 and a bound electronic device (not yet shown). The control 741 is used to bind other electronic devices 200.
[0313] When a user wants to connect a blood glucose meter to electronic device 100 to view the user's blood glucose levels detected by the meter, the user can bind the blood glucose meter to their account. Details are as follows:
[0314] Electronic device 100 can detect user actions Figure 7D The operation of control 741, as shown, and after detecting the control applied to the scan or add device function, allows the user to obtain the blood glucose meter's device information by scanning the barcode or entering the device information. Assuming the user operates the scan control, the electronic device will display as shown... Figure 7E The scanning interface shown.
[0315] Figure 7E An example is shown of an interface where an electronic device 100 scans the barcode of a device to be connected.
[0316] like Figure 7E As shown, the user interface 750 displays an image of the blood glucose meter device captured by the camera 751 by the electronic device 100. The processor then parses the barcode, identifies the information of the blood glucose meter device, and displays it as shown. Figure 7F The user interface shown indicates a successful scan.
[0317] Figure 7F An example shows the user interface of an electronic device 100 successfully scanned.
[0318] like Figure 7F As shown, the user interface 760 displays an image 761 and a name 762 of the identified blood glucose meter device, as well as a control 763. The control 763 is used to establish a binding relationship between the identified blood glucose meter device and the user.
[0319] It is understood that the device information of the blood glucose meter recognized by the electronic device 100 includes, but is not limited to, the image 761 and the name 762 of the blood glucose meter, as well as: the unique identification code of the blood glucose meter device, such as SN. Typically, this unique identification code is not directly presented to the user; the SN is an identification number granted to the device by the manufacturer, which can identify the uniquely corresponding device based on the SN.
[0320] Simply obtaining the device information of electronic device 200 is insufficient to bind electronic device 200 to the user; that is, the first application cannot yet successfully connect to the first application on the first device. Therefore, the first device also needs to obtain user information, as follows:
[0321] When the electronic device detects a user's action on control 763, in response to the action, the electronic device 100 requests the user's information to be bound. In some embodiments, if the user has already registered user information in the first application, the electronic device 100 can obtain the user information only if the user agrees to authorize the electronic device 200. If the user has not yet registered user information, the electronic device 100 needs to receive the user's input information before it can obtain the user information to establish a binding relationship with the electronic device 200.
[0322] Once a user has logged in or registered an account on the electronic device 100, the electronic device 100 detects an action that... Figure 7F The operation of the control 763 shown above, in response to the operation, causes the electronic device 100 to display as shown. Figure 7G The diagram shows a user interface requesting authorization from the user.
[0323] Figure 7G An example is shown of a user interface of an electronic device 100 requesting permission to obtain user information to be bound.
[0324] like Figure 7G As shown, the user interface 760 displays a window 764, which is used to request user information from the user. Window 764 displays controls 764A, 764B, an icon 764C, and control 764D. 764A is used for one-click login with a Huawei account and establishing a binding relationship with the blood glucose meter device. Option 764B provides the user with an authorization management agreement and a sports and health privacy policy. After reading and agreeing to the above agreements and policies, the user can check option 764B and click control 764A to authorize the use of a Huawei account to establish a binding relationship with the blood glucose meter. Alternatively, the user can authorize the use of an account from another third-party application to establish a binding relationship with the blood glucose meter.
[0325] After detecting the operation performed on the option 764B icon and control 764A, the electronic device 100 can use the obtained user account information to request the server 200 to establish a binding relationship with the electronic device 200.
[0326] Understandable, Figures 7A-7G The UI embodiment shown is merely an illustrative diagram illustrating the process of obtaining device information before obtaining user information. In addition, the electronic device can also obtain user information first and then device information. For example, after the electronic device 100 detects the user's action on icon 711 (i.e., opening the first application), the electronic device 100 can request user information and permissions from the user. Or, after the electronic device 100 detects the user's action on icon 711... Figure 7DThe operation of the scan control shown allows the electronic device 100 to request user information and permissions before scanning the barcode of the electronic device 200. Therefore, this embodiment does not limit the order in which the electronic device 100 obtains device information and user information.
[0327] It is worth noting that when electronic devices are 100, such as Figures 7A-7F The scenario shown illustrates where information from electronic device 200 is obtained first, followed by information from the user:
[0328] Electronic device 100 can detect user actions Figure 7F When the control 763 shown is operated, the electronic device 100 first executes step S102 as described above, and then after the server passes the security verification of the electronic device 100 and the electronic device 100 detects... Figure 7G After the operation shown applies to the option 764B icon and control 764A, the electronic device 100 continues to execute the steps S103-S104 described above.
[0329] Alternatively, electronic device 100 detects Figure 7G After the operation shown applies to the option 764B icon and control 764A, the electronic device 100 executes the steps S102-S104 described above.
[0330] It is worth noting that when electronic device 100 obtains user information first, and then obtains device information from electronic device 200:
[0331] Electronic device 100 detects an action on Figure 7H After the control 765 shown is operated, the electronic device 100 can directly execute the steps S103-S104 described above.
[0332] When electronic device 100 receives Figure 6 After receiving the first message indicating whether the binding was successful as described in step S104, the electronic device will output a corresponding binding result prompt.
[0333] refer to Figures 7H-7I , Figures 7H-7I An exemplary schematic diagram of the user interface for the output binding result of electronic device 100 is shown.
[0334] like Figure 7H As shown, the electronic device 100 displays a message 765 such as "Binding successful". When the first message received by the electronic device 100 is "Binding failed", the message 765 will display text such as "Binding failed".
[0335] like Figure 7IAs shown, the user interface 740 is the "Device" subpage provided by the first application. At this time, the user interface 740 is compared to... Figure 7D The user interface 740 shown includes an option 744 for the paired electronic device 200, namely the blood glucose meter. Users can click option 744 to access the blood glucose meter's device details page to view the user's blood glucose level data. When the user is not using the blood glucose meter, the device details page will not display the user's blood glucose level data.
[0336] After a user uses a blood glucose meter to measure their blood glucose level, the blood glucose meter can perform steps S201-S204 as described above. After receiving the relevant blood glucose data measured by the user using electronic device 200 from the server, electronic device 100 can output... Figure 7J The user interface shown.
[0337] refer to Figure 7J , Figure 7J An exemplary user interface diagram is shown for the output of data measured by electronic device 200 by electronic device 100.
[0338] like Figure 7J As shown, user interface 770 is the details page of the blood glucose meter device. This page displays data records of blood glucose levels measured by the user using electronic device 200, such as the total number of tests per day, the time of each test, and the results, etc.
[0339] As can be seen, after adopting the method of accessing electronic device 100 via electronic device 200 according to the embodiments of this application, for electronic device 200 which lacks a Bluetooth communication module, has limited storage space, and limited output data conditions, by establishing a binding relationship between electronic device 200 and user of electronic device 100, server 200 of electronic device 200 can push data from electronic device 200 to electronic device 100 through server 100 after passing the security verification of server 100 of electronic device 100, and present the data measured by electronic device 200 to user using the output data conditions of electronic device 200. Thus, secure and remote access of electronic device 200 to electronic device 100 is achieved.
[0340] The above-described embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit it. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of this application.
Claims
1. A data transmission method, characterized in that, The method is applied to a communication system including a first device, a second device, a first server, and a second server; the first server stores registered user accounts, and the second server stores the binding relationship between the user accounts and the second device; The first server is provided by the manufacturer of the first device; The second server is provided by the manufacturer of the second device; The manufacturer of the first device is different from the manufacturer of the second device; the method includes: Based on the first verification information, the second server performs security verification on the first device. The first verification information is generated based on the first identifier and the first password. The first identifier is assigned by the second server manufacturer, and the first password is agreed upon by the manufacturers of the first device and the second server. When the second server performs a security verification on the first device and the verification passes, or when the second server and the first device perform a security verification on each other and the verification passes, or when the first device performs a security verification on the second server and the verification passes, the second device generates first data, which includes the user's health data. The second device sends the first data to the second server; Based on the second verification information, the first server performs security verification on the second server. The second verification information is generated based on the second identifier and the second password. The second identifier is assigned by the first server manufacturer, and the second password is agreed upon by the manufacturers of the first server and the second server. When the first server performs a security verification on the second server and the verification passes, or when the first server and the second server perform a security verification on each other and the verification passes, or when the second server performs a security verification on the first server and the verification passes, the second server sends the first data to the first server. The first server sends the first data to the first device that logs in to the first server using the user account; The first device outputs the first data.
2. The method according to claim 1, characterized in that, Before the second device generates the first data, the method further includes: The first device logs into the first server using a user account and obtains the identifier of the second device; The first device sends a binding request to the second server, the binding request carrying the user account and the identifier of the second device; The second server stores the binding relationship between the user account and the identifier of the second device.
3. The method according to claim 2, characterized in that, The first device acquires the identifier of the second device, specifically including: The first device receives the identifier of the second device input by the user; or, the first device scans the barcode of the second device, parses the barcode, and obtains the identifier of the second device; or, the first device reads the barcode electronic tag through NFC technology to obtain the identifier of the second device.
4. The method according to any one of claims 1-3, characterized in that, When the second server sends the first data to the first server for the first time; The method further includes the second server sending the first data along with the user account.
5. The method according to any one of claims 1-3, characterized in that, Before the first server sends the first data to the first device that logs in to the first server using the user account, the method further includes: The first device logs into the first server using the user account through an application, mini-program, or webpage.
6. The method according to any one of claims 1-3, characterized in that, The storage space of the first device is greater than that of the second device, and / or the information output conditions of the first device are better than those of the second device.
7. The method according to any one of claims 1-3, characterized in that, The second device includes any one or more of the following: a blood glucose meter, a blood pressure monitor, a treadmill, a body fat scale, or a smart bracelet.
8. The method according to any one of claims 1-3, characterized in that, The second device generating the first data specifically includes: the second device collecting the first data.
9. The method according to any one of claims 1-3, characterized in that, The second device uses any one or more of the following communication technologies to send the first data to the second server: GSM, GPRS, CDMA, WCDMA, TD-SCDMA, LTE, GNSS or WLAN.
10. A data transmission method, characterized in that, The method is applied to a first device; the method includes: The first device receives the first data; The first data is generated by the second device, and based on the second verification information, the first server performs a security verification on the second server. The second verification information is generated according to a second identifier and a second password. The second identifier is assigned by the first server manufacturer, and the second password is agreed upon by the manufacturers of the first and second servers. When the first server performs a security verification on the second server and the verification passes, or when the first server and the second server perform a security verification on each other and the verification passes, or when the second server performs a security verification on the first server and the verification passes, the data is first sent through the second server and then through the first server to the first device that has logged into the first server using a user account. The first data includes the user's health data. The first server stores the registered user accounts, and the second server stores the binding relationship between the user accounts and the second device. The first server is provided by the manufacturer of the first device. The second server is provided by the manufacturer of the second device. The manufacturers of the first device and the second device are different. The first device outputs the first data.
11. A data transmission method, characterized in that, The method is applied to a second device; the method includes: Based on the first verification information, the second server performs security verification on the first device. The first verification information is generated based on the first identifier and the first password. The first identifier is assigned by the manufacturer of the second server, and the first password is agreed upon by the manufacturers of the first device and the second server. When the second server performs a security verification on the first device and the verification passes, or when the second server and the first device perform a security verification on each other and the verification passes, or when the first device performs a security verification on the second server and the verification passes, the second device generates first data, which includes the user's health data. The second device sends the first data, and based on the second verification information, the first server performs a security verification on the second server. The second verification information is generated based on a second identifier and a second password. The second identifier is assigned by the first server manufacturer, and the second password is agreed upon by the manufacturers of the first server and the second server. When the first server performs a security verification on the second server and the verification passes, or when the first server and the second server perform a security verification on each other and the verification passes, or when the second server performs a security verification on the first server and the verification passes, the data is first sent through the second server and then through the first server to the first device that has logged into the first server using a user account. The first device is used to output the first data. The first server stores the registered user accounts, and the second server stores the binding relationship between the user accounts and the second device; the first server is provided by the manufacturer of the first device; the second server is provided by the manufacturer of the second device; the manufacturers of the first device and the second device are different.
12. A data transmission method, characterized in that, The method is applied to the first server; The first server stores registered user accounts, and the method includes: Based on the second verification information, the first server performs security verification on the second server. The second verification information is generated based on the second identifier and the second password. The second identifier is assigned by the first server manufacturer, and the second password is agreed upon by the manufacturers of the first server and the second server. When the first server performs a security verification on the second server and the verification passes, or when the first server and the second server perform a security verification on each other and the verification passes, or when the second server performs a security verification on the first server and the verification passes, the first server receives the first data sent by the second server; the first server is provided by the manufacturer of the first device; the second server is provided by the manufacturer of the second device; the manufacturers of the first device and the second device are different; the first data is generated by the second device and sent to the second server; the first data includes the user's health data; The first server sends the first data to the first device that logs in to the first server using the user account; The first device is used to output the first data.
13. A data transmission method, characterized in that, The method is applied to the second server; The second server stores the binding relationship between user accounts and second devices; the method includes: The second server receives first data sent by the second device; the first data is generated by the second device and includes the user's health data. Based on the second verification information, the first server performs a security verification on the second server. The second verification information is generated based on a second identifier and a second password. The second identifier is assigned by the first server manufacturer, and the second password is agreed upon by the manufacturers of the first and second servers. When the first server performs a security verification on the second server and the verification passes, or when the first and second servers perform a mutual security verification and the verification passes, or when the second server performs a security verification on the first server and the verification passes, the second server sends the first data through the first server to the first device that logged in to the first server using the user account. The first server is provided by the manufacturer of the first device; the second server is provided by the manufacturer of the second device; the manufacturers of the first device and the second device are different. The first server stores the registered user accounts; the first device is used to output the first data.
14. An electronic device, characterized in that, The electronic device includes one or more processors and one or more memories; wherein the one or more memories are coupled to the one or more processors, and the one or more memories are used to store computer program code, the computer program code including computer instructions, which, when executed by the one or more processors, cause the electronic device to perform the method of claim 10.
15. An electronic device, characterized in that, The electronic device includes one or more processors and one or more memories; wherein the one or more memories are coupled to the one or more processors, and the one or more memories are used to store computer program code, the computer program code including computer instructions, which, when executed by the one or more processors, cause the electronic device to perform the method of claim 11.
16. A computer program product containing instructions, characterized in that, When the computer program product is run on an electronic device, it causes the electronic device to perform the method as described in claim 10.
17. A computer program product containing instructions, characterized in that, When the computer program product is run on an electronic device, it causes the electronic device to perform the method as described in claim 11.
18. A communication system, characterized in that, The communication system includes a first device, a second device, a first server, and a second server. The first device is used to perform the method as described in claim 10; the second device is used to perform the method as described in claim 11; the first server is used to perform the method as described in claim 12; and the second server is used to perform the method as described in claim 13.