Application switching method and electronic equipment
By responding to the user's touch operation on the second application during the startup animation of the first application, ending the startup animation of the first application and playing the transition animation, the problem of cumbersome application switching steps in the existing technology is solved, and efficient and smooth application switching is achieved.
Patent Information
- Application Number
- CN202411210382.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-08-29
- Publication Date
- 2025-10-17
- Estimated Expiration
- 2044-08-29
AI Technical Summary
In the prior art, the application switching method requires the user to perform multiple steps, resulting in a long switching time and affecting the smoothness of the user experience.
By responding to the user's touch operation on the second application icon during the startup animation of the first application, the startup animation of the first application is ended and the transition animation is played, thereby achieving a seamless switch to the full-screen display of the second application.
It greatly improves the efficiency of application switching, reduces user waiting time and operation steps, and improves the smoothness and visual continuity of the user experience.
Smart Images

Figure CN120803318A_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of terminal and communication, and particularly relates to an application switching method and an electronic device. BACKGROUND
[0002] With the popularity of smart phones and the richness of application programs, users switch between application programs more and more frequently. Fast and smooth switching between different application programs has become an important factor to improve user experience. In a mobile operating system, how to realize an efficient application program switching mechanism has become the focus of system designers.
[0003] At present, common application program switching methods include switching through a desktop and using a multi-task manager. In the desktop switching method, the user needs to return to the desktop from the current application program, and then click the icon of the target application program to start. When using the multi-task manager to switch, the user needs to call up the multi-task interface and select the target application program from the list of recently used application programs. These methods require the user to perform multiple steps to complete the switching between application programs, which prolongs the switching time and affects the smoothness of user experience. SUMMARY
[0004] The present application provides an application switching method and an electronic device to improve the switching efficiency of application programs.
[0005] In a first aspect, the present application provides an application switching method, comprising: in response to an operation of starting a first application program on a desktop, playing a first starting animation of the first application program in a starting window; during the playing of the first starting animation, in response to a touch operation on the icon position of a second application program on the desktop, ending the first starting animation and starting to play a transition animation; after playing the transition animation, displaying an interactive interface of the second application program in full screen.
[0006] By adopting the above technical solution, during the playing of the first application program starting animation, the user can directly trigger the starting of the second application program. The electronic device will respond to the new intention of the user in time, end the starting animation of the first application program, and smoothly transition to the second application program through the transition animation. This mechanism avoids the redundant process of waiting for the first application program to completely start before switching, and greatly improves the efficiency of application program switching.
[0007] In some embodiments in combination with the first aspect, during the playing of the first launch animation of the first application in the launch window, the launch window is gradually enlarged; in the case that the second application is a portrait application, the steps of ending the first launch animation and starting to play the transition animation in response to the touch operation on the icon position of the second application on the desktop during the playing of the first launch animation specifically include: during the playing of the first launch animation, the first launch animation continues to play in response to the touch operation on the icon position of the second application outside the coverage range of the launch window; after the transition animation is ready, the playing of the first launch animation is stopped, the window of the last frame of the first launch animation is kept, the window of the last frame of the first launch animation is gradually translated from inside the screen to outside the screen, the window of the second application is gradually translated from outside the screen to inside the screen in the same direction, and the window of the second application is gradually enlarged until it fills the full screen during the translation.
[0008] By adopting the technical scheme, after detecting that the user triggers the launch of the second application, the launch animation of the first application is continued to be played until the transition animation is ready, the continuity of the screen display is ensured, and the situation of black screen or flicker in the middle is avoided. After the transition animation is ready, the window of the last frame of the first application is smoothly translated out of the screen, and the window of the second application is gradually introduced from outside the screen. The gradual enlargement process ensures the visual coherence and fluency of the whole switching process. The user experience is improved, and the cognitive burden of the user caused by sudden changes is reduced.
[0009] In some embodiments in combination with the first aspect, during the playing of the first launch animation of the first application in the launch window, the launch window is gradually enlarged; in the case that the second application is a portrait application, the steps of ending the first launch animation and starting to play the transition animation in response to the touch operation on the icon position of the second application on the desktop during the playing of the first launch animation specifically include: during the playing of the first launch animation, the first launch animation continues to play in response to the touch operation on the icon position of the second application outside the coverage range of the launch window; after the transition animation is ready, the playing of the first launch animation is stopped, the window of the last frame of the first launch animation is kept, the window of the last frame of the first launch animation is gradually translated from above the screen to outside the screen, the window of the second application is gradually translated from below the screen to inside the screen in the same direction, and the window of the second application is gradually enlarged until it fills the full screen during the translation.
[0010] By adopting the technical solution, when the second application is a landscape application, the window of the first application is translated out from above the screen, and the window of the second application is introduced from below the screen. The particularity of the landscape application is considered, and the change of the application direction is intuitively presented through the vertical movement. Meanwhile, the gradual magnification of the window of the second application gives the user a visual buffer, reduces the discomfort caused by the sudden switching to the landscape mode, and greatly improves the fluency and user experience of switching between applications with different screen directions.
[0011] With reference to some embodiments of the first aspect, in some embodiments, the initial size of the window of the second application is the same as the size of the window of the last frame.
[0012] By adopting the technical solution, the consistency of the initial sizes of the two windows greatly improves the continuity and fluency of switching between the two windows, and improves the visual experience of the user.
[0013] With reference to some embodiments of the first aspect, in some embodiments, during the playing of the first startup animation, in response to a touch operation on the icon position of the second application outside the coverage range of the startup window on the desktop, the method specifically comprises: after receiving a click event of the screen at the icon position of the second application, determining whether the click event meets an additional click startup scene based on preset scene rules; the preset scene rules comprise: the click event is in the startup animation period, the click coordinates are not covered by the startup window, and the click event is not a gesture hot area event; and in a case where it is determined that the click event meets the additional click startup scene, the click event is transparently transmitted to the icon position of the second application on the desktop, and a click operation on the icon of the second application in response to the additional click startup scene is a touch operation.
[0014] By adopting the technical solution, preset scene rules are introduced to determine whether the click of the user meets an additional click startup scene. The rules include that the click event occurs during the startup animation period, the click coordinates are not covered by the startup window, and it is not a gesture hot area event. When the conditions are met, the click event is transparently transmitted to the second application icon on the desktop, which not only ensures the accurate capture of the user's intention, but also avoids the error operation caused by accidental touch. At the same time, by transparently transmitting the event to the desktop, the existing application startup logic can be reused, which improves the code reusability and the stability of the system. While improving the user experience, the overall performance of the system is also optimized.
[0015] In some embodiments of the first aspect, in response to a touch operation on the icon of the second application outside the coverage range of the startup window during the playing of the first startup animation, the method specifically comprises: in the case that a preset pass-through operation is received on the icon of the second application covered by the startup window during the playing of the first startup animation, determining that the current is an additional click startup scenario, and responding to the startup operation of the second application in the additional click startup scenario, the preset pass-through operation being a touch operation different from a click operation.
[0016] By adopting the above technical solution, the preset pass-through operation is introduced, so that the user can still trigger the startup of the second application even if the startup window of the first application covers the icon of the second application. This greatly increases the flexibility of user operation, and the user can correct his choice in time no matter which stage the startup animation of the first application is at. At the same time, by using a specific preset operation (such as knuckle tapping, double-clicking, etc.), the user's intention can be effectively distinguished, and the mis-touch problem that may be caused by ordinary touch operations is avoided. This not only improves the fault tolerance of the system, but also provides more diversified interaction modes for the user.
[0017] In some embodiments of the first aspect, the method further comprises: during the playing of the first startup animation, listening to input events on the desktop through a swipe-up channel; and in the case that the input events meet the additional click startup scenario, triggering the response of the desktop to the input events.
[0018] By adopting the above technical solution, the input events are continuously listened to on the desktop through the swipe-up channel, so that the user's operation can be captured even during the playing of the startup animation of the first application, breaking through the problem of loss of input events caused by focus transfer in the traditional Android system. When it is determined that the input events meet the additional click startup scenario, the response of the desktop to the events is triggered, which not only improves the sensitivity of the system to user operation, but also ensures that any operation intention of the user will not be missed in the complex startup process. By reusing the existing swipe-up channel, the modification to the system architecture is minimized, ensuring the stability and compatibility of the system.
[0019] In some embodiments of the first aspect, ending the first startup animation specifically comprises: stopping the execution of the first startup animation, retaining the current window state; re-mounting the startup window layer and the desktop layer of the first startup animation to corresponding layer control interfaces; and re-mounting the two layer control interfaces to the default display area.
[0020] By adopting the technical scheme, when the starting animation effect of the first application program ends, firstly, the execution of the first starting animation effect is stopped, but the current window state is retained, so as to avoid sudden screen changes. Then, the starting window layer and the desktop layer are re-mounted to the corresponding layer control interfaces, and the interfaces are re-mounted to the default display area. This fine layer management not only ensures smooth transition of the screen, but also lays an operation foundation for subsequent transition animation effects. In this way, seamless switching between different application programs can be realized, and the visual experience and operation fluency of the user are greatly improved.
[0021] In combination with some embodiments of the first aspect, in some embodiments, the method further comprises: when the first starting animation effect ends, obtaining the size of the last frame of the starting window; determining a proportion value of the size of the last frame of the starting window relative to the screen size; and determining the proportion value as a parameter value for running the transition animation effect.
[0022] By adopting the technical scheme, it is ensured that the transition animation effect can seamlessly connect from the last state of the first application program starting animation effect, and sudden size changes are avoided. By using this dynamically calculated parameter, the transition animation effect can adapt to starting windows of different sizes, so that the visual continuity of the transition animation effect can be maintained in various cases. This not only improves the fluency of the switching process, but also enhances the consistency of the entire interaction process, providing a more comfortable and natural use experience for the user.
[0023] In combination with some embodiments of the first aspect, in some embodiments, the method further comprises: before playing the transition animation effect, disabling the default background setting; and setting the current desktop wallpaper as the background layer of the transition animation effect.
[0024] By adopting the technical scheme, sudden background changes during application switching are avoided. By using the desktop wallpaper familiar to the user as the background, a visual continuity between different applications can be created. This not only reduces visual interference for the user, but also makes the entire switching process more natural and smooth.
[0025] In combination with some embodiments of the first aspect, in some embodiments, the method further comprises: after the transition animation effect is executed, resetting the scene to a default value and clearing the animation parameters.
[0026] By adopting the technical scheme, the scene is reset to a default value, so that subsequent operations are not affected by the current transition. Secondly, the animation parameters are cleared, and related resources are released. By cleaning and resetting in a timely manner, the system can always remain in a stable and predictable state, and is ready for the next operation, significantly improving the stability and response speed of the system.
[0027] In some embodiments of the first aspect, in some embodiments, the ending the first start motion effect and starting playing the transition motion effect specifically comprises: ending the first start motion effect and directly playing a second start motion effect of the second application as the transition motion effect.
[0028] By using the above technical solution, the transition process is simplified, the switching of intermediate states is reduced, and thus the speed of the entire switching is accelerated. At the same time, since the native start motion effect of the second application is used, the user can obtain the same visual experience as directly starting the application, and the consistency of interaction is maintained. Not only is the use of system resources optimized, but the need for additional animation rendering is also reduced, and the user can enter the interface of the target application more quickly.
[0029] In a second aspect, the embodiments of the present application provide an electronic device, comprising: one or more processors and a memory; the memory is coupled to the one or more processors, and the memory is used to store computer program code, the computer program code comprises computer instructions, and the one or more processors invoke the computer instructions to enable the electronic device to perform the method described in the first aspect and any possible implementation manner of the first aspect.
[0030] In a third aspect, the embodiments of the present application provide a computer program product comprising instructions, which, when executed on an electronic device, cause the electronic device to perform the method described in the first aspect and any possible implementation manner of the first aspect.
[0031] In a fourth aspect, the embodiments of the present application provide a computer readable storage medium comprising instructions, which, when executed on an electronic device, cause the electronic device to perform the method described in the first aspect and any possible implementation manner of the first aspect.
[0032] It can be understood that the electronic device provided in the second aspect, the computer program product provided in the third aspect, and the computer storage medium provided in the fourth aspect are all used to execute the method provided in the embodiments of the present application. Therefore, the beneficial effects that can be achieved are referred to the beneficial effects in the corresponding method, which will not be described here. BRIEF DESCRIPTION OF DRAWINGS
[0033] Figures 1A-1B A scene diagram of a group of application switching in the related art; Figure 2 A scene diagram of an example of the application switching method provided in the embodiments of the present application; Figure 3 Another scene diagram of an example of the application switching method provided in the embodiments of the present application; Figure 4AAnother exemplary scenario schematic diagram of the application switching method provided in the embodiments of the present application is shown in FIG. 6. Figure 4B Another exemplary scenario schematic diagram of the application switching method provided in the embodiments of the present application is shown in FIG. 6. Figures 5A-5B Another exemplary scenario schematic diagram of the application switching method provided in the embodiments of the present application is shown in FIG. 6. Figure 6 Another exemplary scenario schematic diagram of the application switching method provided in the embodiments of the present application is shown in FIG. 6. Figure 7 Another exemplary scenario schematic diagram of the application switching method provided in the embodiments of the present application is shown in FIG. 6. Figure 8 A flowchart of the application switching method in the embodiments of the present application is shown in FIG. 7. Figure 9 A software structure schematic diagram of the electronic device 100 in the embodiments of the present application is shown in FIG. 8. Figure 10 A workflow schematic diagram of the application switching in the embodiments of the present application is shown in FIG. 9. Figures 11A-11B A group of exemplary information interaction schematic diagrams of the application switching method in the embodiments of the present application is shown in FIG. 10. Figure 12 An exemplary information interaction schematic diagram between components in the application switching method in the embodiments of the present application is shown in FIG. 11. Figure 13 A structure schematic diagram of the electronic device 100 provided in the embodiments of the present application is shown in FIG. 12. DETAILED DESCRIPTION
[0034] The terms used in the following embodiments of the present application are only for the purpose of describing specific embodiments and are not intended to be limiting of the present application. As used in the specification and the appended claims of the present application, the singular forms "a," "an" and "the" are intended to include both singular and plural forms, unless the context clearly indicates otherwise. It will be further understood that the terms "and / or" as used herein refers to and encompasses any and all possible combinations of one or more of the associated listed items.
[0035] Hereinafter, the terms "first" and "second" are only for the purpose of description and cannot be understood as implying or suggesting relative importance or implicitly indicating the number of the indicated technical features. Therefore, the features defined with "first" and "second" can explicitly or implicitly include one or more of the features, and in the description of the embodiments of the present application, the meaning of "a plurality of" is two or more, unless otherwise specified.
[0036] For the convenience of understanding, the related terms and concepts involved in the embodiments of the present application are introduced as follows.
[0037] (1) Startup animation: Launch animation refers to a series of animation effects displayed by the system to provide visual feedback when a user launches an application in a mobile device operating system. This animation usually appears during the application loading process, aiming to enhance the user experience and mask the actual loading time of the application.
[0038] Launch animations typically include a series of carefully designed animation sequences, which may involve elements such as the transformation of the app icon, color changes, and position movement. These animations not only attract users' attention but also convey that the app is loading, reducing users' anxiety while waiting. Launch animations usually play in a separate launch window that covers part or all of the screen until the app is fully loaded and ready to use.
[0039] (2) Transition effects: Transitions are animated effects that appear when switching from one scene or state to another in a user interface. These effects are designed to provide visual continuity for users, making interface changes smoother and more natural, while also conveying the state change. In mobile apps, transitions are often used for scenarios such as switching between apps, page jumps, or content updates.
[0040] Transitions typically involve a series of carefully designed animation elements, potentially involving a combination of basic visual effects like fades, zooms, rotations, and translations. These animations not only attract the user's attention and direct their focus, but also provide intuitive cues about the direction and nature of the interface change. Well-designed transitions can reduce the user's cognitive burden, enhance operational consistency, and ultimately improve the overall user experience.
[0041] like Figures 1A-1B , which is a schematic diagram of a scenario of a group of application switching in related technologies.
[0042] In such Figure 1A On the desktop of the electronic device shown in (a), in response to the user clicking the icon of application A, the electronic device starts playing the startup animation of application A, and displays the following Figure 1A The user interface shown in (b).
[0043] As the window of application A's startup animation gradually increases, the user discovers that application A is not the application they want to open, but application B is. Figure 1A As shown in (b) in FIG, the user clicks the icon of application B on the desktop that has not been covered by the active window, but the electronic device does not respond to the operation and continues to display the following Figure 1A (c) shows the user interface of the startup animation effect of application A.
[0044] After the start effect of the application A ends, the display interface of the application A is displayed as shown in (d) of FIG. 1C. Figure 1A However, the application A is not the application that the user wants to open, and thus the user needs to close the application A and then open the application B. In response to the up-swipe operation of the user on the hot area below the user interface, the electronic device displays the desktop as shown in (a) of FIG. 2A. Figure 1B
[0045] As shown in (b) of FIG. 2A, in response to the operation of the user clicking the icon of the application B on the desktop, the electronic device starts playing the start effect of the application B. As shown in (c) of FIG. 2A, as the start effect continues to run, the effect window continues to increase. After the start effect of the application B ends, the display interface of the application B is finally displayed as shown in (d) of FIG. 2A. Figure 1B Figure 1B Figure 1B
[0046] It can be seen that in the related art, in the process of starting an application program, if the user wants to switch to start another application, the operation is not only cumbersome, but also takes a lot of time.
[0047] By using the application switching method provided in the embodiments of the present application, even in the process of starting an application program, the user can quickly switch to another application that the user wants to open, which can greatly improve the efficiency of application switching.
[0048] As shown in FIG. 3, an exemplary scene schematic diagram of the application switching method provided in the embodiments of the present application is shown. Figure 2
[0049] On the desktop of the electronic device as shown in (a) of FIG. 3, in response to the operation of the user clicking the icon of the application A, the electronic device starts playing the start effect of the application A, and displays the user interface as shown in (b) of FIG. 3. Figure 2 Figure 2
[0050] In the process of the window of the start effect of the application A gradually increasing, the user finds that the application A is not the application that the user wants to open, and the application B is. In response to the operation of the user clicking the icon of the application B on the desktop that is not covered by the effect window as shown in (b) of FIG. 3, the electronic device plays the transition effect of switching to the application B as shown in (c) of FIG. 3. After the transition effect ends, the display interface of the application B is directly displayed as shown in (d) of FIG. 3. Figure 2 Figure 2 Figure 2
[0051] Compared with the related art, by using the application switching method in the embodiments of the present application, during the starting process of an application A, if a user wants to switch to start another application B, the user only needs to directly click the icon of the application B. Even during the starting process of the application A, the electronic device can directly respond to the click operation to start the application B. Not only is the cumbersome switching operation no longer needed, but also the time for switching to the application B is saved, and the efficiency of application switching is greatly improved.
[0052] Figure 2 The illustrated is only a simple example scenario. In actual applications, each stage of application switching can have many different specific schemes based on actual needs or setting conditions, which are not limited here.
[0053] In some embodiments, during the starting process of the application A, even if the icon of the application C is covered by the dynamic effect window of the application A, the electronic device can start the application C in response to a user operation.
[0054] Please refer to Figure 3 , which is another example scenario diagram of the application switching method provided by the embodiments of the present application.
[0055] As shown in (a) of Figure 3 , on the desktop of the electronic device, in response to the operation of the user clicking the icon of the application A, the electronic device starts to play the starting dynamic effect of the application A, and displays the user interface as shown in (b) of Figure 3 .
[0056] During the process of gradually increasing the window of the starting dynamic effect of the application A, the user finds that the application A is not the application that the user wants to open, and the application C is. Although the icon of the application C is covered by the window of the starting dynamic effect of the application A at this time, the user remembers the position of the icon of the application C on the desktop.
[0057] The user performs a preset pass-through action (for example, knuckle tapping, double-clicking, single-finger continuous tapping, etc.) on the window of the starting dynamic effect of the application A at the position corresponding to the icon of the application C. In response to the preset pass-through action, as shown in (c) of Figure 3 , the electronic device can play the transition dynamic effect of switching to the application C. After the transition dynamic effect ends, as shown in (d) of Figure 3 , the display interface of the application C is displayed.
[0058] In some embodiments, the transition dynamic effect of switching to the application B displayed by the electronic device in response to the click operation of the user on the icon of the application B can also have many different ways.
[0059] Please refer to Figure 4A , which is another example scenario diagram of the application switching method provided by the embodiments of the present application.
[0060] In the desktop of the electronic device as shown in (a) of Figure 4A In response to the user's operation of clicking the icon of application A, the electronic device starts playing the startup animation of application A, and displays the user interface as shown in (b) of Figure 4A
[0061] In the process of the window of the startup animation of application A gradually increasing, the user finds that application A is not the application that the user wants to open, and application B is. In response to the user's operation of clicking the icon of application B on the desktop that is not covered by the window of the startup animation as shown in (b) of Figure 4A Figure 4A The electronic device can display a prompt window on the window of the startup animation of application A, in which a prompt word about application B being started is displayed. Information such as the countdown of application B completing the startup can also be displayed in the prompt window. After the display interface of application B is prepared in the background, the display interface of application B can be directly displayed as shown in (d) of Figure 4A
[0062] Please refer to Figure 4B for another exemplary scenario of the application switching method provided by the embodiments of the present application.
[0063] In the desktop of the electronic device as shown in (a) of Figure 4B In response to the user's operation of clicking the icon of application A, the electronic device starts playing the startup animation of application A, and displays the user interface as shown in (b) of Figure 4B
[0064] In the process of the window of the startup animation of application A gradually increasing, the user finds that application A is not the application that the user wants to open, and application B is. In response to the user's operation of clicking the icon of application B on the desktop that is not covered by the window of the startup animation as shown in (b) of Figure 4B Figure 4B The electronic device can directly end the startup animation of application A, and start playing the startup animation of application B as a transition animation. After the startup animation of application B ends, the display interface of application B is displayed as shown in (d) of Figure 4B
[0065] Preferably, in some embodiments, the transition animation of switching to application B can adopt a smooth transition manner of the window of application B and the window of application A.
[0066] Please refer to Figures 5A-5B for another set of exemplary scenario of the application switching method provided by the embodiments of the present application.
[0067] In the desktop of the electronic device as shown in (a) of Figure 5A On the desktop of the electronic device shown in (a), in response to the user clicking the icon of application A, the electronic device starts playing the startup animation of application A. Figure 5A As shown in (b) to (c), the animation window gradually enlarges.
[0068] As the window of application A's startup animation gradually increases, the user discovers that application A is not the application they want to open, but application B is. Figure 5A In (c), when the icon of application B on the desktop that has not yet been covered by the dynamic effect window is clicked, the electronic device pulls up application B and prepares to switch to the transition effect of application B. Before the transition effect is ready, Figure 5A As shown in (d), the startup animation of application A continues to play and the animation window continues to enlarge.
[0069] After the transition animation is ready, the electronic device will end the startup animation of application A and keep the window of the last frame of the startup animation of application A. Figure 5B As shown in (a), the transition animation starts playing, the startup animation window of application A gradually moves from inside the screen to outside the screen, while the window of application B gradually moves from outside the screen to inside the screen.
[0070] like Figure 5B As shown in (b) in the figure, the transition effect continues to play, and the application window B is panned and enlarged. Figure 5B As shown in (c) in the figure, the electronic device displays the application B window in full screen, and the display interface of application B is displayed in the window.
[0071] It's understandable that when the transition to App B begins, the window size of App A's last frame might be a different percentage of the screen size. Therefore, the size of App B's window at the start of the transition, as well as the rate at which the window grows during the transition, might also vary accordingly.
[0072] See also Figure 6 , is another exemplary scenario diagram of the application switching method provided in an embodiment of the present application.
[0073] and Figure 5B The window size of the last frame of the startup animation of application A shown in (a) accounts for about 80% of the screen size. Figure 6 As shown in (a) in the figure, the window size of the last frame of the startup animation of application A accounts for about 60% of the screen size. In this case, the window size of application B can also gradually increase from 60% of the screen size when the transition animation starts. However, in order to ensure that the playback duration of the transition animation is relatively consistent, Figure 6As shown in (b) of FIG. 13, the application B window can be enlarged at a larger step size when the application B window is enlarged. Finally, as shown in (c) of FIG. 13, the electronic device displays the application B window in full screen. Figure 6 As shown in (c) of FIG. 13, the electronic device displays the application B window in full screen.
[0074] In some embodiments, the application B started by the user can be a landscape application (for example, a landscape game application, etc.). In this case, after the transition effect is ready, the effect when playing can also be different from when the application B is a portrait application.
[0075] Please refer to Figure 7 for another example of the application switching method provided by the embodiments of the present application.
[0076] After the transition effect is ready, the electronic device ends the starting effect of the application A and keeps the window of the last frame of the starting effect of the application A. If the application B is a landscape application, as shown in (a) of FIG. 14, the transition effect starts to play, and the starting effect window of the application A can be translated from the top of the screen to outside the screen, while the application B window can be gradually translated from the bottom of the screen to inside the screen. Figure 7
[0077] As shown in (b) of FIG. 14, the transition effect continues to play, and the application B window is translated and enlarged at the same time. Until the transition effect ends, as shown in (c) of FIG. 14, the electronic device displays the application B window in full screen. Figure 7 Figure 7
[0078] It can be understood that the above embodiments are only part of the example scenarios of the application switching method in the embodiments of the present application, and in actual applications, there can be more different specific scenarios and effect display modes based on different settings and requirements, which are not limited here.
[0079] The application switching method in the embodiments of the present application will be described below in combination with the above example scenarios: Please refer to Figure 8 for a flowchart of the application switching method in the embodiments of the present application.
[0080] S801, in response to an operation of starting a first application program on a desktop, playing a first starting effect of the first application program in a starting window; The desktop refers to the main interface of the electronic device, and is used to display application program icons and widgets. The first application program refers to the application program that the user first attempts to start. The starting window refers to an independent window that displays the starting effect during the loading of the application program. The first starting effect refers to a series of visual animation effects designed for the starting of the first application program, and is used to provide visual feedback during the loading of the application program.
[0081] Specifically, when a user clicks or touches an icon of a first application on the desktop of an electronic device, the system recognizes this launch operation. Subsequently, the system creates a launch window and starts playing a launch animation designed for the first application in the window. The launch animation usually includes a series of carefully designed animation sequences, which may involve the transformation, color change, position movement, and other elements of the application icon. The launch window gradually expands and eventually may cover the entire screen. This process is synchronized with the actual loading process of the application. For example, refer to the user interfaces shown in (a) to (b) in FIG. 10. Figure 2
[0082] S802, during the playing of the first launch animation, in response to a touch operation on the position of an icon of a second application on the desktop, end the first launch animation and start playing a transition animation; For example, refer to the user interfaces shown in (b) to (c) in FIG. 10. Figure 5A Figure 5B The second application refers to the application that the user actually wants to open, which is different from the first application that is initially attempted to launch. The transition animation refers to the transition animation effect displayed when switching from one application to another.
[0083] In some embodiments, the touch operation can be various based on different settings, for example, it can be a click operation, a double-click operation, a double-finger pull-apart operation, and the like, which are not limited here.
[0084] In some embodiments, the specific way of ending the first launch animation and playing the transition animation can be various, for example, it can be directly displaying a prompt word on the launch animation of application A as shown in FIG. 11, for example, it can be directly playing the launch animation of application B as shown in FIG. 12, for example, it can be smoothly switching the windows of applications A and B as shown in FIG. 13, for example, it can be a gradient transition (the launch animation of application A gradually fades out and the interface components of application B gradually strengthen), and the like, and it can be other ways, which are not limited here. Figure 4A Figure 4B Figure 5B
[0085] In some embodiments, in the case of smooth transition, the size of the window of application A at the end of the launch animation of application A can be different, for example, refer to FIGS. 14 and 15. Figure 5B Figure 6 In some embodiments, as shown in FIG. 16, the transition animation can start playing with the size of the last frame of the window of application A at the end of the launch animation of application A as the size of the window of application B, so as to guarantee the smooth effect.
[0086] In some embodiments, as shown in FIG. 17, the transition animation can start playing with the size of the last frame of the window of application A at the end of the launch animation of application A as the size of the window of application B, so as to guarantee the smooth effect. Figure 7 As shown, application A is a portrait application, and application B is a landscape application. When the transition effect is played, the launch window of the launch effect of application A can be translated from above the screen to outside the screen, and the window of application B can be gradually translated from below the screen to inside the screen.
[0087] In some embodiments, as shown in FIG. 1B, the icon of the second application is not covered by the launch window of the launch effect of the first application. The electronic device can trigger the second application to start in response to a touch operation, such as a click operation, on the icon of the second application. Figure 2
[0088] In some embodiments, as shown in FIG. 1B, the icon of the second application is not covered by the launch window of the launch effect of the first application. The electronic device can trigger the second application to start in response to a touch operation, such as a click operation, on the icon of the second application. Figure 3
[0089] S803, after playing the transition effect, the interactive interface of the second application is displayed in full screen.
[0090] After playing the transition effect, the electronic device has completed the preparation of displaying the interface of the new application, and can display the interactive interface of the second application in full screen. The interactive interface of the second application includes the functions, contents and user interface elements of the application. Presenting the interactive interface of the second application on the screen of the electronic device allows the user to see and interact with it. In some embodiments, the interactive interface of the second application can also be referred to as the interface or display interface of the second application, which is not limited herein.
[0091] Through the application switching method in the embodiments of the present application, the user can directly switch to the second application during the start of the first application without waiting for the first application to completely load or performing a cumbersome multi-step operation. This greatly improves the efficiency and smoothness of application switching, and reduces the user waiting time and operation steps.
[0092] To better understand the application switching method in the embodiments of the present application, the software structure framework of the electronic device in the embodiments of the present application will be described first.
[0093] Figure 9 is a schematic diagram of the software structure of the electronic device in the embodiments of the present application.
[0094] The layered architecture divides the software into several layers, and each layer has a clear role and division of labor. Layers communicate with each other through software interfaces. In some embodiments, the system is divided into four layers, from top to bottom, application layer, application framework layer, runtime and system library, and kernel layer.
[0095] The application layer can include a series of application packages.
[0096] As shown in Figure 9 , the application packages can be divided into system applications and third-party applications. The third-party applications can include camera, gallery, calendar, call, map, navigation, WLAN, Bluetooth, music, video, short message, etc. applications (also referred to as applications). The system applications can include desktop and system user interface component SystemUI, etc.
[0097] The desktop is the main interface of the electronic device, used for displaying and managing application icons, widgets, etc. It is the main entrance for users to interact with the device, providing basic functions such as starting applications, organizing icons, switching interfaces, etc. In the embodiments of the present application, the desktop application can also include an input event listening component and a scene recognition component, wherein: The input event listening component is responsible for capturing and processing various input operations of the user on the desktop, such as clicking, sliding, long pressing, etc. The scene recognition component is used to determine whether an additional click start scene is entered according to the user's operation and the current state.
[0098] The system user interface component SystemUI is the core component of the system user interface, responsible for managing and displaying system-level UI elements such as status bar, navigation bar, notification panel, etc. In the embodiments of the present application, SystemUI can also include a custom motion effect component and a motion effect framework component. The custom motion effect component includes pre-customized transition motion effects; the motion effect framework component is used to execute the motion effects prepared by the application framework layer.
[0099] The application framework layer provides application programming interfaces (application programming interface, API) and programming frameworks for the applications of the application layer. The application framework layer includes some pre-defined functions.
[0100] As shown in Figure 9 , the application framework layer can include window manager WMS, application management service AMS, content provider, view system, phone manager, resource manager, notification manager, etc.
[0101] The window manager WMS is used to manage window programs. The window manager can obtain the size of the display screen, determine whether there is a status bar, lock the screen, and intercept the screen, etc.
[0102] The application management service AMS is used to manage the life cycle and running state of the application.
[0103] The content provider stores and retrieves data and makes it accessible to the application. The data can include videos, images, audio, dialed and received calls, browsing history and bookmarks, phonebook, etc.
[0104] The view system includes visual controls, such as controls that display text, controls that display images, etc. The view system can be used to build an application. A display interface can be composed of one or more views. For example, a display interface that includes a short message notification icon can include a view that displays text and a view that displays an image.
[0105] The phone manager is used to provide the communication function of the electronic device. For example, the management of call status (including call connection, call hangup, etc.).
[0106] The resource manager provides various resources for the application, such as localized strings, icons, images, layout files, video files, etc.
[0107] The notification manager allows the application to display notification information in the status bar, which can be used to convey messages of the notification type, which can automatically disappear after a short stay without user interaction. For example, the notification manager is used to notify the completion of the download, message reminders, etc. The notification manager can also be a notification that appears in the top status bar of the system in the form of a chart or a scrolling text, such as a notification of an application running in the background, and can also be a notification that appears on the screen in the form of a dialog interface. For example, prompting text information in the status bar, issuing a prompt sound, the electronic device vibrating, the indicator light flashing, etc.
[0108] In the embodiment of the present application, the window manager WMS can include a system animation service, an animation framework service, a layer parameter service, etc., wherein: The system animation service can handle animation effects in various system interface transitions, window switching, etc. In the embodiment of the present application, the system animation service can be responsible for handling the transition animation in the application switching process to ensure smooth and natural visual transition from one application to another.
[0109] The animation framework service provides an extensible animation effect framework that allows developers to customize and implement various complex animation effects. It can include a series of predefined animation types (such as translation, scaling, rotation, etc.) and animation interpolators, so that developers can flexibly combine these basic elements to create rich animation effects.
[0110] The layering parameter service can manage the hierarchical relationship and related parameters of windows and views. In a multi-window environment, this component can be responsible for determining the Z order (display hierarchy), transparency, size, position, and other parameters of each window. During application switching, the layering parameter service can be used to adjust the window parameters of the application being exited and the application about to enter, to achieve a smooth visual effect.
[0111] The runtime includes a core library and a virtual machine. The runtime is responsible for the scheduling and management of the system.
[0112] The core library includes two parts: one part is the function function that the programming language (for example, jave language) needs to call, and the other part is the core library of the system.
[0113] The application layer and the application framework layer run in the virtual machine. The virtual machine executes the programming files (for example, jave files) of the application layer and the application framework layer into binary files. The virtual machine is used to perform functions such as management of the object lifecycle, stack management, thread management, security and exception management, and garbage collection.
[0114] The system library can include multiple functional modules. For example: a surface manager, media libraries, a three-dimensional graphics processing library (for example: OpenGL ES), a two-dimensional graphics engine (for example: SGL), etc.
[0115] The surface manager is used to manage the display subsystem and provides two-dimensional (2-Dimensional, 2D) and three-dimensional (3-Dimensional, 3D) layer fusion for multiple applications.
[0116] The media library supports playback and recording of multiple commonly used audio, video formats, and static image files. The media library can support multiple audio and video encoding formats, such as: MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, etc.
[0117] The three-dimensional graphics processing library is used to implement 3D graphics drawing, image rendering, synthesis, and layer processing, etc.
[0118] The 2D graphics engine is a drawing engine for 2D drawing.
[0119] The kernel layer is the layer between hardware and software. The kernel layer at least includes display drivers, camera drivers, audio drivers, sensor drivers, and virtual card drivers.
[0120] The working process of the software of the electronic device will be described below in conjunction with an application switching scenario.
[0121] Figure 10 An example of a workflow for application switching in embodiments of the present application is shown in FIG. 1. The workflow mainly involves the application framework layer (framework), the desktop of the application layer, and the system user interface component (SystemUI) of the application layer. Through event listening and scene recognition of the desktop, it is determined whether the user clicks application B again during the process of starting application A. If so, the framework is notified to pull up application B and execute the customized dynamic effect. Specifically: 1. The user clicks the application A icon on the desktop, and the focus is on the desktop, which indicates that the desktop is currently in an active state and can directly receive and respond to user input events. In this state, the user's click operation on the application A icon can directly trigger the start of application A, and the framework receives the request to start application A; 2. The framework prepares the start-up effect of application A; 3. After the framework completes the preparation of the start-up effect of application A, it sends a notification that the preparation of the start-up effect is complete to the SystemUI; 4. The SystemUI executes the start-up effect of application A: the start-up window of application A on the desktop plays the start-up effect of application A, and the focus moves to the start-up window of application A; 5. During the playing of the start-up effect of application A, the input event consumer of the input event listening component of the desktop continuously listens to user input. The user clicks the application B icon, and since the focus is in the start-up window of application A and not on the desktop, the desktop cannot directly respond to the click operation of the user, and the event is passed to the scene recognition component of the desktop; 6. The scene recognition component determines that it is currently in the application A start-up effect playing period, and the click position is outside the effect window coverage and is not a gesture hot area, confirming that it is an additional click start scene, and therefore the click event is transmitted to the corresponding click position on the desktop (i.e., clicking the application B icon); 7. The desktop sends a request to start application B to the framework; 8. The framework receives the request to start application B and prepares the transition effect; 9. The framework completes the preparation of the transition effect and notifies the SystemUI; 10. The SystemUI ends the start-up effect of application A; 11. The SystemUI executes the transition effect from application A to application B.
[0122] In this workflow, the additional input event consumer added by the desktop application enables it to capture and handle the user's click event on the icon of application B even during the launch animation of application A. The judgment logic of the scene recognition component ensures that the operation of switching to application B is triggered only under certain conditions (application A is playing the launch animation and the click position is appropriate). This design allows the user to switch to the correct application immediately after realizing that the wrong application is launched, without having to wait for the first application to fully launch. By using a customized transition animation, visual coherence and smoothness are also ensured, improving the user experience.
[0123] The application switching method in the embodiments of the present application will be described in detail below in combination with the software framework and workflow of the above exemplary electronic device. Please refer to Figures 11A-11B A set of exemplary information interaction diagrams of the application switching method in the embodiments of the present application are shown in FIGS. 1 to 3.
[0124] Steps S1101-S1106 are the process of playing the launch animation of application A after the desktop receives the click operation on the icon of application A, which is similar to the process in the related art and will not be described here.
[0125] S1101, the desktop receives a click operation on the icon position of application A; S1102, the desktop sends an instruction to launch application A to the application framework layer; S1103, the application framework layer prepares the launch animation of application A; S1104, the application framework layer sends a notification to the system user interface component that the preparation of the launch animation of application A is complete; S1105, the system user interface component sends an execution instruction of the launch animation of application A to the desktop; S1106, the desktop plays the launch animation of application A in the launch window of application A; The desktop represents the main interface of the electronic device, which is used to display and manage application icons, widgets, etc. The desktop is also an internal application in the system. Application A refers to the application program that the user first attempts to launch. The icon position of application A refers to the screen area occupied by the icon of application A on the desktop. The click operation refers to the user's short touch action on the icon of application A on the touch screen with a finger or a stylus, etc. In some embodiments, it can also be other preset launch operations on application A, which are not limited here.
[0126] In the native mechanism of the Android system, when starting application A from the desktop, the window focus is switched from the desktop to the window of the starting application A after the starting animation starts to execute, and the desktop cannot receive input events at this time. In the embodiment of the application, the input event can be transmitted to the desktop when the condition is met through steps S1107-S1109: S1107, receiving a click operation on the icon position of application B during the starting animation playing; Since the system focus has been switched to the starting window of application A at this time, the conventional touch event processing mechanism cannot capture this operation. Therefore, a special mechanism is needed to receive and process this additional click operation.
[0127] In some embodiments, during the starting animation playing, the swipe-up channel can be used to listen to all input events on the desktop, and then judge the type of the input event and deliver the input event to a specific consumer. The swipe-up channel is mainly used to listen to the operation of returning to the home screen or opening the recent task list in the traditional Android system.
[0128] It can be understood that using the swipe-up channel to listen to all input events on the desktop during the starting animation playing is a preferred example, and in actual application, other ways can also be used to realize the judgment of listening to the input events on the desktop during the starting animation playing. For example, optionally, a special input event processing thread is used to continuously run during the application starting animation, to capture and process all input events; optionally, during the starting animation, the window focus management strategy is temporarily adjusted, so that the desktop can still receive input events; optionally, through the hardware-level event bus mechanism, all input events are captured and delivered to the event listening component of the desktop at the bottom, and other ways can also be used, which are not limited here.
[0129] S1108, determining that the click operation meets the additional click starting scenario; Taking the use of the swipe-up channel to listen to the input events during the starting animation playing as an example, if the user performs a click operation again during the starting of application A, the swipe-up channel of the desktop receives the click event and performs scenario recognition.
[0130] In some embodiments, if the click event is during the starting animation, the click coordinates are not covered by the application starting window, and the click event is not a gesture hot area event, it can be determined that the click operation meets the additional click starting scenario, and the click event needs to be delivered to the input consumer. Otherwise, the click event is not processed.
[0131] The non-gesture hot area event refers to a touch event that occurs on the screen of the electronic device and does not belong to a predefined gesture area or function area. In the user interface design of the electronic device, there are usually some predefined gesture areas for specific gesture operations or function triggers, which are referred to as "gesture hot areas". For example, the screen edge can be designed for a swipe-back or call-out menu. The non-gesture hot area event refers to a touch event that occurs outside these predefined gesture hot areas, usually a user's operation in the normal interface area.
[0132] In some embodiments, other ways can also be used to determine whether the click operation meets the additional click startup scenario: For example, a machine learning model can be trained to recognize the user's intention. The model can consider more factors, such as the user's historical operation mode, the speed and force of the click, etc., to more accurately determine whether it is an additional click startup scenario.
[0133] For another example, a user confirmation mechanism can be used to pop up a quick confirmation dialog when a possible additional click startup scenario is detected, allowing the user to explicitly choose whether to switch to a new application.
[0134] For another example, a preset pass-through operation can be set up by the user making a specific gesture (such as knuckle tapping, drawing a circle, etc.) on the application B icon to explicitly indicate that they want to switch to application B, thereby determining that the current operation is an additional click startup scenario.
[0135] It can be understood that based on different settings, there can be many other ways to determine that the current operation meets the additional click startup scenario, which are not limited here.
[0136] S1109, pass the click event to the desktop to act on the icon of application B; In the input consumer, the layout information of the desktop is saved, and after receiving the event of the swipe-up channel, the input event is passed through to the desktop. After receiving, if the input event acts on the icon of application B, the pull-up of application B is performed.
[0137] When entering the pull-up process of application B and obtaining the startup parameters of application B, if the current operation is an additional click startup scenario, S1110-S1112 can be used to pull up application B: S1110, the desktop sends a notification of entering an additional click startup scenario to the system user interface component; S1111, the desktop sends a notification of entering an additional click startup scenario to the application framework layer; S1112, the desktop sends an instruction to start application B to the application framework layer; After confirming the entering of the extra-click start-up scenario, the desktop needs to inform other key components in the system so that they can adjust their behaviors accordingly. Therefore, when starting up the application B in the case of determining that the current is the extra-click scenario, the start-up parameter can be acquired as null, so that the system transition customization animation is used when selecting the application switching animation, and the scenario is marked as the extra-click start-up scenario and informed to the system user interface component SystemUI and the application framework layer.
[0138] When starting up the application B, the start-up animation of the application A is playing, and if the playing process of the start-up animation of the application A is immediately interrupted, the start-up window of the application A playing the start-up animation can directly fill the full screen at the moment of the interruption of the start-up animation. In the embodiment of the present application, the start-up animation of the application A and the transition animation of the application B can be processed through steps S1113-S1122 to realize the smooth switching of the application A and the application B: S1113, the application framework layer prepares the transition animation in the case of determining that the current is the extra-click start-up scenario. In the extra-click start-up scenario, the application framework layer needs to prepare a special transition animation to realize the smooth transition from the start-up animation of the application A to the interface of the application B.
[0139] S1114, after the transition animation is prepared, the application framework layer informs the system user interface component to execute the transition animation. Once the transition animation is prepared, the application framework layer needs to inform the system user interface component SystemUI to execute the animation. On the one hand, the timing of the animation execution is ensured to be correct, and on the other hand, the system UI elements (such as the status bar and the navigation bar) can be coordinated with the transition animation.
[0140] S1115, in the extra-click start-up scenario, the system user interface component determines that the start-up animation of the application A is executing, and prepares to merge the start-up animation of the application A. After receiving the notification of executing the transition animation, the system user interface component first needs to confirm the current state of the start-up animation of the application A and prepare to merge it with the new transition animation.
[0141] S1116, the system user interface component informs the desktop to merge the start-up animation of the application A. In order to realize the smooth animation merging, the system user interface component needs to be coordinated with the desktop application, because the desktop application is still controlling the start-up animation of the application A.
[0142] S1117, the desktop ends the start-up animation of the application A, and re-mounts the start-up window layer of the start-up animation and the desktop layer to the corresponding layer control interfaces and re-mounts the two layer control interfaces to the default display area. To avoid that directly interrupting the playing process of the startup animation of application A causes the startup window of the startup animation to directly fill the full screen, the desktop, when ending the startup animation of application A, makes the startup animation paused at the current frame and no longer continue to play, and re-mounts the startup window layer of the startup animation of application A and the desktop layer displaying the desktop content to the corresponding layer control interface, so that the two layers can be operated separately. The startup window layer is the layer of the startup animation of application A, and the desktop layer is the layer of the desktop content as the desktop background of the startup window layer.
[0143] After the two layers are re-mounted to the corresponding layer control interface, the two layer control interfaces are re-mounted to the default display area, which is the home screen area of the electronic device, so as to ensure that the two layers are controlled to be displayed on the home screen of the electronic device and will not be out of control and enlarged.
[0144] Specifically, in some embodiments, the desktop can send a signal to end the startup animation of application A by calling the interface of the window manager in the application framework layer, so that the window manager stops the further execution of the startup animation of application A and keeps the current state; the desktop can request the window manager to reorganize the layer structure: move the startup window layer of application A out of the special animation container, restore the desktop layer from the possible hidden state, and create a new SurfaceControl object to manage the two layers respectively; finally, the desktop can instruct the window manager to mount the newly created SurfaceControl object to the default display area.
[0145] S1118, the desktop calculates the proportion of the size of the last frame of the startup window relative to the size of the screen when ending the startup animation of application A, as a transition animation parameter; In some embodiments, the desktop can obtain the current size and position of the startup window of application A by querying the WMS; obtain the actual resolution of the screen; calculate the proportion of the size of the startup window relative to the size of the screen: proportion=(startup window width / screen width, startup window height / screen height); and pack the calculated proportion value into a transition animation parameter object.
[0146] Since the transition animation is performed on the same electronic device, in some embodiments, the current size of the last frame of the startup window can also be directly used as the transition animation parameter, which is not limited here.
[0147] S1119, the desktop transmits the transition animation parameter to the system user interface component; S1120, the system user interface component loads the transition animation based on the transition animation parameter; The transition effect parameter is a proportion of a last frame of the start-up window relative to a screen size when the start-up effect of the application A ends. Based on the transition effect parameter, the transition effect is loaded, which can make the exit window of the application A and the entry window of the application B in the transition effect consistent with the proportion, so as to make the transition effect smooth and fluent.
[0148] In some embodiments, the system user interface component can parse the transition effect parameter, extract the window proportion information, configure the start state of the transition animation based on the parameters, select an appropriate animation interpolator and duration, and then load the transition effect based on the configuration.
[0149] In S1121, the system user interface component sets no gray background to be added, and takes the desktop wallpaper as a background. In some embodiments, the system user interface component can configure the background layer of the transition animation, disable the default gray background setting, obtain a reference or snapshot of the current desktop wallpaper, and set the desktop wallpaper as the background layer of the transition animation. In this way, visual continuity can be maintained, and abrupt background changes during the transition process can be avoided.
[0150] In S1122, the system user interface component resets the scene to a default value and clears the transition effect parameters after the transition effect is executed. In some embodiments, the completion of the transition animation can be listened to. After the animation is completed, the internal scene flag is reset to a default value, all temporary parameters and states related to this transition are cleared, and then the WMS is notified that the transition is completed, and the normal window management mode can be restored. In this way, the normal state is restored after the special transition effect is completed, and preparation is made for subsequent operations.
[0151] In S1123, the system user interface component sends a notification that the transition effect is executed to the desktop. In S1124, the desktop displays the interactive interface of the application B in full screen.
[0152] In some embodiments, after receiving the transition completion notification, the desktop can request the application framework layer to promote the window of the application B to the top layer. Specifically, the window manager in the application framework layer can be used to adjust the window stack, so that the window of the application B is in the topmost visible state. The desktop can perform some cleaning operations, such as removing any remaining overlay or temporary view. At this time, the application B is in the foreground active state, and normal user interaction can be started.
[0153] In some embodiments of the present application, the application A can also be referred to as a first application, and the application B can also be referred to as a second application, which are not limited here.
[0154] In some embodiments, the preparation and execution of the start effect and the transition effect are mainly performed through interactions among the animation framework component in the SystemUI of the application layer, the animation framework service in the window manager WMS of the application framework layer, and the application management service AMS in the application layer: Referring to Figure 12 FIG. 1 is a schematic diagram of an exemplary information interaction among components in an application switching method according to an embodiment of the present application.
[0155] In some embodiments, the step S1102 is to send, by the desktop, an instruction of starting the application A to the application management service in the application framework layer. After receiving the instruction, the application management service notifies the animation framework service to prepare the start effect of the application A. After the preparation is completed, the animation framework service sends a notification of completion of the preparation of the start effect of the application A to the animation framework component, the animation framework component sends an execution instruction of the start effect of the application A to the desktop, and the desktop performs the step S1106 to play the start effect of the application A in the start window.
[0156] In some embodiments, in the additional click start scenario, the step S1112 is to send, by the desktop, an instruction of starting the application B to the application management service in the application framework layer. After receiving the instruction, the application management service notifies the animation framework service in the window manager WMS to prepare the transition effect of the application B.
[0157] The animation framework service starts to prepare the transition effect. In the process of preparing the transition effect, necessary SurfaceControl objects can be created to manage the layers in the transition process, and animation resources (such as bitmap cache or shader program, etc.) are prepared.
[0158] After the preparation of the transition effect is completed, the animation framework service notifies the animation framework component in the SystemUI to execute the transition effect. Since the animation framework component can determine that the start effect of the application A is being executed in the additional click start scenario, the start effect of the application A is prepared to be merged. In some embodiments, the animation framework component can query the WMS to obtain the current execution state of the start effect of the application A, including animation progress, current window size, and other information. Then, the remaining time of the start effect of the application A and the time required by the transition effect are analyzed, and the optimal merging point is calculated, so as to complete the preparation of merging the start effect of the application A.
[0159] After the animation framework component completes the preparation of merging the start effect of the application A, the step S1116 can be performed to notify the desktop to perform the start effect merging of the application A.
[0160] An exemplary electronic device provided by an embodiment of the present application will be introduced below.
[0161] Figure 13FIG. 1 is a structural schematic diagram of an electronic device 100 provided by an embodiment of the present application.
[0162] The following will be specifically described by taking the electronic device 100 as an example. It should be understood that the electronic device 100 can have more or less components than those shown in the figure, can combine two or more components, or can have a different component configuration. The various components shown in the figure can be implemented in hardware, software, or a combination of hardware and software including one or more signal processing and / or application specific integrated circuits.
[0163] The electronic device 100 can include a processor 110, an external memory interface 120, an internal memory 121, a universal serial bus (USB) interface 130, a charge management module 140, a power management module 141, a battery 142, an antenna 1, an antenna 2, a mobile communication module 150, a wireless communication module 160, an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, a headset interface 170D, a sensor module 180, a key 190, a motor 191, an indicator 192, a camera 193, a display screen 194, and a subscriber identification module (SIM) card interface 195, etc. The sensor module 180 can include a pressure sensor 180A, a gyroscope sensor 180B, a barometric pressure sensor 180C, a magnetic sensor 180D, an acceleration sensor 180E, a distance sensor 180F, a proximity light sensor 180G, a fingerprint sensor 180H, a temperature sensor 180J, a touch sensor 180K, an ambient light sensor 180L, a bone conduction sensor 180M, etc.
[0164] It can be understood that the structure shown in the embodiment of the present application does not constitute a specific limitation on the electronic device 100. In other embodiments of the present application, the electronic device 100 can include more or less components than those shown in the figure, or combine certain components, or split certain components, or different component arrangements. The components shown in the figure can be implemented in hardware, software, or a combination of software and hardware.
[0165] The processor 110 can include one or more processing units, for example: the processor 110 can include an application processor (AP), a modem processor, a graphics processing unit (GPU), an image signal processor (ISP), a controller, a memory, a video codec, a digital signal processor (DSP), a baseband processor, and / or a neural-network processing unit (NPU), etc. Different processing units can be independent devices or integrated in one or more processors.
[0166] The controller can be the nerve center and command center of the electronic device 100. The controller can generate operation control signals according to instruction operation codes and timing signals, and complete the control of fetching and executing instructions.
[0167] The memory in the processor 110 can also be configured to store instructions and data. In some embodiments, the memory in the processor 110 is a cache memory. The memory can store instructions or data that have just been used or are frequently used by the processor 110. If the processor 110 needs to use the instructions or data again, it can directly call them from the memory. This avoids repeated access and reduces the waiting time of the processor 110, thereby improving the efficiency of the system.
[0168] In some embodiments, the processor 110 can include one or more interfaces. The interfaces can include an inter-integrated circuit (I2C) interface, an inter-integrated circuit sound (I2S) interface, a pulse code modulation (PCM) interface, a universal asynchronous receiver / transmitter (UART) interface, a mobile industry processor interface (MIPI), a general-purpose input / output (GPIO) interface, a subscriber identity module (SIM) interface, and / or a universal serial bus (USB) interface, etc.
[0169] The charging management module 140 is configured to receive charging input from a charger. The charger can be a wireless charger or a wired charger.
[0170] The power management module 141 is configured to connect the battery 142, and the charging management module 140 is connected to the processor 110. The power management module 141 receives input from the battery 142 and / or the charging management module 140 to supply power to the processor 110, the internal memory 121, the external memory, the display screen 194, the camera 193, and the wireless communication module 160.
[0171] The wireless communication function of the electronic device 100 can be implemented by the antenna 1, the antenna 2, the mobile communication module 150, the wireless communication module 160, the modem processor, and the baseband processor.
[0172] The antenna 1 and the antenna 2 are configured to transmit and receive electromagnetic wave signals. Each antenna in the electronic device 100 can be configured to cover a single or multiple communication frequency bands. Different antennas can also be multiplexed to improve the utilization of the antennas. For example, the antenna 1 can be multiplexed as a diversity antenna for a wireless local area network. In some other embodiments, the antennas can be used in combination with a tuning switch.
[0173] The mobile communication module 150 can provide a solution for wireless communication including 2G / 3G / 4G / 5G, etc. applied to the electronic device 100. The mobile communication module 150 can include at least one filter, a switch, a power amplifier, a low noise amplifier (LNA), etc. The mobile communication module 150 can receive electromagnetic waves from the antenna 1, and perform filtering, amplification, etc. on the received electromagnetic waves, and transmit the processed electromagnetic waves to the modem processor for demodulation. The mobile communication module 150 can also amplify signals modulated by the modem processor, and convert the amplified signals into electromagnetic waves to be radiated through the antenna 1. In some embodiments, at least part of the functional modules of the mobile communication module 150 can be disposed in the processor 110. In some embodiments, at least part of the functional modules of the mobile communication module 150 and at least part of the modules of the processor 110 can be disposed in the same device.
[0174] The modem processor can include a modulator and a demodulator. The modulator is configured to modulate a low-frequency baseband signal to be transmitted into a medium-high frequency signal. The demodulator is configured to demodulate a received electromagnetic wave signal into a low-frequency baseband signal. The demodulator then transmits the demodulated low-frequency baseband signal to the baseband processor for processing. The low-frequency baseband signal processed by the baseband processor is transmitted to the application processor. The application processor outputs a sound signal through an audio device (not limited to a speaker 170A, a microphone 170B, etc.), or displays an image or a video through the display 194. In some embodiments, the modem processor can be a separate device. In other embodiments, the modem processor can be independent of the processor 110 and disposed in the same device as the mobile communication module 150 or other functional modules.
[0175] The wireless communication module 160 can provide a wireless communication solution including wireless local area networks (WLAN) (such as a wireless fidelity (Wi-Fi) network), Bluetooth (BT), a global navigation satellite system (GNSS), frequency modulation (FM), near field communication (NFC), infrared technology (IR), and the like, which can be applied to the electronic device 100. The wireless communication module 160 can be one or more devices that integrate at least one communication processing module. The wireless communication module 160 receives an electromagnetic wave via the antenna 2, performs frequency modulation and filtering processing on the electromagnetic wave signal, and transmits the processed signal to the processor 110. The wireless communication module 160 can also receive a signal to be transmitted from the processor 110, perform frequency modulation and amplification thereon, and radiate the signal as an electromagnetic wave via the antenna 2.
[0176] In some embodiments, the antenna 1 and the mobile communication module 150 of the electronic device 100 are coupled, and the antenna 2 and the wireless communication module 160 are coupled, so that the electronic device 100 can communicate with a network and other devices through wireless communication technology. The wireless communication technology can include global system for mobile communications (GSM), general packet radio service (GPRS), code division multiple access (CDMA), wideband code division multiple access (WCDMA), time-division code division multiple access (TD-SCDMA), long term evolution (LTE), BT, GNSS, WLAN, NFC, FM, and / or IR technology, etc. The GNSS can include a global positioning system (GPS), a global navigation satellite system (GLONASS), a beidu navigation satellite system (BDS), a quasi-zenith satellite system (QZSS), and / or a satellite based augmentation systems (SBAS).
[0177] The electronic device 100 implements a display function through a GPU, a display screen 194, and an application processor, etc. The GPU is a microprocessor for image processing, which is connected to the display screen 194 and the application processor. The GPU is used to perform mathematical and geometric calculations for graphics rendering. The processor 110 can include one or more GPUs, which execute program instructions to generate or change display information.
[0178] The display screen 194 is configured to display images, videos, and the like. The display screen 194 includes a display panel. The display panel can be a liquid crystal display (LCD). The display panel can also be manufactured using an organic light-emitting diode (OLED), an active-matrix organic light-emitting diode (AMOLED), a flexible light-emitting diode (FLED), a miniled, a microled, a micro-oled, a quantum dot light emitting diode (QLED), and the like. In some embodiments, the electronic device 100 can include one or N display screens 194, where N is a positive integer greater than 1.
[0179] The electronic device 100 can implement a photographing function through an ISP, the camera 193, a video codec, a GPU, the display screen 194, and an application processor.
[0180] The internal memory 121 can include one or more random access memories (RAMs) and one or more non-volatile memories (NVMs).
[0181] The random access memory can include a static random-access memory (SRAM), a dynamic random access memory (DRAM), a synchronous dynamic random access memory (SDRAM), a double data rate synchronous dynamic random access memory (DDR SDRAM, for example, a fifth generation DDR SDRAM commonly referred to as a DDR5 SDRAM), and the like. The non-volatile memory can include a disk storage device, a flash memory.
[0182] According to the operation principle, the flash memory can include NOR FLASH, NAND FLASH, 3D NAND FLASH, etc. According to the potential order of the storage unit, the flash memory can include single-level cell (SLC), multi-level cell (MLC), triple-level cell (TLC), quad-level cell (QLC), etc. According to the storage specification, the flash memory can include universal flash storage (UFS), embedded multi media Card (eMMC), etc.
[0183] The random access memory can be directly read and written by the processor 110, and can be used to store executable programs (such as machine instructions) of an operating system or other programs running, and can also be used to store data of users and application programs, etc.
[0184] The non-volatile memory can also store executable programs and data of users and application programs, etc., and can be loaded into the random access memory in advance for direct reading and writing by the processor 110.
[0185] The external memory interface 120 can be used to connect an external non-volatile memory, so as to expand the storage capacity of the electronic device 100. The external non-volatile memory communicates with the processor 110 through the external memory interface 120, so as to realize the data storage function. For example, files such as music and video are saved in the external non-volatile memory.
[0186] The electronic device 100 can realize the audio function through the audio module 170, the speaker 170A, the receiver 170B, the microphone 170C, the earphone interface 170D, and the application processor, etc. For example, music playing, recording, etc.
[0187] The audio module 170 is used to convert digital audio information into analog audio signals, and is also used to convert analog audio input into digital audio signals. The audio module 170 can also be used to encode and decode audio signals. In some embodiments, the audio module 170 can be arranged in the processor 110, or part of the function modules of the audio module 170 can be arranged in the processor 110.
[0188] The speaker 170A, also known as a "loudspeaker", is used to convert audio electrical signals into sound signals. The electronic device 100 can listen to music or listen to a hands-free call through the speaker 170A.
[0189] The receiver 170B, also called "earpiece", is used to convert electrical audio signals into sound signals. When the electronic device 100 receives a phone call or a voice message, the user can receive the voice by holding the receiver 170B close to the ear.
[0190] The microphone 170C, also called "microphone", "sounder", is used to convert sound signals into electrical signals. When making a phone call or sending a voice message, the user can make sound by holding the microphone 170C close to the mouth, and input the sound signals into the microphone 170C. The electronic device 100 can be provided with at least one microphone 170C. In some other embodiments, the electronic device 100 can be provided with two microphones 170C, in addition to collecting sound signals, the noise reduction function can also be realized. In some other embodiments, the electronic device 100 can also be provided with three, four or more microphones 170C, in addition to collecting sound signals, noise reduction, the sound source can also be identified, and the directional recording function can also be realized.
[0191] The earphone interface 170D is used to connect wired earphones. The earphone interface 170D can be a USB interface 130, or a 3.5mm open mobile terminal platform (OMTP) standard interface, or a cellular telecommunications industry association of the USA (CTIA) standard interface.
[0192] The pressure sensor 180A is used to sense pressure signals, and can convert the pressure signals into electrical signals. In some embodiments, the pressure sensor 180A can be provided on the display screen 194. There are many types of pressure sensors 180A, such as resistive pressure sensors, inductive pressure sensors, capacitive pressure sensors, etc. The capacitive pressure sensor can include at least two parallel plates made of conductive material. When a force acts on the pressure sensor 180A, the capacitance between the electrodes changes. The electronic device 100 determines the intensity of the pressure according to the change of the capacitance. When a touch operation acts on the display screen 194, the electronic device 100 detects the intensity of the touch operation according to the pressure sensor 180A. The electronic device 100 can also calculate the position of the touch according to the detection signal of the pressure sensor 180A. In some embodiments, the touch operation acting on the same touch position but with different touch operation intensities can correspond to different operation instructions. For example, when a touch operation with a touch operation intensity less than a first pressure threshold value acts on a short message application icon, an instruction to view short messages is executed. When a touch operation with a touch operation intensity greater than or equal to the first pressure threshold value acts on the short message application icon, an instruction to create a new short message is executed.
[0193] Touch sensor 180K, also called "touch panel". Touch sensor 180K can be disposed on display screen 194, and touch sensor 180K and display screen 194 form a touch screen, also called "touch panel". Touch sensor 180K is used to detect touch operation applied to or near touch sensor 180K. Touch sensor 180K can transmit detected touch operation to application processor to determine touch event type. Visual output related to touch operation can be provided through display screen 194. In other embodiments, touch sensor 180K can also be disposed on the surface of electronic device 100, which is different from the position of display screen 194.
[0194] Keys 190 include power key, volume key, and the like. Keys 190 can be mechanical keys. They can also be touch keys. Electronic device 100 can receive key input and generate key signal input related to user settings and function control of electronic device 100.
[0195] Motor 191 can generate vibration prompt. Motor 191 can be used for incoming call vibration prompt, and can also be used for touch vibration feedback. For example, touch operation applied to different applications (such as taking pictures, playing audio, and the like) can correspond to different vibration feedback effects. Touch operation applied to different regions of display screen 194 can also correspond to different vibration feedback effects of motor 191. Different application scenarios (such as time reminders, receiving messages, alarms, games, and the like) can also correspond to different vibration feedback effects. Touch vibration feedback effects can also support customization.
[0196] Pointer 192 can be an indicator light, which can be used to indicate charging status, power change, and can also be used to indicate messages, missed calls, notifications, and the like.
[0197] SIM card interface 195 is used to connect SIM card. SIM card can be inserted into or pulled out of SIM card interface 195 to realize contact and separation with electronic device 100. Electronic device 100 can support one or N SIM card interfaces, and N is a positive integer greater than 1. SIM card interface 195 can support Nano SIM card, Micro SIM card, SIM card, and the like. Multiple cards can be inserted into the same SIM card interface 195 at the same time. The types of the multiple cards can be the same or different. SIM card interface 195 can also be compatible with different types of SIM cards. SIM card interface 195 can also be compatible with external storage cards. Electronic device 100 interacts with network through SIM card to realize functions such as call and data communication.
[0198] The above-described embodiments merely serve to illustrate the technical solutions of the present application, rather than limit the present application; even though the present application has been described in detail with reference to the foregoing embodiments, those ordinarily skilled in the art should understand that they can still modify the technical solutions recorded in the foregoing embodiments, or equivalently replace some of the technical features thereof; and these modifications or replacements do not cause the essence of the corresponding technical solutions to depart from the scope of the technical solutions of the embodiments of the present application.
[0199] In the above-described embodiments, the term "when" can be interpreted as meaning "if" or "after" or "in response to determining" or "in response to detecting" according to the context. Similarly, the phrase "upon determining" or "if detecting (the stated condition or event)" can be interpreted as meaning "if determining" or "in response to determining" or "upon detecting (the stated condition or event)" or "in response to detecting (the stated condition or event)" according to the context.
[0200] In the above-described embodiments, all or some of the flowcharts or functional modules can be realized in the form of a software program. The software program is stored in a volatile or non-volatile storage medium (for example, a RAM, a floppy disk, a USB flash disk, a ROM, or a DVD), and contains a number of instructions capable of being executed by one or more computer processors.
[0201] Those ordinarily skilled in the art can understand that all or some of the flowcharts in the above-described embodiments can be implemented by a computer program, and the program can be stored in a computer readable storage medium, and when the program is executed, the program can include the flowcharts of the above-described embodiments. The aforementioned storage medium includes a ROM, a random access memory (RAM), a magnetic disk, or an optical disk, and the like.
Claims
1. An application switching method, characterized in that: include: In response to an operation of launching a first application on the desktop, playing a first startup animation effect of the first application in a startup window; During the playing of the first startup animation effect, in response to a touch operation on the icon position of the second application on the desktop, the first startup animation effect is ended and the transition animation effect is started; After playing the transition animation, the interactive interface of the second application is displayed in full screen.
2. The method according to claim 1, characterized in that During the process of playing the first startup animation effect of the first application in the startup window, the startup window is gradually enlarged; In a case where the second application is a portrait application, the step of ending the first startup animation and starting to play the transition animation in response to a touch operation on the icon position of the second application on the desktop during the playing of the first startup animation specifically includes: During the playing of the first startup animation effect, in response to a touch operation on the desktop at a position of an icon of the second application outside the coverage of the startup window, the first startup animation effect continues to play; After the transition animation is prepared, stop playing the first startup animation, keep the window of the last frame of the first startup animation, gradually translate the window of the last frame of the first startup animation from inside the screen to outside the screen, and gradually translate the window of the second application from outside the screen to inside the screen in the same direction, and gradually enlarge it during the translation process until it fills the entire screen.
3. The method according to claim 1, characterized in that During the process of playing the first startup animation effect of the first application in the startup window, the startup window is gradually enlarged; In a case where the second application is a landscape application, the step of ending the first startup animation and starting to play the transition animation in response to a touch operation on the icon position of the second application on the desktop during the playing of the first startup animation specifically includes: During the playing of the first startup animation effect, in response to a touch operation on the desktop at a position of an icon of the second application outside the coverage of the startup window, the first startup animation effect continues to play; After the transition animation is prepared, stop playing the first startup animation, keep the window of the last frame of the first startup animation, gradually translate the window of the last frame of the first startup animation from the top of the screen to outside the screen, and gradually translate the window of the second application from the bottom of the screen to the inside of the screen in the same direction, and gradually enlarge it during the translation process until it fills the entire screen.
4. The method according to claim 2 or 3, characterized in that The initial size of the window of the second application is the same as the size of the window of the last frame.
5. The method according to any one of claims 1 to 4, characterized in that The step of responding to a touch operation on the icon position of the second application on the desktop during the playing of the first startup animation effect specifically includes: After receiving a click event on the screen at the icon location of the second application, determining whether the click event meets the additional click launch scenario based on preset scenario rules; the preset scenario rules include: the click event is during the launch animation period, the click coordinates are not covered by the launch window, and the click event is not a gesture hotspot event; When it is determined that the click event meets the additional click startup scenario, the click event is transmitted to the icon position of the second application on the desktop, and a click operation on the icon of the second application in the additional click startup scenario is responded to, and the click operation is a touch operation.
6. The method according to any one of claims 1 to 4, characterized in that The step of responding to a touch operation on the icon of the second application on the desktop during the playback of the first startup animation effect specifically includes: During the playback of the first startup animation, when a preset transparent transmission operation is received for the icon position of the second application covered by the startup window, it is determined that the current scenario is an additional click startup scenario, and the startup operation of the second application in the additional click startup scenario is responded to. The preset transparent transmission operation is a touch operation different from the click operation.
7. The method according to claim 5 or 6, characterized in that The method further comprises: During the playback of the first startup animation, the input event is monitored on the desktop through the swipe-up channel; When it is determined that the input event meets the additional click start scenario, the desktop is triggered to respond to the input event.
8. The method according to any one of claims 1 to 7, characterized in that The step of ending the first startup animation effect specifically includes: Stop the execution of the first startup animation and retain the current window state; Re-mounting the startup window layer and desktop layer of the first startup animation effect to the corresponding layer control interface; Remount these two layer control interfaces to the default display area.
9. The method according to any one of claims 1 to 8, characterized in that The method further comprises: When the first startup animation ends, the size of the last frame startup window is obtained; Determine the ratio of the size of the last frame startup window to the screen size; The ratio value is determined as a parameter value for running the transition animation effect.
10. The method according to any one of claims 1 to 9, characterized in that The method further comprises: Disable the default background settings before playing the transition effect; Set the current desktop wallpaper as the background layer for the transition effect.
11. The method according to any one of claims 1 to 10, characterized in that The method further comprises: After the transition animation is executed, reset the scene to the default value and clear the animation parameters.
12. The method according to claim 1, characterized in that The step of ending the first startup animation and starting to play the transition animation specifically includes: End the first startup animation effect and directly play the second startup animation effect of the second application as the transition animation effect.
13. An electronic device, characterized in that: The electronic device includes: one or more processors and memory; The memory is coupled to the one or more processors, and is configured to store computer program codes, where the computer program codes include computer instructions. The one or more processors call the computer instructions to enable the electronic device to execute the method according to any one of claims 1 to 12.
14. A computer program product comprising instructions, characterized in that When the computer program product is run on an electronic device, the electronic device is enabled to perform the method according to any one of claims 1 to 12.
15. A computer-readable storage medium comprising instructions, characterized in that: When the instructions are executed on an electronic device, the electronic device is caused to execute the method according to any one of claims 1 to 12.
Citation Information
Patent Citations
Display method and electronic equipment
CN115480834A
Application program starting animation playing method and electronic equipment
CN117724781A
Application switching display method and device, equipment and storage medium
CN117909011A
Application starting method and device and storage medium
CN118519730A