A screen projection method and device, a car machine system, and a storage medium
By running the target background service in the system user space of the vehicle system, the screen projection data of the ordinary user space is obtained and transmitted, which solves the screen projection permission restriction of Android Auto application in multi-user scenarios and realizes data sharing for multi-user screen projection.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- SHANGHAI PATEO ELECTRONIC EQUIPMENT MANUFACTURING CO LTD
- Filing Date
- 2024-12-27
- Publication Date
- 2026-06-30
AI Technical Summary
In multi-user scenarios, the Android Auto application cannot achieve multi-user screen mirroring because ordinary users lack read/write permissions for devices such as USB/SD cards and dashcams, resulting in the inability to transmit screen mirroring data.
By running the target background service in the system user space of the vehicle system, screen projection data from the ordinary user space is obtained, and the data is transmitted to the screen projection application through a cross-process communication protocol to achieve multi-user screen projection.
The screen mirroring function of the vehicle system has been expanded, enabling data sharing and screen mirroring among multiple users and resolving the issue of permission restrictions.
Smart Images

Figure CN122308760A_ABST
Abstract
Description
Technical Field
[0001] This application relates to, but is not limited to, the field of data processing technology, and in particular to a screen projection method, device, vehicle infotainment system, and storage medium. Background Technology
[0002] Currently, the baseline for Android Auto applications (Apps) on in-vehicle infotainment systems is based on a single user. In recent years, multi-user scenarios within a single vehicle have become extremely common. For Android Auto Apps, data in each user's space is independent and does not interfere with each other.
[0003] In multi-user Android car infotainment systems, only the system user space typically has read and write permissions for devices such as Universal Serial Bus (USB) / Secure Digital Card (SD) cards and dashcams. Ordinary user spaces often do not have the relevant permissions, which results in the inability to project the screen onto the car infotainment system when multiple users are using it. Summary of the Invention
[0004] One embodiment of this application provides a screen mirroring method, device, vehicle infotainment system, and storage medium. Target data is obtained from a regular user space via a target background service running in the system user space of the vehicle infotainment system, and then transmitted to a screen mirroring application to achieve screen mirroring. By setting a target background service running in the system user space of the vehicle infotainment system, target data of accounts or users logged in in the regular user space can be obtained in the system user space and transmitted to the screen mirroring application for screen mirroring, thus realizing multi-user screen mirroring of the vehicle infotainment system and expanding the screen mirroring function of the vehicle infotainment system.
[0005] One embodiment of this application provides a screen projection method, device, vehicle system, and storage medium. By setting an interactive component that runs in the ordinary user space and interacts with the user in the screen projection application, the target backend service can obtain the target data of the mobile terminal through interaction with the interactive component, thereby realizing multi-user screen projection of the vehicle system and expanding the screen projection function of the vehicle system.
[0006] One embodiment of this application provides a screen mirroring method, device, vehicle system, and storage medium. In this method, a target cross-process communication protocol is used to enable a target background service running in the system user space to transmit target data to an interactive component, thereby enabling the screen mirroring application to obtain screen mirroring data under multiple users and realize multi-user screen mirroring.
[0007] One embodiment of this application provides a screen mirroring method, device, vehicle system, and storage medium, wherein a first attribute of the target background service is pre-set so that the target background service can run in the system user space, thereby enabling the acquisition of target data under multiple users to achieve multi-user screen mirroring.
[0008] One embodiment of this application provides a screen mirroring method, device, vehicle system, and storage medium. In this method, after the vehicle system has started up and a message indicating that the vehicle system has started up is generated, the system starts up and listens for whether the mobile terminal is connected to the vehicle system. This allows the target background service to execute the screen mirroring method after the vehicle system starts up, thus enabling multi-user screen mirroring after the vehicle system has started up.
[0009] One embodiment of this application provides a screen projection method, device, vehicle system, and storage medium. In this embodiment, when the access node indicates that the mobile terminal is connected to the vehicle system via USB, a USB connection mode is set to avoid the inability to perform data communication due to an incorrect USB connection mode. This enables the mobile terminal and the vehicle system to establish a USB connection to transmit screen projection data.
[0010] One embodiment of this application provides a screen projection method, device, vehicle system, and storage medium. In this embodiment, the access node indicates that the mobile terminal is connected to the vehicle system via USB. The USB interface mode is set to AOA mode, thereby switching the USB connection between the mobile terminal and the vehicle system from charging mode to data communication mode, thus preparing for multi-user screen projection.
[0011] One embodiment of this application provides a screen projection method, device, vehicle system, and storage medium. In this method, when the vehicle system's WiFi is enabled, a WiFi connection account, WiFi connection password, and WiFi connection channel are set to enable WiFi connection between the vehicle system and the mobile terminal, thus preparing for multi-user screen projection.
[0012] To achieve at least one of the above objectives, in a first aspect, one embodiment of this application provides a screen mirroring method, the method being applied to a target background service in a vehicle infotainment system, the target background service running in the system user space of the vehicle infotainment system, the screen mirroring method comprising:
[0013] In response to the detection of a mobile terminal accessing the vehicle system, a connection is established with the access node; the user corresponding to the mobile terminal logs into the ordinary user space of the vehicle system;
[0014] Acquire the target data from the mobile terminal;
[0015] The target data is transmitted to the screen mirroring application to perform the screen mirroring process.
[0016] Secondly, one embodiment of this application provides a screen projection device, the device being installed in an in-vehicle infotainment system, the in-vehicle infotainment system including a target background service, the target background service running in the system user space of the in-vehicle infotainment system, the screen projection device comprising:
[0017] The connection module is used to establish a connection with the access node in response to the detection of a mobile terminal accessing the vehicle system; the user corresponding to the mobile terminal is logged into the ordinary user space of the vehicle system.
[0018] The acquisition module is used to acquire target data from the mobile terminal;
[0019] The screen mirroring module is used to transmit the target data to the screen mirroring application for the screen mirroring process.
[0020] Thirdly, embodiments of this application provide a vehicle infotainment system, including a memory and a processor. The memory stores a computer program that can run on the processor, and the processor executes the program to implement some or all of the steps in the above-described method.
[0021] Fourthly, embodiments of this application provide a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements some or all of the steps in the above-described method.
[0022] It should be understood that the above general description and the following detailed description are merely exemplary and explanatory, and are not intended to limit the technical solutions of this application. Attached Figure Description
[0023] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with this application and, together with the specification, serve to explain the technical solutions of this application.
[0024] Figure 1 A flowchart illustrating an optional screen mirroring method provided in an embodiment of this application;
[0025] Figure 2 A schematic diagram of an optional screen projection device provided in an embodiment of this application;
[0026] Figure 3 This is a schematic diagram of an optional vehicle infotainment system provided in an embodiment of this application. Detailed Implementation
[0027] To make the objectives, technical solutions, and advantages of this application clearer, the technical solutions of this application are further described in detail below with reference to the accompanying drawings and embodiments. The described embodiments should not be regarded as limitations on this application. All other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.
[0028] In the following description, references to "some embodiments" refer to a subset of all possible embodiments. It is understood that "some embodiments" may be the same or different subsets of all possible embodiments and may be combined with each other without conflict. The terms "first / second / third" are used merely to distinguish similar objects and do not represent a specific ordering of objects. It is understood that "first / second / third" may be interchanged in a specific order or sequence where permitted, so that the embodiments of this application described herein can be implemented in an order other than that illustrated or described herein.
[0029] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application pertains. The terminology used herein is for descriptive purposes only and is not intended to limit the scope of this application.
[0030] Android Auto is an Android feature launched by Google specifically designed for cars. It aims to replace the car manufacturer's native in-vehicle system for running Android apps and services and accessing Android phone content. Centered on the phone, it maps some of the phone's functions to the car's screen by connecting the phone to the in-vehicle system.
[0031] Android Automotive is a basic Android platform that runs pre-installed Android apps in in-vehicle infotainment (IVI) systems, as well as optional second- and third-party Android apps. It integrates the Android system directly into the car as a standalone in-vehicle infotainment system.
[0032] Google's Android Auto app baseline, launched in 2014, was based on single-user local communication. In recent years, with the iterative updates of Android and Automotive, multi-user scenarios within a single vehicle have become extremely common. For the Android Auto app, data in each user's space is independent and does not interfere with each other.
[0033] However, in multi-user space Android car infotainment systems, usually only U0 has read and write permissions for devices such as USB / SD cards and dashcams, while other user spaces (U10 and U10+) often do not have the relevant permissions.
[0034] To address the issue of multiple users projecting their screens onto the vehicle's infotainment system, this application provides a screen projection method. This method is applied to a target background service within the vehicle's infotainment system, which runs in the system's user space. Figure 1 A flowchart illustrating an optional screen mirroring method provided in an embodiment of this application is shown below. Figure 1 As shown, the screen mirroring method may include:
[0035] S101: In response to detecting a mobile terminal accessing the vehicle system, establish a connection with the access node;
[0036] The target backend service listens for mobile terminal access events. If the event is detected, it responds to it by establishing a connection with the mobile terminal's access node. The user corresponding to the mobile terminal is logged into the regular user space of the vehicle's infotainment system.
[0037] In other words, after the mobile terminal establishes a connection with the vehicle's infotainment system, the user corresponding to the mobile terminal logs in the ordinary user space of the vehicle's infotainment system. In addition to the ordinary user space, the vehicle's infotainment system also includes a system user space. Accounts logged in to the ordinary user space or applications opened by users do not have read / write permissions for devices such as USB / SD cards or dashcams, while accounts logged in to the system user space or applications opened by users do have read / write permissions for devices such as USB / SD cards or dashcams.
[0038] User login is equivalent to account login. When an account is logged in to the user space on the vehicle system, neither the account nor the application opened by the user has read or write permissions for devices such as USB / SD cards and dashcams. Conversely, an account logged in to the system's user space or a user opening an application has various read and write permissions.
[0039] In one embodiment, the mobile terminal can access the vehicle system via a USB data cable or via Wireless Fidelity (WiFi).
[0040] S102: Obtain target data from the mobile terminal;
[0041] The above-mentioned S101 enables the vehicle system to establish a connection with the mobile terminal. When the connection is established, the user corresponding to the mobile terminal logs in the ordinary user space of the vehicle system. In S103, the target background service obtains the target data in the mobile terminal.
[0042] Here, the target data of the mobile terminal is the projection data that the mobile terminal needs to project to the vehicle system. It can be video data, audio data, or document data. This application embodiment does not specifically limit this.
[0043] After the target backend service establishes a connection with the access node of the mobile terminal, the screen projection data will be transmitted to the target backend service through the access node. The target backend service runs in the system user space, and the screen projection data will also be transmitted to the system user space.
[0044] Since the user corresponding to the mobile terminal is logged into the regular user space of the vehicle's infotainment system, the corresponding screen mirroring application also runs in this regular user space. Therefore, the screen mirroring application lacks read / write permissions for devices such as USB / SD cards and dashcams, and thus cannot obtain the screen mirroring data from the mobile terminal to the vehicle's infotainment system. To address this, a target background service running in the vehicle's system's user space obtains the target data and then transmits it to the screen mirroring application for playback. The target background service essentially establishes a transmission channel between the screen mirroring application and the screen mirroring data, enabling the screen mirroring application, which lacks read permissions, to access the screen mirroring data.
[0045] S103: Transfer the target data to the screen mirroring application to perform the screen mirroring process.
[0046] In S102, the target background service running in the system user space of the vehicle system obtains the target data. In S103, the target background service running in the system user space of the vehicle system transmits the target data to the screen mirroring application of the vehicle system, so that the screen mirroring application can use the target data for screen mirroring.
[0047] In this way, target data is obtained through a target background service running in the system user space of the vehicle infotainment system, and then transmitted to the screen mirroring application to achieve screen mirroring. Alternatively, by configuring the target background service running in the system user space of the vehicle infotainment system to transmit the target data to the screen mirroring application running in the regular user space, screen mirroring can be performed. Thus, even if multiple users are logged into the regular user space, screen mirroring can still be achieved through this solution, enabling multi-user screen mirroring of the vehicle infotainment system and expanding its screen mirroring functionality.
[0048] In order to acquire target data from the mobile terminal, in one optional embodiment, the screen mirroring application includes an interactive component that interacts with the user, and the interactive component runs in the ordinary user space.
[0049] Understandably, screen mirroring applications include interactive components that interact with users. These interactive components run in the ordinary user space, enabling target background services running in the system user space to interact with the interactive components running in the ordinary user space. This allows the target background services to obtain target data from the mobile terminal through interaction with the interactive components.
[0050] In this way, by setting up an interactive component that runs in the ordinary user space and interacts with the user in the screen casting application, the target backend service can obtain the target data of the mobile terminal through interaction with the interactive component, thereby realizing multi-user screen casting of the vehicle system and expanding the screen casting function of the vehicle system.
[0051] In one optional embodiment, transferring target data to a screen mirroring application may include:
[0052] The target data is transmitted to the interactive component via the target cross-process communication protocol.
[0053] Understandably, data transfer between a target background service running in the system user space and a screen mirroring application can be achieved through data transfer between the target background service running in the system user space and the interactive components of the screen mirroring application.
[0054] Specifically, the target background service running in the system user space transmits target data to the interactive component through the target inter-process communication protocol, thereby enabling the target background service running in the system user space to transmit data to the screen casting application.
[0055] The screen mirroring application runs in the normal user space, so the interactive components of the screen mirroring application also run in the normal user space, while the background target service runs in the system user space. In order to achieve data transmission, the target data is transmitted through a cross-process communication protocol.
[0056] The target inter-process communication protocol can be implemented by adding a new .aidl file, which is used for inter-process communication (IPC) between the target background service running in the system user space and the interactive component (Activity).
[0057] Through the target inter-process communication protocol, the interactive component (Activity) transmits the received user operation data to the target background service. The target background service then sends the user operation data to the mobile terminal. The mobile terminal responds based on the user operation data and generates modified projection data. The target background service then transmits the modified projection data to the projection application for projection through the target inter-process communication protocol, thereby realizing the interaction process with the user.
[0058] In this way, through the target cross-process communication protocol, the target background service running in the system user space can transmit the target data to the interactive component, thereby enabling the screen casting application to obtain screen casting data under multiple users and realize multi-user screen casting.
[0059] In one optional embodiment, the target background service is pre-configured with a first attribute, which is used to ensure that the target background service runs in the system user space.
[0060] Understandably, during the development phase, a first attribute is set for the target backend service. This first attribute ensures that the target backend service runs in the system user space, thereby enabling the aforementioned screen mirroring method.
[0061] Specifically, in Android system development, a first attribute is added to AndroidManifest.xml. The first attribute is used to restrict the target background service to run in the system user space.
[0062] In this way, by pre-setting the first attribute of the target backend service, the target backend service can run in the system user space, thereby obtaining target data under multiple users to achieve multi-user screen projection.
[0063] Furthermore, in order to enable screen projection for the multi-user vehicle exit system, in one optional embodiment, the above method further includes:
[0064] After the vehicle infotainment system starts up and generates a broadcast message, it starts and listens for whether the mobile terminal is connected to the vehicle infotainment system.
[0065] Understandably, after the vehicle infotainment system starts up, a broadcast message will be generated. This broadcast message is used to indicate that the vehicle infotainment system has finished starting up. At this time, the target background service starts up and listens for whether a mobile terminal is connected to the vehicle infotainment system. Thus, after the vehicle infotainment system finishes starting up and generates a message indicating that the vehicle infotainment system has finished starting up, the target background service starts up and listens for whether a mobile terminal is connected to the vehicle infotainment system.
[0066] Thus, by starting the vehicle system and generating a message indicating that the vehicle system has started, the system starts and listens for whether the mobile terminal is connected to the vehicle system, so that the target background service can execute the above screen projection method after the vehicle system starts, and multi-user screen projection can be realized after the vehicle system starts.
[0067] To enable USB connectivity between the vehicle infotainment system and the mobile terminal, in one optional embodiment, after detecting that the mobile terminal has accessed the vehicle infotainment system and establishing a connection with the access node, the method may include:
[0068] The access node indicates that the mobile terminal is connected to the vehicle system via USB and the USB connection mode is set.
[0069] Understandably, after detecting that a mobile terminal is connected to the vehicle's infotainment system, the target backend service checks the access node. If the access node indicates that the mobile terminal is connected to the vehicle's infotainment system via USB, the target backend service responds by setting the USB connection mode. Since the USB connection can be in charging mode or AOA mode, here, with the USB already inserted, after obtaining the access node, it will switch to AOA mode, converting the USB charging mode to data communication mode.
[0070] Thus, by setting the USB connection mode when the access node indicates that the mobile terminal is connected to the vehicle system via USB, the inability to communicate data due to an incorrect USB connection mode can be avoided, enabling the mobile terminal and the vehicle system to establish a USB connection to transmit screen projection data.
[0071] Furthermore, to enable USB connectivity between the vehicle infotainment system and the mobile terminal, in one optional embodiment, setting the USB connection mode may include:
[0072] Switch the USB connection mode to AOA mode.
[0073] Understandably, in order to enable USB data communication between the vehicle system and the mobile terminal, the USB connection mode can be switched to AOA mode. USB AOA (Android Open Accessory) mode is a special accessory mode that allows external USB hardware to interact with Android devices.
[0074] In AOA mode, the connected accessory acts as the USB host (powering the bus and listing devices), while the Android device acts as the USB accessory. In this mode, the Android device can transfer data and communicate with external hardware via the USB interface.
[0075] Thus, by using the access node to indicate that the mobile terminal is connected to the vehicle system via USB, the mode of the USB interface is set to AOA mode, thereby switching the USB connection between the mobile terminal and the vehicle system from charging mode to data communication mode, preparing for multi-user screen projection.
[0076] To enable WiFi connectivity between the vehicle infotainment system and the mobile terminal, in one optional embodiment, before establishing a connection with the access node upon detecting that the mobile terminal is accessing the vehicle infotainment system, the method may further include:
[0077] In response to the vehicle's infotainment system having WiFi enabled, configure the WiFi connection parameters.
[0078] Understandably, when the vehicle's infotainment system's WiFi is enabled, it means that the system may use WiFi to establish a connection with the mobile terminal. Therefore, here, the WiFi connection parameters are set, which can be the WiFi connection account, WiFi connection password, and WiFi connection channel. Here, the target backend service sets the WiFi connection account, WiFi connection password, and WiFi connection channel. After the settings are completed, the mobile terminal can establish a wireless connection with the vehicle's infotainment system via WiFi. After the connection is established, the target backend service then establishes a connection with the access node.
[0079] In this way, by setting the WiFi connection account, WiFi connection password and WiFi connection channel when the vehicle system's WiFi is enabled, the WiFi connection between the vehicle system and the mobile terminal can be realized, preparing for multi-user screen projection.
[0080] The following examples illustrate the screen mirroring method described in one or more of the above embodiments.
[0081] This example addresses the following two scenarios:
[0082] 1. Some operating systems restrict the reading and writing of USB / SD cards and dashcams to the U0 system user space (Android calls this a Headless user); a Headless user refers to a special type of system user. This type of user holds all system services but does not interact directly with the user; that is, it focuses on providing core functions or services without directly involving the user's interface.
[0083] 2. In a multi-user vehicle infotainment system, the user's login space is usually the U10 space (if there are other users, it is called U10+). When clicking on the Android Auto application in the launcher interface that the user can see, the Android Auto application cannot be used via wired or wireless connection because it cannot read the USB / WiFi wireless access point (AP) status.
[0084] In this example, U0 is the system user space mentioned above, while U10 and U10+ are both ordinary user spaces.
[0085] The screen mirroring method in this example may include the following steps:
[0086] S201: Handle USB / WiFi read / write and listening operations in a separate background Service;
[0087] Among them, the background service refers to the target background service mentioned above.
[0088] S202: Add a first attribute to the AndroidManifest.xml file of the Android Auto application to ensure that the background service runs in U0, in order to resolve the USB / WiFi permission issue;
[0089] S203: Activities located in different ordinary user spaces and background services located in U0 communicate across processes by adding a new .aidl (or lightweight Messenger);
[0090] S204: Complete USB / WiFi screen mirroring;
[0091] S205: Casting screen...;
[0092] S206: End screen mirroring.
[0093] In order to capture WiFi and USB status upon power-on, this application adds a target background service, the main business logic of which includes:
[0094] ①. After Automotive boots up and receives the BOOT_COMPLETE message, start the background service for this target.
[0095] ②. Monitor the USB status and switch the USB connection mode to AOA mode when the USB is plugged in;
[0096] ③. Monitor WiFi status, and when WiFi is enabled, set the WiFi AP's connection account, connection password, and connection channel, etc.
[0097] Add the first attribute to the AndroidManifest.xml file of the Android Auto application. This attribute ensures that the target background service is running on U0. Requests from U10+ to connect to the target background service will be routed to the target background service process in the system user space of U0. In this way, the target background service has read and write permissions on the USB / SD card of U0.
[0098] Since the Activity, which interacts with the user (equivalent to the above-mentioned interactive component), does not have a first attribute set, it runs as a process in each ordinary user space. For example, Android Auto in U10 runs as a separate process.
[0099] Because the target background service runs in U0 and the Activity that interacts with the user runs in U10+, the original local communication of the single-user flow cannot be used. Therefore, a new .aidl file is added for cross-process IPC communication between the target background service and the Activity.
[0100] As can be seen, in this example, by optimizing the original single-user business logic and placing the business logic that only has USB / SD permissions in U0 into the target background service, the permission issue is resolved. The user-related Activity is independent of each ordinary user space and communicates with the target background service through Android's standard inter-process communication means (.aidl). Because it uses standard aidl inter-process communication, it has strong platform consistency and can be quickly adapted when there are no major updates to Android. Since the Activity runs in U10+, when the system enters a suspend state and memory (STR) or the Central Processing Unit (CPU) / Memory (MEM) is insufficient, the operating system releases the resources of U10+, but the core business can be moved down to the target background service, and the core business can still run normally.
[0101] Based on the foregoing embodiments, this application provides a screen projection device. The device is installed in an in-vehicle infotainment system, which includes a target background service that runs in the system user space of the in-vehicle infotainment system. The device includes the included units and the modules included in each unit, which can be implemented by a processor in a computer device; of course, it can also be implemented by specific logic circuits. In the implementation process, the processor can be a central processing unit (CPU), a microprocessor unit (MPU), a digital signal processor (DSP), or a field programmable gate array (FPGA), etc.
[0102] Figure 2 This is a schematic diagram of the structure of a screen projection device provided in an embodiment of this application, as shown below. Figure 2 As shown, the projection device 200 includes: a connection module 21, an acquisition module 22, and a projection module 23, wherein:
[0103] Connection module 21 is used to establish a connection with the access node in response to the detection of a mobile terminal accessing the vehicle system; the user corresponding to the mobile terminal is logged in the ordinary user space of the vehicle system;
[0104] Acquisition module 22 is used to acquire target data in the mobile terminal;
[0105] The screen mirroring module 23 is used to transmit the target data to the screen mirroring application for the screen mirroring process.
[0106] In one alternative embodiment, the screen mirroring application includes an interactive component that interacts with the user, the interactive component running in a normal user space.
[0107] In one alternative embodiment, transmitting the target data to the screen mirroring application includes transmitting the target data to the interactive component via a target inter-process communication protocol.
[0108] In one alternative embodiment, the target background service is pre-configured with a first attribute, which is used to ensure that the target background service runs in the system user space.
[0109] In an optional embodiment, the device is further configured to: after the vehicle system starts up and generates a broadcast message, start and listen for whether the mobile terminal has accessed the vehicle system; wherein the broadcast message is used to indicate that the vehicle system has finished starting up.
[0110] In an optional embodiment, the device is further configured to: in response to detecting that a mobile terminal has accessed the vehicle infotainment system and establishing a connection with the access node, and in response to the access node indicating that the mobile terminal has accessed the vehicle infotainment system via USB, set the USB connection mode.
[0111] In one optional embodiment, the device sets the USB connection mode, including switching the USB connection mode to AOA mode.
[0112] In an optional embodiment, the device is further configured to: in response to detecting that a mobile terminal has accessed the vehicle system and before establishing a connection with the access node, set the WiFi connection parameters in response to the WiFi being enabled in the vehicle system.
[0113] The descriptions of the apparatus embodiments above are similar to those of the method embodiments above, and have similar beneficial effects. In some embodiments, the functions or modules included in the apparatus provided in this application can be used to perform the methods described in the method embodiments above. For technical details not disclosed in the apparatus embodiments of this application, please refer to the descriptions of the method embodiments of this application for understanding.
[0114] It should be noted that, in the embodiments of this application, if the above-described voice control method is implemented as a software functional module and sold or used as an independent product, it can also be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the embodiments of this application, or the part that contributes to the related technology, can be embodied in the form of a software product. This software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, mobile hard drives, read-only memory (ROM), magnetic disks, or optical disks. Thus, the embodiments of this application are not limited to any specific hardware, software, or firmware, or any combination of hardware, software, and firmware.
[0115] This application provides a computer device including a memory and a processor. The memory stores a computer program that can run on the processor. When the processor executes the program, it implements some or all of the steps in the above-described method.
[0116] This application provides a computer-readable storage medium storing a computer program thereon, which, when executed by a processor, implements some or all of the steps in the above-described method. The computer-readable storage medium can be transient or non-transient.
[0117] This application provides a computer program including computer-readable code, wherein when the computer-readable code is executed in a computer device, a processor in the computer device performs some or all of the steps in the above-described method.
[0118] This application provides a computer program product, which includes a non-transitory computer-readable storage medium storing a computer program. When the computer program is read and executed by a computer, it implements some or all of the steps in the above-described method. This computer program product can be implemented specifically through hardware, software, or a combination thereof. In some embodiments, the computer program product is specifically embodied as a computer storage medium; in other embodiments, the computer program product is specifically embodied as a software product, such as a software development kit (SDK), etc.
[0119] It should be noted that the descriptions of the various embodiments above tend to emphasize the differences between them, while their similarities or commonalities can be referred to interchangeably. The descriptions of the above embodiments of the device, storage medium, computer program, and computer program product are similar to the descriptions of the above method embodiments and have similar beneficial effects. For technical details not disclosed in the embodiments of the device, storage medium, computer program, and computer program product of this application, please refer to the descriptions of the method embodiments of this application for understanding.
[0120] Figure 3 This is a schematic diagram of the structure of a vehicle infotainment system provided in an embodiment of this application, such as... Figure 3 As shown, the hardware entity of the vehicle infotainment system 300 includes a processor 31 and a memory 32, wherein the memory 32 stores a computer program that can run on the processor 31, and the processor 31 executes the program to implement the steps in the method of any of the above embodiments.
[0121] The memory 32 stores computer programs that can run on the processor. The memory 32 is configured to store instructions and applications that can be executed by the processor 31. It can also cache data to be processed or already processed by the processor 31 and various modules in the vehicle system 300 (e.g., image data, audio data, voice communication data and video communication data). It can be implemented by flash memory or random access memory (RAM).
[0122] The processor 31 executes the program to implement the screen projection method steps described above. The processor 31 typically controls the overall operation of the vehicle infotainment system 300.
[0123] This application provides a computer storage medium that stores one or more programs, which can be executed by one or more processors to implement the screen projection method steps of any of the above embodiments.
[0124] It should be noted that the descriptions of the storage medium and device embodiments above are similar to the descriptions of the method embodiments above, and have similar beneficial effects. For technical details not disclosed in the storage medium and device embodiments of this application, please refer to the descriptions of the method embodiments of this application for understanding.
[0125] The aforementioned processor can be at least one of the following: Application Specific Integrated Circuit (ASIC), Digital Signal Processor (DSP), Digital Signal Processing Device (DSPD), Programmable Logic Device (PLD), Field Programmable Gate Array (FPGA), Central Processing Unit (CPU), Controller, Microcontroller, and Microprocessor. It is understood that other electronic devices can also implement the functions of the aforementioned processor, and this application does not specifically limit the specific implementation.
[0126] The aforementioned computer storage media / memory can be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), magnetic random access memory (FRAM), flash memory, magnetic surface memory, optical disc, or compact disc read-only memory (CD-ROM), etc.; or it can be various terminals that include one or any combination of the above-mentioned memories, such as mobile phones, computers, tablet devices, personal digital assistants, etc.
[0127] It should be understood that the phrase "one embodiment" or "an embodiment" throughout the specification means that a specific feature, structure, or characteristic related to the embodiment is included in at least one embodiment of this application. Therefore, "in one embodiment" or "in an embodiment" appearing throughout the specification does not necessarily refer to the same embodiment. Furthermore, these specific features, structures, or characteristics can be combined in any suitable manner in one or more embodiments. It should be understood that in the various embodiments of this application, the sequence numbers of the above steps / processes do not imply a sequential order of execution; the execution order of each step / process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this application. The sequence numbers of the above embodiments of this application are merely descriptive and do not represent the superiority or inferiority of the embodiments.
[0128] It should be noted that, in this document, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Unless otherwise specified, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes that element.
[0129] In the several embodiments provided in this application, it should be understood that the disclosed devices and methods can be implemented in other ways. The device embodiments described above are merely illustrative. For example, the division of units is only a logical functional division, and in actual implementation, there may be other division methods, such as: multiple units or components can be combined, or integrated into another system, or some features can be ignored or not executed. In addition, the coupling, direct coupling, or communication connection between the various components shown or discussed can be through some interfaces, and the indirect coupling or communication connection between devices or units can be electrical, mechanical, or other forms.
[0130] The units described above as separate components may or may not be physically separate. The components shown as units may or may not be physical units. They may be located in one place or distributed across multiple network units. Some or all of the units may be selected to achieve the purpose of this embodiment according to actual needs.
[0131] In addition, each functional unit in the various embodiments of this application can be integrated into one processing unit, or each unit can be a separate unit, or two or more units can be integrated into one unit; the integrated unit can be implemented in hardware or in the form of hardware plus software functional units.
[0132] Those skilled in the art will understand that all or part of the steps of the above method embodiments can be implemented by hardware related to program instructions. The aforementioned program can be stored in a computer-readable storage medium. When the program is executed, it performs the steps of the above method embodiments. The aforementioned storage medium includes various media that can store program code, such as mobile storage devices, read-only memory (ROM), magnetic disks, or optical disks.
[0133] Alternatively, if the integrated units described above are implemented as software functional modules and sold or used as independent products, they can also be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence or the part that contributes to related technologies, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as mobile storage devices, ROM, magnetic disks, or optical disks.
[0134] The above description is merely an embodiment of this application, but the scope of protection of this application is not limited thereto. Any changes or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application.
Claims
1. A screen projection method, characterized in that, The method is applied to a target background service in the vehicle infotainment system, the target background service running in the system user space of the vehicle infotainment system, and the screen projection method includes: In response to the detection of a mobile terminal accessing the vehicle system, a connection is established with the access node; the user corresponding to the mobile terminal logs into the ordinary user space of the vehicle system; Obtain the target data from the mobile terminal; The target data is transmitted to the screen mirroring application to perform the screen mirroring process.
2. The screen projection method according to claim 1, characterized in that, The screen mirroring application includes interactive components that interact with the user, and these interactive components run in the ordinary user space.
3. The screen projection method according to claim 2, characterized in that, The step of transmitting the target data to the screen mirroring application includes: The target data is transmitted to the interactive component via the target inter-process communication protocol.
4. The screen mirroring method according to any one of claims 1 to 3, wherein the target background service is pre-set with a first attribute, the first attribute being used to ensure that the target background service runs in the system user space.
5. The method according to claim 1, characterized in that, The method further includes: After the vehicle system starts up and generates a broadcast message, start and listen for whether the mobile terminal is connected to the vehicle system; The broadcast message is used to indicate that the vehicle system has started up.
6. The method according to claim 1, characterized in that, After detecting that a mobile terminal has accessed the vehicle infotainment system and established a connection with the access node, the method further includes: In response to the access node indicating that the mobile terminal is connected to the vehicle system via USB, the USB connection mode is set.
7. The method according to claim 6, characterized in that, The setting of the USB connection mode includes: Switch the USB connection mode to AOA mode.
8. The method according to claim 1, characterized in that, Before the mobile terminal is detected accessing the vehicle infotainment system and a connection is established with the access node, the method further includes: In response to the WiFi being enabled in the vehicle infotainment system, the connection parameters of the WiFi are set.
9. A screen projection device, characterized in that, The device is installed in the vehicle infotainment system, which includes a target background service that runs in the system user space of the vehicle infotainment system. The screen projection device includes: The connection module is used to establish a connection with the access node in response to the detection of a mobile terminal accessing the vehicle system; the user corresponding to the mobile terminal is logged into the ordinary user space of the vehicle system. The acquisition module is used to acquire target data from the mobile terminal; The screen mirroring module is used to transmit the target data to the screen mirroring application for the screen mirroring process.
10. A vehicle infotainment system, comprising a memory and a processor, wherein the memory stores a computer program executable on the processor, characterized in that, When the processor executes the program, it implements the steps of the method according to any one of claims 1 to 8.
11. A computer-readable storage medium having a computer program stored thereon, characterized in that, When executed by a processor, the computer program performs the steps of the method according to any one of claims 1 to 8.