This application is based upon and claims priority to Chinese Patent Application No. 202111070549.4, filed on Sep. 13, 2021, the entire content of which are incorporated herein by reference.
The disclosure relates to the technical field of artificial intelligence (AI), especially the technical fields of automatic driving, Internet of Vehicles (IoV) and natural language processing (NLP), in particular to a service method for head unit (HU) software, HU software and related devices.
In an interaction scenario of interconnection between a head unit (HU) and a mobile device (MD), many manufacturers take consideration of various reasons, such as safety, research and development (R&D) costs, even network problems (in early years, the HUs do not have network systems) and other factors, which causes that HU software cannot be upgraded.
According to a first aspect of the disclosure, a service method for head unit (HU) software is provided. The method includes: obtaining operations related to the HU software; determining service interfaces of operation services comprised in HU system software corresponding to the operations; and calling the service interfaces to obtain results of executing the operations by the operation services.
According to a second aspect of the disclosure, a head unit (HU) software product is provided. The HU software product includes: a user interface layer, a protocol layer, and a connection layer that are connected in sequence. The protocol layer is configured to provide a communication protocol among HU software, mobile device software and HU system software. The connection layer is configured to realize connections between the HU software, the mobile device software and the HU system software. The user interface layer is configured to obtain operations related to the HU software, determine service interfaces of operation services comprised in the HU system software corresponding to the operations, and call the service interfaces to obtain results of executing the operations through the protocol layer and the connection layer.
According to a third aspect of the disclosure, a head unit (HU) is provided. The HU includes: HU system software and HU software connected to the HU system software. Operation services and service interfaces of the operation services are integrated into the HU system software. The HU software is configured to determine service interfaces of operation services comprised in the HU system software corresponding to operations related to the HU software, and call the service interfaces to obtain results of executing the operations by the operation services.
It should be understood that the content described in this section is not intended to identify key or important features of the embodiments of the disclosure, nor is it intended to limit the scope of the disclosure. Additional features of the disclosure will be easily understood based on the following description.
The drawings are used to better understand the solution and do not constitute a limitation to the disclosure.
The following describes the embodiments of the disclosure with reference to the accompanying drawings, which includes various details of the embodiments of the disclosure to facilitate understanding, which shall be considered merely exemplary. Therefore, those of ordinary skill in the art should recognize that various changes and modifications can be made to the embodiments described herein without departing from the scope and spirit of the disclosure. For clarity and conciseness, descriptions of well-known functions and structures are omitted in the following description.
In the related art, upgrading the HU software is carried out by upgrading the HU system. However, in the process of upgrading the HU software by upgrading the HU system, upgrading the HU software involves in an illegal call of HU system interfaces, thus reducing the safety of the HU system.
In view of the above problems, the disclosure provides a service method for HU software, HU software and related devices.
As illustrated in
In step 101, software-related operations are obtained.
In the embodiment of the disclosure, taking a mobile device terminal being a mobile phone as an example, as illustrated in
In order to accurately obtain the software-related operations, when the software-related operations are directly performed on the HU software, the service apparatus for HU software may obtain the software-related operations of the HU software. Alternatively, the software-related operations of the mobile phone software corresponding to the HU software may be obtained by connecting the service apparatus for HU software and the mobile phone software.
In step 102, service interfaces of operation services corresponding to the software-related operations in HU system software are determined.
It should be understood that different software-related operations correspond to different operation services, and different operation service correspond to different service interfaces in the HU system software. Therefore, in the embodiment of the disclosure, in order to accurately determine the service interfaces of the operation services corresponding to the software-related operations in the HU system software, the service interfaces of the operation services corresponding to the software-related operations may be determined in the HU system according to the software-related operations. It should be noted that the operation services may include at least one of the following services: video decoding service, in-vehicle data management service, audio focus service and Bluetooth phone service. The service interfaces may include a vehicle control interface and a data forward interface. The vehicle control interface corresponds to the video decoding service, the audio focus service and the Bluetooth phone service. The data forward interface corresponds to the in-vehicle data management service.
In step 103, the service interfaces are called to obtain an execution result of the software-related operations by the operation services.
The service apparatus for HU software can call the service interfaces of the operation services corresponding to the software-related operations in the HU system software, and the operation services in the HU system software can execute the software-related operations, to generate an execution result.
In conclusion, by calling the service interfaces of the operation services corresponding to the software-related operations in the HU system software, the result of the software-related operations executed by the operation services is obtained, and connection protocols in the HU software and the service interfaces of the HU system software are split. Further, upgrading the HU software does not involve in an illegal call of the service interfaces, which improves the security of the HU system software.
In order to make the execution result of the software-related operations by the operation services more intuitive, as illustrated in
In step 301, software-related operations are obtained.
In step 302, service interfaces of operation services corresponding to the software-related operations in head unit (HU) system software are determined.
In step 303, the service interfaces are called to obtain an execution result of the software-related operations by the operation services.
In step 304, the execution result is displayed on a software user interface.
As an example, the execution result is displayed on a user interface of the HU software.
In the embodiment of the disclosure, the execution result of the software-related operations by the operation services of the HU system software may be sent to the HU software, and the execution result can be displayed on the user interface of the HU software.
As another example, the execution result of the software-related operations by the operation services of the HU system software may be sent to the mobile device software corresponding to the HU software, and the execution result can be displayed on a user interface of the mobile device.
In the embodiment of the disclosure, steps 301 to 303 may be implemented in any of the various embodiments of the disclosure, which are not limited in the embodiments of the disclosure, and will not be repeated.
Therefore, by displaying the execution result on the software user interface, the execution result of the software-related operations by the operation services can be visually displayed.
In order to upgrade the head unit software, as illustrated in
In step 401, software-related operations are obtained.
In step 402, service interfaces of operation services corresponding to the software-related operations in a head unit system software are determined.
In step 403, the service interfaces are called to obtain an execution result of the software-related operations by the operation services.
In step 404, software version files sent by the mobile device software corresponding to the HU software are obtained, in which each of version numbers of the software version files is greater than a current version number of the HU software.
Optionally, the method includes: starting a receiving operation in response to receiving first command word data sent by the mobile device software; ceasing the receiving operation in response to receiving second command word data sent by the mobile device software; and obtaining the software version files by integrating the received data and performing integrity verification.
That is, after a connection between the HU software and the mobile device software is established, the mobile device software can send an instruction to obtain HU software version information to the HU software, and the HU software sends the current version information to the mobile device software. In addition, after receiving the current version information sent by the HU software, the mobile device software may send a network request for upgrading the HU software according to the current version number of the HU software in the current version information, so as to obtain the software version files with version numbers greater than the current version number of the HU software. Further, the mobile device software may send the software version files with version numbers greater than the current version number of the HU software to the service apparatus for HU software.
As an example, in order to improve the integrity of the software version files, the mobile device software may send the first command word data to the service apparatus for HU software, and the service apparatus for HU software starts the receiving operation in response to receiving the first command word data sent by the mobile device software. When transmission of the software version files from the mobile device software to the service apparatus for HU software is completed, the mobile device software may send the second command word data to the service apparatus for HU software. When the second command word data sent by the mobile device software is received, the service apparatus for HU software ceases the receiving operation, and integrates the received data and performs integrity verification, to obtain the software version files.
In step 405, the HU software is upgraded according to the software version files in response to the HU software being not in use.
In order to improve user experience, in the embodiment of the disclosure, after obtaining the software version files whose version number is greater than the current version number of the HU software, the HU software is upgraded according to the software version files in response to the HU software being not in use.
For example, as illustrated in
1. The mobile device software and the HU software establish a connection through an Internet of Vehicles (IoV) protocol in a wired or wireless manner.
2. After the connection is established, the mobile device software sends an instruction to obtain the HU software version information, and then the HU software returns the version information of the current HU software to the mobile device software.
3. After the mobile device software obtains the HU software version information, it can send a network request for obtaining version upgrade information.
4. The cloud returns the current configuration version information, and the contents of the version information include a version number of the current cloud configuration, MD5 value (verification value) of the current file, description contents of new version files, and the uniform resource locator (URL) of the software version files to be downloaded.
5. The mobile device software compares the version number returned by the cloud with the currently installed version number obtained from the HU software.
6. If the version number is greater than the current version number of the HU software, the mobile device software requests the cloud to download the software version files according to the URL of the HU software to be upgraded.
7. The cloud downloads the downloaded software version files to a cache directory specified by the mobile device software.
8. The downloaded software version files are verified by the mobile device software, to determine the safety of the downloaded files, and save the software version files.
9. After the verification is completed, the mobile device software starts to send the files to the HU software. Transmission medium can be universal serial bus (USB) wired transmission or wireless fidelity (WiFi) wireless transmission. The design logic of the file transfer protocol is as follows. Before the file transfer starts, the command word data MSG_FILE_TRANSFER_START is sent to inform the HU software to start transferring the files.
10. After receiving the command word data MSG_FILE_TRANSFER_START, the HU software analyzes the current data packet. The package body data content mainly includes: a MD5 value of a file, a file size, a file name and other related data, mainly used for reliability verification of the transferred file.
11. The HU software returns a response data packet MSG_FILE_TRANSFER_READY to the mobile device software to declare that the HU software is ready and can accept the software version file data.
12. After the mobile device software receives a ready instruction, it sends packet header data “MSG_FILE_TRANSFER_DATA” and package body data to the HU software, and the package body data includes byte content after conversion of the software version files.
13. When the HU software receives the packet header data “MSG_FILE_TRANSFER_DATA” and package body data, the package body data may be read and written into the file cache directory named with the transferred file.
14. The mobile device continuously transmits data until the whole file transmission is completed, then a data packet with a command word of MSG_FILE_TRANSFER_END is sent to inform the HU software that the transmission is completed.
15. The HU software needs to verify the integrity and security of the received files. For example, security verification is carried out according to the MD5 values in the package body of the command word when the transmission begins, and it is simultaneously determined whether the received file length is consistent with the file size of the transferred file, to ensure the integrity of the transferred file.
In conclusion, the software version files sent by the mobile device software corresponding to the HU software are received, in which each of the version numbers of the software version files is greater than the current version number of the HU software. When the HU software is not in use, the HU software is upgraded according to the software version files. Thus, when the version number of the software version file is greater than the current version number of the HU software, the HU software can be upgraded according to the software version files, which does not involve the illegal call of the service interfaces, thus improving the security of the HU software.
According to the service method for HU software in the embodiments of the disclosure, by calling the service interfaces of the operation services corresponding to the software-related operations in the HU system software, the execution result of the software-related operations by the operation services is obtained, and the connection protocols in the HU software and the service interfaces of the HU system software are split. Further, upgrading the HU software does not involve an illegal call of the service interfaces, which improves the security of the HU system software.
In order to realize the above embodiments, the disclosure also provides a head unit software.
The protocol layer 620 is configured to provide a communication protocol among HU software, mobile device software and HU system software. The connection layer 630 is configured to realize connections between the HU software, the mobile device software and the HU system software. The user interface layer 610 is configured to obtain software-related operations, determine service interfaces of operation services corresponding to the software-related operations in HU system software, and call the service interfaces to obtain an execution result of the software-related operations through the protocol layer and the connection layer. It should be noted that the operation services include at least one of the following services: video decoding service, in-vehicle data management service, audio focus service, and Bluetooth phone service. The service interfaces include at least one of the following interfaces: a vehicle control interface and a data forward interface. The vehicle control interface corresponds to the video decoding service, the audio focus service and the Bluetooth phone service. The data forward interface corresponds to the in-vehicle data management service.
As a possible implementation, the HU software further includes: an upgrade service layer, connected with the protocol layer and the connection layer, and configured to provide upgrade service of the HU software.
As a possible implementation, the HU software further includes the user interface layer. The user interface layer is configured to display the execution result on a user interface of the HU software; or, send the execution result to the mobile device software corresponding to the HU software through the protocol layer and the connection layer, to display the execution result on a user interface of the mobile device software.
With the HU software of the embodiments of the disclosure, the software-related operations are obtained through the user interface layer, the user interface layer determines the service interfaces of the operation services corresponding to the software-related operations in HU system software, and call the service interfaces to obtain the execution result of the software-related operations through the protocol layer and the connection layer, and connection protocols in the HU software and the service interfaces of the HU system software are split. Further, upgrading the HU software does not involve in an illegal call of the service interfaces, which improves the security of the HU system software.
In order to realize the above embodiments, the disclosure also provides a head unit (HU).
The HU system software is integrated with operation services and service interfaces corresponding to the operation services. The HU software is configured to determine the service interfaces of the operation services corresponding to the software-related operations in the HU software, and call the service interfaces to obtain the execution result of the software-related operations by the operation services.
In order to illustrate the above embodiments more clearly, examples are described as follows. For example, as illustrated in
The HU according to the embodiments of the disclosure include HU system software and HU software connected to the HU system software. Operation services and service interfaces of the operation services are integrated into the HU system software. The HU software is configured to determine the service interfaces of operation services corresponding to software-related operations in the HU system software, and call the service interfaces to obtain an execution result of the software-related operations by the operation services, thus achieving that connection protocols in the HU software and the service interfaces of the HU system software are split. Further, upgrading the HU software does not involve in an illegal call of the service interfaces, which improves the security of the HU system software.
In order to implement the above embodiments, the disclosure also provides a service apparatus for HU software.
The obtaining module 910 is configured to obtain software-related operations. The determining module 920 is configured to determine service interfaces of operation services corresponding to the software-related operations in HU system software. The calling module 930 is configured to call the service interfaces to obtain an execution result of the software-related operations by the operation services.
As a possible implementation, the obtaining module 910 is configured to: obtain the software-related operations of the HU software; or, obtain the software-related operations of the mobile device software corresponding to the HU software.
As a possible implementation, the operation services include at least one of the following services: video decoding service, in-vehicle data management service, audio focus service, and Bluetooth phone service.
As a possible implementation, the service interfaces include at least one of the following interfaces: a vehicle control interface and a data forward interface. The vehicle control interface corresponds to the video decoding service, the audio focus service and the Bluetooth phone service. The data forward interface corresponds to the in-vehicle data management service.
As a possible implementation, the service apparatus for HU software further includes: a displaying module.
The displaying module is configured to: display the execution result on a user interface of the HU software; or, send the execution result to the mobile device software corresponding to the HU software, to display the execution result on a user interface of the mobile device software.
As a possible implementation, the HU software service apparatus further includes: a receiving module and an updating module.
The receiving module is configured to receive software version files sent by the mobile device software corresponding to the HU software, in which each of version numbers of the software version files is greater than a current version number of the HU software. The updating module is configured to upgrade the HU software according to the software version files in response to the HU software being not in use.
As a possible implementation, the receiving module is further configured to: start a receiving operation in response to receiving first command word data sent by the mobile device software; cease the receiving operation in response to receiving second command word data sent by the mobile device software; and obtain the software version files by integrating the received data and performing integrity verification.
With the service apparatus for HU software according to the embodiments of the disclosure, by calling the service interfaces of the operation services corresponding to the software-related operations in the HU system software, the execution result of the software-related operations by the operation services is obtained, and connection protocols in the HU software and the service interfaces of the HU system software are split. Further, the upgrade of the HU software does not involve illegal calling of the service interfaces, which improves the security of the HU system software.
In the technical solution of the disclosure, under the premise of user consent, the acquisition, storage, application, processing, transfer, providing and disclosure of the user personal information are all comply with the provisions of relevant laws and regulations, and do not violate public order and good customs.
According to the embodiments of the disclosure, the disclosure also provides an electronic device, a readable storage medium and a computer program product.
As illustrated in
Components in the device 1000 are connected to the I/O interface 1005, including: an inputting unit 1006, such as a keyboard, a mouse; an outputting unit 1007, such as various types of displays, speakers; a storage unit 1008, such as a disk, an optical disk; and a communication unit 1009, such as network cards, modems, and wireless communication transceivers. The communication unit 1009 allows the device 1000 to exchange information/data with other devices through a computer network such as the Internet and/or various telecommunication networks.
The computing unit 1001 may be various general-purpose and/or dedicated processing components with processing and computing capabilities. Some examples of computing unit 1001 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various dedicated AI computing chips, various computing units that run machine learning model algorithms, and a digital signal processor (DSP), and any appropriate processor, controller and microcontroller. The computing unit 1001 executes the various methods and processes described above, such as the service method for HU software. For example, in some embodiments, the method may be implemented as a computer software program, which is tangibly contained in a machine-readable medium, such as the storage unit 1008. In some embodiments, part or all of the computer program may be loaded and/or installed on the device 1000 via the ROM 1002 and/or the communication unit 1009. When the computer program is loaded on the RAM 1003 and executed by the computing unit 1001, one or more steps of the method described above may be executed. Alternatively, in other embodiments, the computing unit 1001 may be configured to perform the method in any other suitable manner (for example, by means of firmware).
Various implementations of the systems and techniques described above may be implemented by a digital electronic circuit system, an integrated circuit system, Field Programmable Gate Arrays (FPGAs), Application Specific Integrated Circuits (ASICs), Application Specific Standard Products (ASSPs), System on Chip (SOCs), Load programmable logic devices (CPLDs), computer hardware, firmware, software, and/or a combination thereof. These various embodiments may be implemented in one or more computer programs, the one or more computer programs may be executed and/or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general programmable processor for receiving data and instructions from the storage system, at least one input device and at least one output device, and transmitting the data and instructions to the storage system, the at least one input device and the at least one output device.
The program code configured to implement the method of the disclosure may be written in any combination of one or more programming languages. These program codes may be provided to the processors or controllers of general-purpose computers, dedicated computers, or other programmable data processing devices, so that the program codes, when executed by the processors or controllers, enable the functions/operations specified in the flowchart and/or block diagram to be implemented. The program code may be executed entirely on the machine, partly executed on the machine, partly executed on the machine and partly executed on the remote machine as an independent software package, or entirely executed on the remote machine or server.
In the context of the disclosure, a machine-readable medium may be a tangible medium that may contain or store a program for use by or in connection with an instruction execution system, apparatus, or device. The machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memories (RAM), read-only memories (ROM), electrically programmable read-only-memory (EPROM), flash memory, fiber optics, compact disc read-only memories (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.
In order to provide interaction with a user, the systems and techniques described herein may be implemented on a computer having a display device (e.g., a Cathode Ray Tube (CRT) or a Liquid Crystal Display (LCD) monitor for displaying information to a user); and a keyboard and pointing device (such as a mouse or trackball) through which the user can provide input to the computer. Other kinds of devices may also be used to provide interaction with the user. For example, the feedback provided to the user may be any form of sensory feedback (e.g., visual feedback, auditory feedback, or haptic feedback), and the input from the user may be received in any form (including acoustic input, voice input, or tactile input).
The systems and technologies described herein can be implemented in a computing system that includes background components (for example, a data server), or a computing system that includes middleware components (for example, an application server), or a computing system that includes front-end components (for example, a user computer with a graphical user interface or a web browser, through which the user can interact with the implementation of the systems and technologies described herein), or include such background components, intermediate computing components, or any combination of front-end components. The components of the system may be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: local area network (LAN), wide area network (WAN), and the Internet.
The computer system may include a client and a server. The client and server are generally remote from each other and interacting through a communication network. The client-server relation is generated by computer programs running on the respective computers and having a client-server relation with each other. The server may be a cloud server, a server of a distributed system, or a server combined with a block-chain.
It should be understood that the various forms of processes shown above can be used to reorder, add or delete steps. For example, the steps described in the disclosure could be performed in parallel, sequentially, or in a different order, as long as the desired result of the technical solution disclosed in the disclosure is achieved, which is not limited herein.
The above specific embodiments do not constitute a limitation on the protection scope of the disclosure. Those skilled in the art should understand that various modifications, combinations, sub-combinations and substitutions can be made according to design requirements and other factors. Any modification, equivalent replacement and improvement made within the principle of the disclosure shall be included in the protection scope of the disclosure.
Number | Date | Country | Kind |
---|---|---|---|
202111070549.4 | Sep 2021 | CN | national |