Application switching method and system, vehicle and storage medium

By identifying and adjusting the switching actions between applications with different dimension attributes, the problem of poor application switching effect in the prior art is solved, and efficient and silky switching between different types of applications is achieved, improving the user experience.

CN119960875APending Publication Date: 2025-05-09BEIJING PHOENIX AUTO INTELLIGENCE CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411936315.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-26
Publication Date
2025-05-09

AI Technical Summary

Technical Problem

Existing application switching technologies are difficult to achieve silky, smooth and efficient switching between different types of applications, resulting in poor user experience.

Method used

By responding to the application switching action, the dimensional attributes of the first application currently displayed on the interface and the second application expected to be switched are determined, the application switching type is determined based on these attributes, and the application window adjustment is performed to achieve effective switching.

Benefits of technology

Effective switching between applications with different dimension attributes improves the smoothness and fluency of application switching and improves user satisfaction with application switching.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119960875A_ABST
    Figure CN119960875A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of application switching, and discloses an application switching method and system, a vehicle and a storage medium, the method comprises the steps that in response to an application switching action, a first application currently displayed on an interface and a second application expected to be switched are determined, and the dimension attributes of the first application and the second application are different; determining an application switching type based on the first application and the second application; and adjusting the application window based on the application switching type, and displaying the second application. The application switching type is determined through the first application currently displayed on the interface and the second application expected to be switched, and the second application is displayed after the application window is adjusted according to the application switching type, so that smooth, smooth and effective switching among the applications with different dimension attributes can be realized, the switching effect of the applications with different types is improved, and the switching efficiency of the applications with different dimensions is improved. And meanwhile, the use experience of the user is greatly improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of application switching, and in particular to an application switching method, system, vehicle and storage medium. Background Art

[0002] Currently, in order to improve the user experience, the Android system has built-in multiple architectures to realize the transition between application interfaces (i.e., application switching), such as the dynamic effect framework for setting the entry and exit of the window, which can realize the interface transition switching effects such as interface fade-in and fade-out, slide-in and slide-out. For example, the Android attribute animation framework can continuously update the attributes of any object to achieve interface transition effects. However, the solutions provided by the above Android system have a single conversion effect, which leads to a poor user experience; and the above solutions are only applicable to interface switching between ordinary applications, and cannot be perfectly compatible with different types of applications, such as interface switching between three-dimensional (Three Dimensions, 3D) applications and two-dimensional (Two Dimensions, 2D) applications.

[0003] In addition, with the deepening of the customization of vehicle systems and the improvement of system-level chip (SOC) computing power and memory, the interface switching effects implemented based on the Android system's own interface transition framework will face many challenges such as users' higher personalized requirements for the human-machine interface (HMI), the smoothness of interface switching, and more efficient user experience and pursuit. Therefore, there is an urgent need for a solution that can achieve efficient interface transitions between different types of applications, so as to make application switching smoother and thus improve the switching effect of the application interface. Summary of the invention

[0004] In view of this, the present invention provides an application switching method, system, vehicle and storage medium to solve the problem that the existing application switching is difficult to achieve smooth, fluent and efficient switching between different types of applications, resulting in poor application switching effect and seriously affecting the user experience.

[0005] In a first aspect, the present invention provides an application switching method, the method comprising:

[0006] In response to the application switching action, determining a first application currently displayed on the interface and a second application to be switched, wherein the first application and the second application have different dimension attributes;

[0007] determining an application switching type based on the first application and the second application;

[0008] The application window is adjusted based on the application switching type, and the second application is displayed.

[0009] The application switching method of the present invention responds to an application switching action, determines the application switching type through the first application currently displayed on the interface and the second application to be switched, and displays the second application after adjusting the application window according to the application switching type. It can achieve effective switching between applications with different dimensional attributes, thereby making the application switching smoother, which not only ensures the switching effect of different types of applications, but also greatly improves the user's satisfaction with application switching.

[0010] In an optional implementation, when the application switching type is switching from a three-dimensional application to a two-dimensional application, the application window is adjusted based on the application switching type, including:

[0011] Get the current value corresponding to the transparency channel in the current window of the first application;

[0012] Adjust the current value to the first preset value.

[0013] When a three-dimensional application is switched to a two-dimensional application, the present invention adjusts the transparency channel value of the window corresponding to the three-dimensional application to achieve a window fading effect, thereby realizing smooth switching of the application.

[0014] In an optional implementation, when the application switching type is switching from a two-dimensional application to a three-dimensional application, adjusting the application window based on the application switching type includes:

[0015] Obtaining a current value corresponding to a transparency channel in a current window of a second application;

[0016] The current value is adjusted to a second preset value, wherein the second preset value is greater than the first preset value.

[0017] When a two-dimensional application is switched to a three-dimensional application, the present invention adjusts the transparency channel value of the window corresponding to the three-dimensional application to achieve a window gradual display effect, which helps to achieve smooth switching of applications.

[0018] In an optional implementation, the application switching method further includes:

[0019] Obtaining a current window level corresponding to a current window of the first application or the second application;

[0020] Adjust the current window level to the system window and perform the preset switching effect on the current window.

[0021] The present invention changes the window level corresponding to the three-dimensional application to the system level so that the interface preferentially displays the window corresponding to the three-dimensional application, which can further improve the application switching effect and thus improve the user experience.

[0022] In an optional implementation, when the application switching type is switching from a three-dimensional application to a two-dimensional application, displaying a second application includes:

[0023] Obtaining current status data of the second application;

[0024] When the preset switching animation of the first application corresponding to the current window is executed, the current status data is displayed in the current window.

[0025] The present invention targets the application switching type of switching from a three-dimensional application to a two-dimensional application. By displaying the current status data of the second application when the window corresponding to the three-dimensional application completes the execution of a preset switching animation, it is possible to achieve smooth, fluent and efficient switching between applications with different dimensional attributes.

[0026] In an optional implementation, when the application switching type is switching from a two-dimensional application to a three-dimensional application, displaying a second application includes:

[0027] Respectively obtaining first status data of the first application and second status data of the second application;

[0028] When the preset switching animation corresponding to the current window of the second application starts to execute, the first state data is displayed in the current window, and the second state data is displayed when the preset switching animation ends.

[0029] The present invention is aimed at the application switching type of switching from a two-dimensional application to a three-dimensional application. By displaying the first state data of the first application when the preset switching animation of the corresponding window of the three-dimensional application starts to execute, and displaying the second state data of the second application when the preset switching animation ends, it can realize effective switching between different types of applications, thereby improving the application switching effect and user satisfaction.

[0030] In an optional implementation, after displaying the second application, the application switching method further includes:

[0031] The corresponding transparency channel and window level in the current window of the first application or the second application are restored.

[0032] After the window corresponding to the three-dimensional application displays the second application to be switched, the present invention restores the transparency channel and the window hierarchy of the window, thereby maintaining the original application window attributes and improving the application switching effect to a certain extent.

[0033] In an optional implementation, in response to the application switching action, determining the first application currently displayed on the interface and the second application to be switched includes:

[0034] In response to a user's preset switching action on the current interface, a corresponding interface switching event is generated, wherein the preset switching action includes at least click, slide and long press;

[0035] A first application currently displayed on the interface and a second application to be switched are determined according to the interface switching event.

[0036] The present invention generates corresponding interface switching events through switching actions such as clicking, sliding and long pressing triggered by the user on the interface, and determines the first application currently displayed and the second application desired to be switched according to the interface switching event, which can meet the user's different application switching needs and thus improve the user's usage experience.

[0037] In an optional implementation, determining the application switching type based on the first application and the second application includes:

[0038] Obtaining first dimension attributes of the first application and second dimension attributes of the second application respectively;

[0039] When the first dimension attribute is three-dimensional and the second dimension attribute is two-dimensional, determining the application switching type is switching from a three-dimensional application to a two-dimensional application;

[0040] When the first dimension attribute is two-dimensional and the second dimension attribute is three-dimensional, it is determined that the application switching type is switching from a two-dimensional application to a three-dimensional application.

[0041] The present invention determines the application switching type through the dimensional attributes corresponding to the first application and the second application, and can provide different application switching, which helps to meet the application switching needs of users.

[0042] In a second aspect, the present invention provides an application switching system, the system comprising:

[0043] A response module, configured to determine, in response to an application switching action, a first application currently displayed on the interface and a second application to be switched, wherein the first application and the second application have different dimension attributes;

[0044] A determination module, configured to determine an application switching type based on the first application and the second application;

[0045] The adjustment module is used to adjust the application window based on the application switching type and display the second application.

[0046] The application switching system of the present invention can achieve smooth, fluent and effective switching between applications with different dimensional attributes, which not only improves the switching effect of different types of applications, but also greatly enhances the user experience.

[0047] In a third aspect, the present invention provides a vehicle, comprising: a memory and a processor, the memory and the processor being communicatively connected to each other, the memory storing computer instructions, and the processor executing the computer instructions to execute an application switching method of the first aspect or any corresponding embodiment thereof.

[0048] In a fourth aspect, the present invention provides a computer-readable storage medium having computer instructions stored thereon, the computer instructions being used to enable a computer to execute an application switching method according to the first aspect or any corresponding embodiment thereof.

[0049] The application switching method and system of the present invention determine the first application currently displayed and the second application expected to be switched through a preset switching action triggered by the user in the interface; determine the application switching type according to the first application and the second application, and display the second application after adjusting the application window according to the application switching type, which can achieve effective switching between applications with different dimensional attributes, thereby making the application switching smoother, not only ensuring the switching effect of different types of applications, but also greatly improving the user's satisfaction with application switching. BRIEF DESCRIPTION OF THE DRAWINGS

[0050] In order to more clearly illustrate the specific implementation methods of the present invention or the technical solutions in the prior art, the drawings required for use in the specific implementation methods or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are some implementation methods of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.

[0051] Figure 1 is a schematic diagram of a flow chart of an application switching method according to an embodiment of the present invention;

[0052] Figure 2 is a flow chart of another application switching method according to an embodiment of the present invention;

[0053] Figure 3 It is the Android system architecture diagram;

[0054] Figure 4 It is the working sequence diagram of the service management module;

[0055] Figure 5 This is the interface switching timing diagram between 3D application and 2D application;

[0056] Figure 6 It is a flow chart of the interface switching between 3D applications and 2D applications;

[0057] Figure 7 is a structural block diagram of an application switching system according to an embodiment of the present invention;

[0058] Figure 8 Schematic diagram of the structure of a vehicle according to an embodiment of the present invention. DETAILED DESCRIPTION

[0059] In order to make the purpose, technical solution and advantages of the embodiments of the present invention clearer, the technical solution in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative work are within the scope of protection of the present invention.

[0060] An embodiment of the present invention provides an application switching method embodiment. It should be noted that the steps shown in the flowchart of the accompanying drawings can be executed in a computer system such as a set of computer executable instructions, and although a logical order is shown in the flowchart, in some cases, the steps shown or described can be executed in an order different from that shown here.

[0061] In this embodiment, a method for switching applications is provided. Figure 1 is a flow chart of an application switching method according to an embodiment of the present invention. Figure 1 As shown, the process includes the following steps:

[0062] Step S101, in response to an application switching action, determining a first application currently displayed on an interface and a second application to be switched, wherein the first application and the second application have different dimensional attributes.

[0063] It should be noted that the specific triggering method of the application switching action in this embodiment is not limited here and can be adaptively adjusted according to actual needs. For example, the user clicks an icon, a shortcut key, or a sliding gesture on the current interface of the vehicle central control screen to trigger the application switching action, which is only used as an example.

[0064] Step S102: determining an application switching type based on the first application and the second application.

[0065] In this embodiment, the specific contents of the first application and the second application are not limited here, and are adaptively adjusted according to actual needs. For example, the first application and the second application are three-dimensional applications (i.e., 3D applications) and two-dimensional applications (i.e., 2D applications), respectively; 3D applications include 3D vehicle desktops; 2D applications include navigation applications (such as map applications), media applications, and entertainment applications (such as game applications), etc., which are only used as examples.

[0066] It should be noted that, in this embodiment, the specific content of the application switching type is determined according to the adaptability of the first application and the second application.

[0067] Step S103: adjust the application window based on the application switching type and display the second application.

[0068] It should be noted that, in this embodiment, the application window adjustment is mainly to adjust the corresponding window properties of the three-dimensional application so that the window can achieve a gradual disappearance and gradual appearance effect.

[0069] The application switching method of the embodiment of the present invention determines the first application currently displayed and the second application to be switched to through the relevant switching actions triggered by the user in the interface; determines the application switching type according to the first application and the second application, and displays the second application after adjusting the application window according to the application switching type. It can achieve effective switching between applications with different dimensional attributes, thereby making the application switching smoother, which not only ensures the switching effect of different types of applications, but also greatly improves the user's satisfaction with application switching.

[0070] In this embodiment, a method for switching applications is provided. Figure 2 FIG. 1 is a flow chart of another application switching method according to an embodiment of the present invention. Figure 2 As shown, the process includes the following steps:

[0071] Step S201, in response to an application switching action, determining a first application currently displayed on an interface and a second application to be switched, wherein the first application and the second application have different dimensional attributes.

[0072] Specifically, in response to the application switching action in step S201, determining the first application currently displayed on the interface and the second application to be switched includes:

[0073] Step S2011, in response to the user's preset switching action on the current interface, a corresponding interface switching event is generated, wherein the preset switching action at least includes click, slide and long press.

[0074] It should be noted that the interface switching event generated corresponding to the interface switching action in this embodiment can be obtained through the inter-process communication mechanism of the Android system and in combination with the built-in service module of the Android system, such as the ActivityManagerService service module (that is, the core service module of the Android system, responsible for managing and coordinating the jumps between applications, such as the jumps between 2D and 3D applications, which achieve mutual communication through inter-process communication mechanisms such as the Binder mechanism), which is only used as an exemplary explanation.

[0075] Step S2012: determining the first application currently displayed on the interface and the second application to be switched according to the interface switching event.

[0076] In the embodiment of the present invention, corresponding interface switching events are generated through switching actions such as clicking, sliding and long pressing triggered by the user on the interface, and the first application currently displayed and the second application desired to be switched are determined based on the interface switching event, which can meet the user's different application switching needs and thus improve the user's usage experience.

[0077] Step S202: determining an application switching type based on the first application and the second application.

[0078] Specifically, the above step S202 includes: respectively obtaining the first dimension attribute of the first application and the second dimension attribute of the second application; when the first dimension attribute is three-dimensional and the second dimension attribute is two-dimensional, determining the application switching type is a three-dimensional application switching to a two-dimensional application; when the first dimension attribute is two-dimensional and the second dimension attribute is three-dimensional, determining the application switching type is a two-dimensional application switching to a three-dimensional application. It should be noted that the specific acquisition method of the dimensional attributes corresponding to each application in this embodiment is not limited here, and is adaptively determined according to the conventional method in the field.

[0079] In the embodiment of the present invention, the application switching type is determined by the dimension attributes corresponding to the first application and the second application, and different application switching can be provided, which helps to meet the application switching needs of users.

[0080] Step S203: adjust the application window based on the application switching type and display the second application.

[0081] In this embodiment, the application switching type includes switching of a 3D application to a 2D application and switching of a 2D application to a 3D application. Specifically, when the application switching type is switching of a 3D application to a 2D application, the above step S203 includes:

[0082] Step A1, obtaining a current value corresponding to a transparency channel in a current window of a first application.

[0083] In this embodiment, the transparency channel is the Alpha channel, and its value range is from 0 to 1, wherein 0 represents completely transparent and 1 represents completely opaque.

[0084] It should be noted that the method for obtaining and adjusting the current value of the transparency channel in this embodiment is not limited in detail and can be adaptively adjusted according to actual needs. For example, the transparency channel of the window is managed by the WindowManagerService service module of the Android system (i.e., an important service of the Android system, responsible for managing and controlling the addition, deletion, display, level, position, etc. of application windows), which is only an exemplary description.

[0085] Step A2, adjusting the current value to a first preset value.

[0086] In this embodiment, the first preset value is 0.

[0087] Step A3, obtaining current status data of the second application.

[0088] In this embodiment, the specific content of the current status data can be adaptively set according to the corresponding type of the actual second application. For example, when the second application is a map application, the corresponding current status data includes the position of the map vehicle logo on the screen. This is only an example and is not limited to this.

[0089] Step A4, when the preset switching animation of the first application corresponding to the current window is executed, the current status data is displayed in the current window.

[0090] In this embodiment, the specific content of the preset switching effects is not limited here, and is adaptively adjusted according to actual needs and corresponding application types. For example, the preset switching effects include 3D scene effects such as car model rotation, car model perspective change, and car model reduction, which are only used as an exemplary description.

[0091] In an embodiment of the present invention, when a three-dimensional application is switched to a two-dimensional application, the transparency channel value of the window corresponding to the three-dimensional application is adjusted to achieve a window fading effect, thereby realizing smooth switching of the application; and when the window corresponding to the three-dimensional application executes the preset switching animation, the current status data of the second application is displayed, thereby realizing smooth and efficient switching between applications with different dimensional attributes.

[0092] Specifically, when the application switching type is switching from a three-dimensional application to a two-dimensional application, the above step S203 includes:

[0093] Step B1, obtaining a current value corresponding to a transparency channel in a current window of a second application.

[0094] It should be noted that the relevant contents of the transparency channel in this embodiment are referred to above and will not be repeated here.

[0095] Step B2, adjusting the current value to a second preset value, wherein the second preset value is greater than the first preset value.

[0096] In this embodiment, the second preset value is 1 (ie, opaque), and the first preset value is 0 (ie, transparent).

[0097] Step B3, respectively obtaining first status data of the first application and second status data of the second application.

[0098] In this embodiment, the specific contents of the first state data and the second state data and the corresponding acquisition methods are not limited here, and can be adaptively determined according to the actual application type.

[0099] Step B4, when the preset switching animation of the second application corresponding to the current window starts to execute, the first state data is displayed in the current window, and the second state data is displayed when the preset switching animation ends.

[0100] It should be noted that the relevant contents of the preset switching effects in this embodiment can be found in the previous text and will not be repeated here.

[0101] In an embodiment of the present invention, when a two-dimensional application is switched to a three-dimensional application, the transparency channel value of the window corresponding to the three-dimensional application is adjusted to achieve a window gradual display effect, which helps to achieve smooth switching of applications; and when the preset switching animation of the window corresponding to the three-dimensional application starts to execute, the first state data of the first application is displayed, and when the preset switching animation ends, the second state data of the second application is displayed, which can achieve effective switching between different types of applications and greatly improve the application switching effect and user satisfaction.

[0102] It should be noted that, in this embodiment, before adjusting the transparency channel of the application window, the window level needs to be adjusted so that the application display level of the current interface is the highest. Therefore, the application switching method of this embodiment also includes:

[0103] Step C1, obtaining a current window level corresponding to a current window of the first application or the second application.

[0104] Step C2, adjust the current window level to the system window, and execute the preset switching effect on the current window.

[0105] In this embodiment, the current window level is adjusted by the WindowManagerService service module of the Android system. Specifically, the level can be adjusted by setting the parameters of the window, that is, using the class WindowManager.LayoutParams containing the window layout parameters, and changing the window level by modifying its type and flags attributes. For example, TYPE_APPLICATION is the default application window, while TYPE_APPLICATION_OVERLAY allows the window to be covered on other applications, just as an example.

[0106] In the Android system (also known as the Android system), the window hierarchy is divided into three types, including application windows (the lowest level), sub-windows (middle level), and system windows (such as the system status bar, navigation bar, etc., the highest level). It should be noted that windows with higher levels will cover windows with lower levels.

[0107] The embodiment of the present invention changes the window level corresponding to the 3D application to the system level so that the interface preferentially displays the window corresponding to the 3D application, which can further improve the application switching effect and thus enhance the user experience.

[0108] It should be noted that in this embodiment, after the application switching is completed, that is, after jumping to the second application, it is necessary to restore the original interface display corresponding to the first application, that is, restore the original properties of the window. Therefore, after displaying the second application, the application switching method of this embodiment also includes: restoring the corresponding transparency channel and window hierarchy of the current window of the first application or the second application. Specifically, in this embodiment, after the window corresponding to the three-dimensional application displays the second application to be switched, the transparency channel and window hierarchy of the window are restored, which can maintain the original application window properties and improve the application switching effect to a certain extent.

[0109] In a specific embodiment, a smooth transition solution is proposed for the two-way interface switching between 3D applications and 2D applications. In this solution, the 3D application is a 3D interface drawing implemented based on the texture view control TextureView provided by the Android system. It should be noted that TextureView is a view component used to display images in Android. It supports hardware acceleration and can efficiently perform image rendering and transformation operations; in addition, 2D applications in this solution include map applications, media center applications, game center applications, etc. Specifically, when the interface between a 3D application and a 2D application jumps, the 3D application window is obtained and the window level is dynamically adjusted; in the 3D window, not only 3D rendering is used to achieve transition effects, but also the Alpha channel of the 3D window is dynamically updated to achieve a window fade-in or fade-out effect, thereby achieving smooth interface switching.

[0110] In this embodiment, when a 3D application switches to a 2D application, the 3D application window level is adjusted to the system level, and the 3D application window Alpha channel is adjusted from 1 to 0. At this time, due to the high level of the 3D window, the content displayed to the user on the front end is the content presented by the 3D window, and the jump to the target application is realized in the background. Specifically, after the front-end 3D window animation is executed, the Alpha channel of the window will be converted from 1 to 0, so that the window gradually disappears, so as to achieve the effect of the window fading; when the window Alpha channel becomes 0, the target 2D window is displayed, and the 3D window level is restored to the application level.

[0111] In this embodiment, when a 2D application switches to a 3D application, the corresponding level of the window of the target application, that is, the 3D application to be switched, is first changed to the system level; then the Alpha channel of the 3D application window is adjusted from 0 to 1 to gradually display the 3D application window; after the front-end window is displayed, the 3D animation is executed, and the background realizes the jump to the target interface; after the front-end 3D window animation is executed, the 3D window level is restored to the application level.

[0112] It should be noted that the built-in modules of the Android system involved in the smooth transition solution between different types of applications in this embodiment include: 3D applications (implemented based on engines such as Cocos, Unity, Kanzi, etc.), 2D applications (such as map applications), WindowManagerService service module, ActivityManagerService service module and ServiceManager module (an important daemon process of the Android system, responsible for managing various services in the system, through which other services of the Android system can be obtained).

[0113] Specifically, the specific contents of the above modules are as follows:

[0114] 1. 3D application: as the in-car desktop (i.e. 3D car desktop, displaying 3D car models, where the car models can be enlarged, reduced, rotated and other dynamic effects); real-time rendering of 3D car models, media application icons (such as microphone icons), game application icons (such as game console icons), etc. in the interface; operating the car model can jump to the map application, that is, clicking other icons (i.e. different icons) can jump to the corresponding 2D application. If the current interface displays the map application or other 2D applications, you can switch back to the 3D application (i.e. 3D car desktop) by clicking the Home button in the Dock bar.

[0115] 2. 2D applications: As built-in applications in the vehicle ROM, such as navigation applications (maps), media applications, and entertainment applications, when executing transition effects, they need to provide necessary data information to 3D applications. For example, the map application needs to provide the position of the map car logo on the screen (that is, the X, Y coordinates from the upper left corner of the screen) and the pointing angle of the car logo.

[0116] 3. ServiceManager module: When a 3D application is started, the Binder derived class implemented in the 3D application is first registered with the ServiceManager through the Java reflection mechanism based on the Android inter-process communication mechanism Binder. When any application intends to jump to other interfaces, the ActivityManagerService module obtains the Binder to notify the 3D application whether to execute the 3D transition effect.

[0117] 4. ActivityManagerService module: When any application intends to jump to other interfaces, it obtains the Binder registered by the 3D application to the ServiceManager, and notifies the 3D application whether it can execute the 3D transition effect through the inter-process communication mechanism.

[0118] 5. WindowManagerService module: When executing the switch between 3D application and 2D application interface, obtain the 3D application window, dynamically change the window level through window parameters, that is, update the current 3D window from application window to system window (wherein, the display level of system window is higher than that of application window. When it is changed to system window, the current interface will only display the system window, that is, cover and hide the application-level window), and the 3D window will execute 3D scene switching effects (that is, 3D scene effects set in advance, such as car model rotation, car model perspective change, car model reduction, etc.). It should be noted that 3D scene effects are also called 3D application window transition effects, which are pre-developed effects and can be different depending on the jump target window. For example, if you jump to the map application, the animation effect is that the car model rotates and becomes smaller, and then the 3D scene gradually fades away, matching with the map car logo and finally displaying the map application; if you jump from the map application to the 3D car desktop, the animation effect is that the car model rotates and becomes larger, and then the 3D car model gradually appears and finally matches with the 3D car model; jump to the media application in the 3D scene, the configurable animation effect is that the microphone appears, swings and shrinks, and then the 3D scene gradually fades away and finally displays the media application. This is only an exemplary description.

[0119] It should be noted that in this embodiment, when the 3D application window executes the set dynamic effect, the 3D window level is changed to the system level, and the 3D window Alpha channel is also changed in real time. Specifically, when jumping from a 3D application (3D car desktop) to other 2D applications (such as map applications, game applications, etc.), the Alpha channel is adjusted from 1 to 0, so that the 3D window gradually disappears; when jumping from a 2D application to a 3D application, the Alpha channel of the 3D window is adjusted from 0 to 1, so that the 3D window gradually appears; when the application switch is completed, the window level and Alpha channel are restored.

[0120] In a specific embodiment, the smooth transition solution between different types of applications of this embodiment is applied to an in-vehicle entertainment system (customized according to Android Automotive OS). This solution can also be applied to Android mobile phone manufacturers. Figure 3 This is the Android system architecture diagram. It should be noted that this architecture mainly includes system applications (such as 3D applications, map applications, media applications, etc. in the figure) and the Android architecture layer. Figure 3It can be seen that the implementation of this solution depends on the Android architecture layer, which includes a variety of system service processes, such as interface management service (i.e., ActivityManagerService), window management service (i.e., WindowManagerService), service management class (i.e., ServiceManager) and other modules; among them, ActivityManagerService receives interface switching events initiated by any application, and then notifies 3D applications through process communication (i.e., Binder mechanism); WindowManagerService can change the 3D window level to the system level, hiding the Android native transition effect; ServiceManager manages the Binder derived class created by the 3D application (i.e., process communication in the figure, such as IBinder, and the client process pointer and server process pointer it contains, such as BpBinder and BnBinder), for ActivityManagerService to obtain and use. In addition, the Android architecture layer also has built-in multiple view systems, including texture views (such as TextureView) and surface views (such as SurfaceView).

[0121] It should be noted that IBinder is an interface in Android, which defines a set of methods for inter-process communication; through IBinder, data can be transferred and methods can be called between different processes to achieve inter-process interaction. In the Android system, each process has a unique Binder object to manage the Binder communication in the process.

[0122] In this embodiment, Figure 4 It is a working sequence diagram of the service management module. It should be noted that the service management module in this embodiment is the service management class ServiceManger; Figure 4 It can be seen that the working process of ServiceManager is:

[0123] When the 3D application is initialized, that is, "1. Application initialization" in the figure, the process pointer (Binder) created by itself is registered with the ServiceManager through the reflection mechanism, that is, "2. Constructing the process pointer of the server" in the figure, and through "3. Adding the server process pointer to the service management class for storage", the server process pointer (Binder) is added to the ServiceManager.

[0124] In this embodiment, the interface switching between the 3D application and the 2D application is performed based on the above solution. Figure 5 , the process includes:

[0125] 1. Switch interface.

[0126] In this embodiment, when the user switches interfaces through StartActivity (ie, switches interfaces between 3D applications and 2D applications), the interface switching event is first received through inter-process communication, and notification is implemented through the interface management service (ie, ActivityManagerService).

[0127] 2. After the 3D application receives the notification from ActivityManagerService (i.e. "4. Pass the process pointer of the server to the application" in the figure), it confirms whether the 2D application jumps to the 3D application or the 3D application jumps to the 2D application based on the information in the notification. Specifically, if a 3D application jumps to a 2D application, such as jumping from a 3D car desktop to a map application, the 3D application first actively obtains the relevant data status of the 2D application from the 2D application, such as the coordinate value of the map application car logo and the turning angle of the car logo (i.e. "7. Obtain 2D application interface data, such as the coordinate value of the car logo on the screen" in the figure). After obtaining the coordinate value of the map car logo and the steering angle of the car logo, they are used for the end position of the car model in the 3D window and the perspective data of the end of the final animation. If a 2D application jumps to a 3D application, the coordinate value of the map car logo and the steering angle of the car logo are obtained for the initial position of the car model in the 3D window and the initial perspective data.

[0128] It should be noted that after receiving the notification, the ActivityManagerService in the figure obtains the service's IBinder by calling the ServiceManager.getService() method, which corresponds to "2. Apply for the server's process pointer" and "3. Return the server's process pointer" in the figure.

[0129] 3. The 3D application obtains the current window (i.e., "5. Get the 3D application window" in the figure), and updates the window hierarchy (i.e., "6. Change the window level" in the figure) through the window management service (i.e., WindowManagerService), and changes the 3D window from the application level to the system level window (the system level window is higher than the application level window and can cover the application level window); at the same time, the 3D window executes the transition effect and dynamically changes the window Alpha channel; when the 3D application jumps to the 2D application, the Alpha channel is adjusted from 1 to 0, and the 3D window achieves the effect of gradually disappearing; when the 2D application jumps to the 3D application, the Alpha channel is adjusted from 0 to 1, and the 3D window achieves the effect of gradually appearing and displaying (i.e., "8. 3D window executes transition effect, and gradually disappears or appears" in the figure); when the window animation is executed, the 3D window also completes the effect of gradually disappearing or appearing.

[0130] 4. After the 3D application completes the interface switching, the original application level of the window is restored through WindowManagerService, and the Alpha channel of the window is also restored (i.e. "9. Restore the 3D application window level and transparency" in the figure). For the specific process of application switching, please refer to Figure 6 Flowchart of interface switching between 3D applications and 2D applications.

[0131] It should be noted that the implementation of the above solution, namely the protocol constraints between 3D applications and 2D applications, and between 3D applications and the Android architecture layer, is also crucial and needs to be adaptively adjusted according to actual needs.

[0132] In summary, the application switching method of the embodiment of the present invention can achieve smooth, fluent and effective switching between applications with different dimensional attributes, which not only improves the switching effect of different types of applications, but also greatly improves the user experience.

[0133] In this embodiment, an application switching system is also provided, which is used to implement the above-mentioned embodiments and preferred implementation modes, and the descriptions that have been made will not be repeated. As used below, the term "module" refers to a combination of software and / or hardware that can implement a predetermined function. Although the system described in the following embodiments is preferably implemented in software, the implementation of hardware, or a combination of software and hardware, is also possible and conceivable.

[0134] The present invention provides an application switching system, such as Figure 7 As shown, the system includes:

[0135] The response module 701 is used to determine, in response to an application switching action, a first application currently displayed on the interface and a second application to be switched, wherein the first application and the second application have different dimension attributes.

[0136] The determination module 702 is configured to determine an application switching type based on the first application and the second application.

[0137] The adjustment module 703 is used to adjust the application window based on the application switching type and display the second application.

[0138] In some optional embodiments, the response module 701 includes: a first response sub-module and a second response sub-module; wherein the first response sub-module is used to generate a corresponding interface switching event in response to the user's preset switching action on the current interface, wherein the preset switching action includes at least click, slide and long press; the second response sub-module is used to determine the first application currently displayed on the interface and the second application desired to be switched according to the interface switching event.

[0139] In some optional embodiments, the determination module 702 includes: a first determination submodule, a second determination submodule and a third determination submodule; wherein the first determination submodule is used to respectively obtain the first dimensional attribute of the first application and the second dimensional attribute of the second application; the second determination submodule is used to determine that the application switching type is a three-dimensional application switching to a two-dimensional application when the first dimensional attribute is three-dimensional and the second dimensional attribute is two-dimensional; the third determination submodule is used to determine that the application switching type is a two-dimensional application switching to a three-dimensional application when the first dimensional attribute is two-dimensional and the second dimensional attribute is three-dimensional.

[0140] In some optional embodiments, the adjustment module 703 includes: a first switching submodule, a second switching submodule, a third switching submodule and a fourth switching submodule; wherein the first switching submodule is used to obtain the current value corresponding to the transparency channel in the current window of the first application; the second switching submodule is used to adjust the current value to a first preset value; the third switching submodule is used to obtain the current status data of the second application; and the fourth switching submodule is used to display the current status data in the current window when the preset switching animation of the first application corresponding to the current window is executed.

[0141] In some optional embodiments, the adjustment module 703 also includes: a first jump submodule, a second jump submodule, a third jump submodule and a fourth jump submodule; wherein the first jump submodule is used to obtain the current value corresponding to the transparency channel in the current window of the second application; the second jump submodule is used to adjust the current value to a second preset value, wherein the second preset value is greater than the first preset value; the third jump submodule is used to respectively obtain the first state data of the first application and the second state data of the second application; the fourth jump submodule is used to display the first state data in the current window when the preset switching animation corresponding to the current window of the second application starts to execute, and display the second state data when the preset switching animation ends.

[0142] In some optional implementations, the adjustment module 703 also includes: a window adjustment submodule, used to obtain the current window level corresponding to the current window of the first application or the second application; adjust the current window level to a system window, and execute a preset switching animation on the current window.

[0143] In some optional implementations, the system further includes: a restoration module, configured to restore a corresponding transparency channel and a window level in a current window of the first application or the second application.

[0144] The further functional description of each of the above modules is the same as that of the above corresponding embodiments and will not be repeated here.

[0145] The application switching system in this embodiment is presented in the form of a functional unit, where the unit refers to an ASIC (Application Specific Integrated Circuit) circuit, a processor and memory that executes one or more software or fixed programs, and / or other devices that can provide the above functions.

[0146] The application switching system of the embodiment of the present invention can realize effective switching between applications with different dimensional attributes, thereby making application switching smoother, which not only ensures the switching effect of different types of applications, but also greatly improves user satisfaction with application switching.

[0147] The present invention also provides a vehicle, see Figure 8 , Figure 8 is a schematic diagram of the structure of the above-mentioned vehicle provided by an optional embodiment of the present invention, such as Figure 8 As shown, the vehicle includes: one or more processors 10, a memory 20, and interfaces for connecting various components, including high-speed interfaces and low-speed interfaces. The various components are connected to each other using different buses for communication, and can be installed on a common mainboard or installed in other ways as needed. The processor can process instructions executed in the vehicle, including instructions stored in or on the memory to display graphical information of the GUI on an external input / output device (such as a display vehicle coupled to the interface). In some optional embodiments, if necessary, multiple processors and / or multiple buses can be used together with multiple memories and multiple memories. Similarly, multiple vehicles can be connected, and each vehicle provides some necessary operations (for example, as a server array, a group of blade servers, or a multi-processor system). Figure 8 A processor 10 is taken as an example.

[0148] The processor 10 may be a central processing unit, a network processor or a combination thereof. The processor 10 may further include a hardware chip. The hardware chip may be a dedicated integrated circuit, a programmable logic device or a combination thereof. The programmable logic device may be a complex programmable logic device, a field programmable gate array, a general purpose array logic or any combination thereof.

[0149] The memory 20 stores instructions executable by at least one processor 10, so that at least one processor 10 executes the method shown in the above embodiment.

[0150] The memory 20 may include a program storage area and a data storage area, wherein the program storage area may store an operating system and applications required for at least one function; the data storage area may store data created according to the use of the vehicle, etc. In addition, the memory 20 may include a high-speed random access memory, and may also include a non-transient memory, such as at least one disk storage device, a flash memory device, or other non-transient solid-state storage device. In some optional embodiments, the memory 20 may optionally include a memory remotely arranged relative to the processor 10, and these remote memories may be connected to the vehicle via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.

[0151] The memory 20 may include a volatile memory, such as a random access memory; the memory may also include a non-volatile memory, such as a flash memory, a hard disk or a solid state drive; the memory 20 may also include a combination of the above types of memory.

[0152] The vehicle further includes a communication interface 30 for the main control chip to communicate with other vehicles or a communication network.

[0153] A computer-readable storage medium is also provided in an embodiment of the present invention. The method according to the embodiment of the present invention can be implemented in hardware, firmware, or can be implemented as a computer code that can be recorded in a storage medium, or can be implemented as a computer code that is originally stored in a remote storage medium or a non-temporary machine-readable storage medium and will be stored in a local storage medium and downloaded through a network, so that the method described herein can be stored in such software processing on a storage medium using a general-purpose computer, a dedicated processor, or programmable or dedicated hardware. Among them, the storage medium can be a magnetic disk, an optical disk, a read-only storage memory, a random access memory, a flash memory, a hard disk or a solid-state hard disk, etc.; further, the storage medium can also include a combination of the above types of memories. It can be understood that a computer, a processor, a microprocessor main control chip or programmable hardware includes a storage component that can store or receive software or computer code. When the software or computer code is accessed and executed by a computer, a processor or hardware, the method shown in the above embodiment is implemented.

[0154] Although the embodiments of the present invention have been described in conjunction with the accompanying drawings, those skilled in the art may make various modifications and variations without departing from the spirit and scope of the present invention, and such modifications and variations are all within the scope defined by the appended claims.

Claims

1. An application switching method, characterized in that: The method comprises: In response to the application switching action, determining a first application currently displayed on the interface and a second application to be switched, wherein the first application and the second application have different dimension attributes; determining an application switching type based on the first application and the second application; The application window is adjusted based on the application switching type, and the second application is displayed.

2. The application switching method according to claim 1, characterized in that: When the application switching type is switching from a three-dimensional application to a two-dimensional application, the adjusting the application window based on the application switching type includes: Obtaining a current value corresponding to a transparency channel in a current window of the first application; The current value is adjusted to a first preset value.

3. The application switching method according to claim 1, characterized in that: When the application switching type is switching from a two-dimensional application to a three-dimensional application, the adjusting the application window based on the application switching type includes: Obtaining a current value corresponding to a transparency channel in a current window of the second application; The current value is adjusted to a second preset value, wherein the second preset value is greater than the first preset value.

4. The application switching method according to claim 2 or 3, characterized in that: The method further comprises: Obtaining a current window level corresponding to a current window of the first application or the second application; The current window level is adjusted to a system window, and a preset switching animation is performed on the current window.

5. The application switching method according to claim 4, characterized in that: When the application switching type is switching from a three-dimensional application to a two-dimensional application, the displaying the second application includes: Obtaining current status data of the second application; When the preset switching animation of the first application corresponding to the current window is executed, the current state data is displayed in the current window.

6. The application switching method according to claim 4, characterized in that: When the application switching type is switching from a two-dimensional application to a three-dimensional application, the displaying the second application includes: Respectively obtaining first status data of the first application and second status data of the second application; When the preset switching animation of the second application corresponding to the current window starts to execute, the first state data is displayed in the current window, and when the preset switching animation ends, the second state data is displayed.

7. The application switching method according to claim 4, characterized in that: After presenting the second application, the method further includes: The corresponding transparency channel and window level in the current window of the first application or the second application are restored.

8. The application switching method according to claim 1, characterized in that: In response to the application switching action, determining the first application currently displayed on the interface and the second application to be switched includes: In response to a preset switching action of the user on the current interface, a corresponding interface switching event is generated, wherein the preset switching action includes at least click, slide and long press; A first application currently displayed on the interface and a second application to be switched are determined according to the interface switching event.

9. The application switching method according to claim 1, characterized in that: The determining the application switching type based on the first application and the second application includes: Respectively obtaining a first dimension attribute of the first application and a second dimension attribute of the second application; When the first dimensional attribute is three-dimensional and the second dimensional attribute is two-dimensional, determining the application switching type is switching from a three-dimensional application to a two-dimensional application; When the first dimensional attribute is two-dimensional and the second dimensional attribute is three-dimensional, it is determined that the application switching type is switching from a two-dimensional application to a three-dimensional application.

10. An application switching system, characterized in that: The system comprises: A response module, configured to determine, in response to an application switching action, a first application currently displayed on the interface and a second application to be switched, wherein the first application and the second application have different dimension attributes; A determination module, configured to determine an application switching type based on the first application and the second application; An adjustment module is used to adjust the application window based on the application switching type and display the second application.

11. A vehicle, characterized in that: The vehicle includes: a memory and a processor, the memory and the processor are communicatively connected to each other, the memory stores computer instructions, and the processor executes the application switching method according to any one of claims 1 to 9 by executing the computer instructions.

12. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer instructions, and the computer instructions are used to enable a computer to execute the application switching method according to any one of claims 1 to 9.