Application management methods and devices

By enabling focus switching and floating window launch among multiple floating windows in the Android system, the problems of low startup efficiency and poor reliability when multiple applications are open are solved, achieving stable multi-application management and improving user experience.

CN113360255BActive Publication Date: 2025-10-31BEIJING XIAOMI MOBILE SOFTWARE CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202010153448.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2020-03-06
Publication Date
2025-10-31
Estimated Expiration
2040-03-06

AI Technical Summary

Technical Problem

In Android systems, when multiple applications are launched, only one application has a Resumed state, resulting in low application startup efficiency and poor system reliability, which affects user experience.

Method used

By switching focus between multiple floating windows on a shared screen, the suspension process of applications that have lost focus is terminated, the restored state of applications that have lost focus is maintained, and applications are launched via floating windows. AMS is configured to remove restrictions on launching floating windows, and window information is obtained and updated to generate floating windows.

Benefits of technology

It improves application startup efficiency and system reliability, ensures the stable operation of multiple applications, and enhances the user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN113360255B_ABST
    Figure CN113360255B_ABST
Patent Text Reader

Abstract

This disclosure relates to an application management method and apparatus. It pertains to the field of smart terminals and addresses the problems of low application startup efficiency and low system reliability affecting user experience. The method includes: switching focus between applications launched in multiple floating windows on a shared screen based on user operations; terminating the suspension process of an application that has lost focus and maintaining the restored state of the application that has lost focus. The technical solution provided by this disclosure is applicable to application startup management on smart terminals, achieving universal multi-application floating window management that maintains the restored state of multiple applications on the system side.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of smart terminals, and more particularly to an application management method and apparatus. Background Technology

[0002] When using Android, it's common to have multiple applications running simultaneously. Generally, only one application with a focused focus has an Activity in a Resumed state, increasing the complexity of app compatibility. For example, video apps need to be adapted to start playback in the onStart state and pause playback in the onStop state. This also increases the risk of the app being killed while in a non-Resumed state. This reduces app startup efficiency and system reliability, negatively impacting user experience. Summary of the Invention

[0003] To overcome the problems existing in related technologies, this disclosure provides an application management method and apparatus.

[0004] According to a first aspect of the present disclosure, an application management method is provided, comprising:

[0005] Based on user actions, focus switching is performed between applications launched from multiple floating windows on a shared screen;

[0006] Terminate the suspension process of the application that has lost focus and maintain the resumed state of the application that has lost focus.

[0007] Preferably, before the step of switching focus between applications launched in multiple floating windows on the shared screen, the method further includes:

[0008] When it is necessary to launch the application, obtain the application's window information;

[0009] A floating window is generated based on the window information;

[0010] The application is launched via the floating window.

[0011] Preferably, the window information includes at least one or more of the following:

[0012] The position and size of the floating window on the screen.

[0013] Preferably, after the step of launching the application through the floating window, the method further includes:

[0014] Detect user actions;

[0015] Based on the user's actions, change the size of the floating window and / or change the position of the floating window.

[0016] Preferably, after the step of detecting user operation, the method further includes:

[0017] When a user operation is detected to zoom the floating window, the display ratio of the content displayed in the floating window is adjusted according to the size of the zoomed floating window.

[0018] Preferably, after the step of changing the size and / or position of the floating window according to the user operation, the method further includes:

[0019] Update the application's window information based on the user's actions.

[0020] Preferably, before the step of obtaining the application's window information when the application needs to be launched, the method further includes:

[0021] Configure the Activity Management Service (AMS) to launch any application using a floating window.

[0022] Preferably, the step of launching any application using a floating window in the AMS includes:

[0023] Control the ActivityRecord.isResizeable() and / or TaskRecord.isResizeable() functions to remove the restriction on launching the application using a floating window.

[0024] According to a second aspect of the present disclosure, an application management device is provided, comprising:

[0025] The focus switching module is used to switch the focus between applications launched from multiple floating windows on a shared screen based on user actions.

[0026] The state preservation module is used to terminate the suspension process of an application that has lost focus and maintain the restored state of the application that has lost focus.

[0027] Preferably, the device further includes:

[0028] The window information acquisition module is used to acquire the window information of the application when it is necessary to launch the application;

[0029] A floating window generation module is used to generate a floating window based on the window information;

[0030] An application launch module is used to launch the application through the floating window.

[0031] Preferably, the device further includes:

[0032] The user operation detection module is used to detect user operations;

[0033] The window adjustment module is used to change the size and / or position of the floating window based on the user's operation.

[0034] Preferably, the window information includes at least one or more of the following:

[0035] The position and size of the floating window on the screen;

[0036] The device also includes:

[0037] The window display adjustment module is used to adjust the display ratio of the content displayed in the floating window according to the size of the floating window after the user operation instruction to scale the floating window is detected.

[0038] Preferably, the device further includes:

[0039] The window information management module is used to update the application's window information based on the user's actions.

[0040] Preferably, the device further includes:

[0041] The startup configuration module is used to configure the Activity Management Service (AMS) to start any application using a floating window.

[0042] Preferably, the startup configuration module includes:

[0043] The function control unit is used to control the ActivityRecord.isResizeable() and / or TaskRecord.isResizeable() functions to remove the restriction on launching the application using a floating window.

[0044] According to a third aspect of the present disclosure, a computer apparatus is provided, comprising:

[0045] processor;

[0046] Memory used to store processor-executable instructions;

[0047] The processor is configured as follows:

[0048] Based on user actions, focus switching is performed between applications launched from multiple floating windows on a shared screen;

[0049] Terminate the suspension process of the application that has lost focus and maintain the resumed state of the application that has lost focus.

[0050] According to a fourth aspect of the present disclosure, a non-transitory computer-readable storage medium is provided, wherein when instructions in the storage medium are executed by a processor of a mobile terminal, the mobile terminal is enabled to execute an application management method, the method comprising:

[0051] Based on user actions, focus switching is performed between applications launched from multiple floating windows on a shared screen;

[0052] Terminate the suspension process of the application that has lost focus and maintain the resumed state of the application that has lost focus.

[0053] The technical solutions provided by the embodiments of this disclosure can include the following beneficial effects: based on user operations, focus switching is performed between applications launched in multiple floating windows on a shared screen, terminating the suspension process of applications that have lost focus and maintaining the restored state of the applications that have lost focus. Maintaining the restored state of multiple applications on the system side ensures stable application operation, improves the priority of application launch, and solves the problem of low application launch efficiency and low system reliability affecting user experience.

[0054] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and are not intended to limit this disclosure. Attached Figure Description

[0055] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with the invention and, together with the description, serve to explain the principles of the invention.

[0056] Figure 1 This is a flowchart illustrating an application management method according to an exemplary embodiment.

[0057] Figure 2 This is a flowchart illustrating an application management method according to an exemplary embodiment.

[0058] Figure 3 This is a schematic diagram illustrating the display effect of a floating window in portrait mode according to an exemplary embodiment.

[0059] Figure 4 This is a schematic diagram illustrating the display effect of a hidden floating window in landscape mode according to an exemplary embodiment.

[0060] Figure 5 This is a flowchart illustrating an application management method according to an exemplary embodiment.

[0061] Figure 6 This is a block diagram illustrating an application management device according to an exemplary embodiment.

[0062] Figure 7 This is a block diagram illustrating an application management device according to an exemplary embodiment.

[0063] Figure 8 This is a schematic diagram of the startup configuration module 1410 according to an exemplary embodiment.

[0064] Figure 9 This is a block diagram (general structure of a mobile terminal) illustrating an apparatus according to an exemplary embodiment. Detailed Implementation

[0065] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numerals in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present invention. Rather, they are merely examples of apparatuses and methods consistent with some aspects of the invention as detailed in the appended claims.

[0066] When using Android, it's common to have multiple applications running simultaneously. Generally, only one application with focus has an Activity in the Resumed state, increasing the likelihood of the application being killed due to compatibility issues. For example, video applications need to be adapted to start playback in the onStart state and pause playback in the onStop state. This also increases the risk of the application being killed while in a non-Resumed state.

[0067] The floating window application launch solution still has many problems such as numerous adaptation limitations, limited movement range, and display ratio imbalance, which affect the user experience.

[0068] To address the aforementioned issues, embodiments of this disclosure provide an application management method and apparatus that solves the problems of floating window application launch schemes, which also suffer from numerous adaptation limitations, limited movement range, and display ratio imbalances, thereby achieving efficient and stable multi-floating window application management.

[0069] An exemplary embodiment of this disclosure provides an application management method, which completes the application startup process as follows: Figure 1 As shown, it includes:

[0070] Step 101: Based on user actions, switch focus between applications launched in multiple floating windows on the shared screen.

[0071] In this embodiment of the invention, the system supports launching applications via floating windows and sharing screen display with multiple floating windows.

[0072] In this step, based on the user's selection, focus can be switched between multiple applications sharing the screen to select the currently used application.

[0073] Step 102: Terminate the suspension process of the application that has lost focus and maintain the restored state of the application that has lost focus.

[0074] When a focus switch occurs, the application that gains focus enters a restored state (such as the Resumed state), while the application that loses focus will initiate a suspension process to enter a suspended state (such as the Paused state).

[0075] This step, by terminating the suspension process, keeps the application that is pushing the focus in a restored state, preventing situations such as applications switched to a suspended state being unexpectedly terminated. This invention improves the efficiency of application focus switching, ensures application operation in multi-window mode, and enhances the user experience.

[0076] In this embodiment of the invention, multiple applications can be launched through multiple floating windows. When managing multiple floating windows, the application that has the focus active can also be put into a Resumed state to ensure fast response when switching applications and to prevent the application process from being mistakenly killed.

[0077] For example, when the focus changes, calling `ActivityStack.resumeTopActivityInnerLocked` will change the application activity that has gained focus to the `Resumed` state, while the activity that has lost focus will change to the `Paused` state. In this case, the application management method provided in this embodiment of the invention can exit the `Pause` process of the floating window in `ActivityStackSupervisor`, thus enabling multiple Activities to have a `Resumed` state simultaneously.

[0078] An exemplary embodiment of this disclosure also provides an application management method, which completes the application startup process as follows: Figure 2 As shown, it includes:

[0079] Step 201: Configure AMS to launch any application using a floating window.

[0080] In this step, AMS is configured to launch applications using a floating window. For example, when launching an application using a floating window, the restrictions on the ActivityRecord.isResizeable() and TaskRecord.isResizeable() configuration items are lifted when AMS retrieves the task location. This allows all applications to launch via a floating window without requiring separate floating window adaptations for different applications, saving system resources and improving application launch efficiency.

[0081] Preferably, the landscape and portrait positions of each Task are maintained independently in TaskReord, and the storage position and size in TaskReord are updated after the task is moved.

[0082] Step 202: When it is necessary to launch the application, obtain the window information of the application.

[0083] When launching an application on a terminal using an operating system such as Android by clicking a shortcut icon, the first step is to obtain the window information corresponding to that application.

[0084] The window information includes at least one or more of the following:

[0085] The position and size of the floating window on the screen.

[0086] Based on the window information, you can confirm the position and size of the floating window used after the application starts.

[0087] The window information can be configured based on the user's operation when launching the application previously. When launching the application as a floating window, the position and size adjusted during the last launch are read to make it convenient for the user to open the application using the floating window in their preferred position.

[0088] If no saved window information exists, a default window information can be built into the system and used.

[0089] For example, in the Android system, the window configuration information is as follows: At startup, hide the status bar and navigation bar in `layoutWindow` and `relayoutWindow`, and in the `TaskPositioner` responsible for movement handling, set the floating window's movement range so that its top, bottom, left, and right boundaries do not exceed the screen boundaries in portrait mode, and its top, left, and right boundaries do not exceed the screen boundaries in landscape mode. Figure 3 The image shows a schematic diagram of the floating window display effect in portrait mode. Figure 4 This is a diagram illustrating the display effect of hiding the floating window in landscape mode.

[0090] Step 203: Generate a floating window based on the window information.

[0091] In this step, a floating window of the appropriate size is generated at the corresponding location based on the window information.

[0092] Step 204: Launch the application through the floating window.

[0093] After launching the application via the floating window, you can then use methods such as... Figure 1The process shown manages applications launched with multiple floating windows, ensuring that all floating windows remain in the Resumed state when multiple floating windows are displayed.

[0094] An exemplary embodiment of this disclosure also provides an application management method, which allows for further operations on the floating window after the application is launched via a floating window. The specific process is as follows: Figure 5 As shown, it includes:

[0095] Step 1101: Detect user actions.

[0096] In this step, users can interact with a selected floating window using methods such as touch blocking or button input. For example, they can zoom in or out. The system detects the user's actions.

[0097] Step 1102: Based on the user's operation, change the size of the floating window and / or change the position of the floating window.

[0098] Step 1103: When a user operation instruction is detected to scale the floating window, adjust the display ratio of the content displayed in the floating window according to the size of the scaled floating window.

[0099] In this step, user actions cause changes to the window, especially zooming, which changes the size and shape of the floating window's display area. Therefore, it is necessary to adjust the display ratio of the content.

[0100] For example, when a user shrinks the floating window, the display area of ​​the floating window is reduced by shrinking it twice, which also reduces the proportion of the displayed content.

[0101] Specifically, when launching the floating window for the first time: in portrait mode, set the width of the floating window to be the same as the shorter side of the screen, and scale the height of the floating window according to the aspect ratio of 4:3. In landscape mode, set the height of the floating window to the length of the shorter side of the screen divided by 0.75, and scale the width according to the aspect ratio of 0.75. This reduces the display area of ​​the floating window content.

[0102] The second scaling is performed in SurfaceFlinger, which is responsible for the display. This is done by setting the mGlobalScale of the floating window to 0.75 when the floating window is launched, thus reducing the display content ratio.

[0103] Step 1104: Update the application's window information based on the user's operation.

[0104] In this step, preferably, after the user performs an operation on the position and / or size of the floating window, the window information can be updated based on the operation result to retain the user's usage habits. The next time the application is launched, the floating window is displayed in the position and size previously used by the user, based on the window information generated by the previous operation, ensuring a consistent user experience.

[0105] An exemplary embodiment of this disclosure also provides an application management device, the structure of which is as follows: Figure 6 As shown, it includes:

[0106] The focus switching module 1401 is used to switch the focus between applications launched from multiple floating windows on a shared screen based on user operations.

[0107] The state preservation module 1402 is used to terminate the suspension process of the application that has lost focus and maintain the restored state of the application that has lost focus.

[0108] Preferably, the structure of the device is as follows: Figure 7 As shown, it also includes:

[0109] The window information acquisition module 1403 is used to acquire the window information of the application when it is necessary to launch the application;

[0110] The floating window generation module 1404 is used to generate a floating window based on the window information.

[0111] Application launch module 1405 is used to launch the application through the floating window.

[0112] Preferably, the device further includes:

[0113] User operation detection module 1406 is used to detect user operations;

[0114] The window adjustment module 1407 is used to change the size of the floating window and / or change the position of the floating window according to the user operation.

[0115] Preferably, the window information includes at least one or more of the following:

[0116] The position and size of the floating window on the screen;

[0117] The device also includes:

[0118] The window display adjustment module 1408 is used to adjust the display ratio of the content displayed in the floating window according to the size of the floating window after the user operation instruction to scale the floating window is detected.

[0119] Preferably, the device further includes:

[0120] The window information management module 1409 is used to update the window information of the application based on the user's operation.

[0121] Preferably, the device further includes:

[0122] The startup configuration module 1410 is used to configure the Activity Management Service (AMS) to start the application using a floating window.

[0123] Preferably, the structure of the startup configuration module 1410 is as follows: Figure 8 As shown, it includes:

[0124] The function control unit 1601 is used to control the ActivityRecord.isResizeable() and / or TaskRecord.isResizeable() functions to remove the restriction on the application launching with a floating window.

[0125] The aforementioned application management device can be integrated into smart terminals such as mobile phones, allowing the smart terminal to implement the corresponding functions. Regarding the device in the above embodiments, the specific methods by which each module performs its operations have been described in detail in the embodiments related to the method, and will not be elaborated upon here.

[0126] An exemplary embodiment of this disclosure also provides a computer apparatus, including:

[0127] processor;

[0128] Memory used to store processor-executable instructions;

[0129] The processor is configured as follows:

[0130] Based on user actions, focus switching is performed between applications launched from multiple floating windows on a shared screen;

[0131] Terminate the suspension process of the application that has lost focus and maintain the resumed state of the application that has lost focus.

[0132] Figure 9 This is a block diagram illustrating an application management device 1700 according to an exemplary embodiment. For example, device 1700 may be a mobile phone, computer, digital broadcasting terminal, messaging device, game console, tablet device, medical device, fitness equipment, personal digital assistant, etc.

[0133] Reference Figure 9The device 1700 may include one or more of the following components: a processing component 1702, a memory 1704, a power component 1706, a multimedia component 1708, an audio component 1710, an input / output (I / O) interface 1712, a sensor component 1714, and a communication component 1716.

[0134] Processing component 1702 typically controls the overall operation of device 1700, such as operations associated with display, telephone calls, data communication, camera operation, and recording operations. Processing component 1702 may include one or more processors 1720 to execute instructions to perform all or part of the steps of the methods described above. Furthermore, processing component 1702 may include one or more modules to facilitate interaction between processing component 1702 and other components. For example, processing component 1702 may include a multimedia module to facilitate interaction between multimedia component 1708 and processing component 1702.

[0135] Memory 1704 is configured to store various types of data to support the operation of device 1700. Examples of this data include instructions for any application or method operating on device 1700, contact data, phonebook data, messages, pictures, videos, etc. Memory 1704 can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk, or optical disk.

[0136] Power component 1706 provides power to various components of device 1700. Power component 1706 may include a power management system, one or more power sources, and other components associated with generating, managing, and distributing power to device 1700.

[0137] Multimedia component 1708 includes a screen that provides an output interface between the device 1700 and the user. In some embodiments, the screen may include a liquid crystal display (LCD) and a touch panel (TP). If the screen includes a touch panel, the screen may be implemented as a touchscreen to receive input signals from the user. The touch panel includes one or more touch sensors to sense touches, swipes, and gestures on the touch panel. The touch sensors may sense not only the boundaries of the touch or swipe action but also the duration and pressure associated with the touch or swipe operation. In some embodiments, multimedia component 1708 includes a front-facing camera and / or a rear-facing camera. When the device 1700 is in an operating mode, such as a shooting mode or a video mode, the front-facing camera and / or the rear-facing camera may receive external multimedia data. Each front-facing camera and rear-facing camera may be a fixed optical lens system or have focal length and optical zoom capabilities.

[0138] Audio component 1710 is configured to output and / or input audio signals. For example, audio component 1710 includes a microphone (MIC) configured to receive external audio signals when device 1700 is in an operating mode, such as call mode, recording mode, and voice recognition mode. The received audio signals may be further stored in memory 1704 or transmitted via communication component 1716. In some embodiments, audio component 1710 also includes a speaker for outputting audio signals.

[0139] I / O interface 1712 provides an interface between processing component 1702 and peripheral interface modules, such as keyboards, click wheels, buttons, etc. These buttons may include, but are not limited to, home buttons, volume buttons, power buttons, and lock buttons.

[0140] Sensor assembly 1714 includes one or more sensors for providing status assessments of various aspects of device 1700. For example, sensor assembly 1714 may detect the on / off state of device 1700, the relative positioning of components such as the display and keypad of device 1700, changes in the position of device 1700 or a component of device 1700, the presence or absence of user contact with device 1700, the orientation or acceleration / deceleration of device 1700, and temperature changes of device 1700. Sensor assembly 1714 may include a proximity sensor configured to detect the presence of nearby objects without any physical contact. Sensor assembly 1714 may also include a light sensor, such as a CMOS or CCD image sensor, for use in imaging applications. In some embodiments, sensor assembly 1714 may also include an accelerometer, a gyroscope, a magnetometer, a pressure sensor, or a temperature sensor.

[0141] Communication component 1716 is configured to facilitate wired or wireless communication between device 1700 and other devices. Device 1700 can access wireless networks based on communication standards, such as WiFi, 2G, or 3G, or combinations thereof. In one exemplary embodiment, communication component 1716 receives broadcast signals or broadcast-related information from an external broadcast management system via a broadcast channel. In one exemplary embodiment, communication component 1716 also includes a near-field communication (NFC) module to facilitate short-range communication. For example, the NFC module may be implemented based on radio frequency identification (RFID) technology, Infrared Data Association (IrDA) technology, ultra-wideband (UWB) technology, Bluetooth (BT) technology, and other technologies.

[0142] In an exemplary embodiment, the apparatus 1700 may be implemented by one or more application-specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field-programmable gate arrays (FPGAs), controllers, microcontrollers, microprocessors, or other electronic components to perform the methods described above.

[0143] In an exemplary embodiment, a non-transitory computer-readable storage medium including instructions is also provided, such as a memory 1704 including instructions, which can be executed by a processor 1720 of the device 1700 to perform the above-described method. For example, the non-transitory computer-readable storage medium may be a ROM, random access memory (RAM), CD-ROM, magnetic tape, floppy disk, and optical data storage device, etc.

[0144] A non-transitory computer-readable storage medium, when instructions in the storage medium are executed by a processor of a mobile terminal, enables the mobile terminal to execute an application management method, the method comprising:

[0145] Based on user actions, focus switching is performed between applications launched from multiple floating windows on a shared screen;

[0146] Terminate the suspension process of the application that has lost focus and maintain the resumed state of the application that has lost focus.

[0147] Embodiments of this disclosure provide an application management method and apparatus that, based on user operations, switches focus among multiple applications launched from floating windows on a shared screen, terminates the suspension process of applications that have lost focus, and maintains the restored state of the applications that have lost focus. Maintaining the restored state of multiple applications on the system side ensures stable application operation, improves application launch priority, and solves the problems of low application launch efficiency and low system reliability affecting user experience.

[0148] When an application needs to be launched, the window information of the application is obtained, a floating window is generated based on the window information, and the application is launched through the floating window. This provides a universal, adaptation-free floating window application launch mechanism, solving problems such as numerous adaptation limitations, limited movement range, and display ratio inconsistencies associated with traditional floating window application launch schemes.

[0149] The window information is updated based on user habits, and the system launches the next time based on the user's previous usage, thus improving the user experience.

[0150] Thanks to the highly adaptable floating window launch solution, it can support multiple floating window displays for multiple applications, manage between applications, and keep all application activities inside and outside the focus in a restored state, reducing adaptation costs and the risk of application termination in a non-restored state.

[0151] Other embodiments of the invention will readily occur to those skilled in the art upon consideration of the specification and practice of the invention disclosed herein. This application is intended to cover any variations, uses, or adaptations of the invention that follow the general principles of the invention and include common knowledge or customary techniques in the art not disclosed herein. The specification and examples are to be considered exemplary only, and the true scope and spirit of the invention are indicated by the following claims.

[0152] It should be understood that the present invention is not limited to the precise structure described above and shown in the accompanying drawings, and various modifications and changes can be made without departing from its scope. The scope of the invention is limited only by the appended claims.

Claims

1. An application management method, characterized in that, include: Based on user actions, focus switching is performed between applications launched from multiple floating windows on a shared screen; Terminate the suspension process of the application that has lost focus and maintain the resumed state of the application that has lost focus; In this process, the application that loses focus runs and is displayed in one of the multiple floating windows, while the application that gains focus runs and is displayed in another of the multiple floating windows, so that when multiple floating windows are displayed, the applications that lose focus in the multiple floating windows are kept in a restored state. Prior to the step of switching focus between applications launched in multiple floating windows on a shared screen, the method further includes: When it is necessary to launch an application, the window information of the application is obtained. Based on the window information, the position and size of the floating window used after the application is launched can be determined. A floating window is generated based on the window information; The application is launched via the floating window; Before the step of obtaining the application's window information when the application needs to be launched, the method further includes: Configure the Activity Management Service (AMS) to launch any application using a floating window.

2. The application management method according to claim 1, characterized in that, The window information includes at least one or more of the following: The position and size of the floating window on the screen.

3. The application management method according to claim 1, characterized in that, After the step of launching the application through the floating window, the method further includes: Detect user actions; Based on the user's actions, change the size of the floating window and / or change the position of the floating window.

4. The application management method according to claim 3, characterized in that, Following the step of detecting user actions, the method further includes: When a user operation is detected to zoom the floating window, the display ratio of the content displayed in the floating window is adjusted according to the size of the zoomed floating window.

5. The application management method according to claim 3, characterized in that, After the step of changing the size and / or position of the floating window according to the user operation, the method further includes: Update the application's window information based on the user's actions.

6. The application management method according to claim 1, characterized in that, The steps for launching any application using a floating window in AMS include: Control the ActivityRecord.isResizeable() and / or TaskRecord.isResizeable() functions to remove the restriction on launching the application using a floating window.

7. An application management device, characterized in that, include: The focus switching module is used to switch the focus between applications launched from multiple floating windows on a shared screen based on user actions. The state preservation module is used to terminate the suspension process of an application that has lost focus and maintain the restored state of the application that has lost focus. In this process, the application that loses focus runs and is displayed in one of the multiple floating windows, while the application that gains focus runs and is displayed in another of the multiple floating windows, so that when multiple floating windows are displayed, the applications that lose focus in the multiple floating windows are kept in a restored state. The device also includes: The window information acquisition module is used to acquire the window information of the application when it is necessary to launch the application. Based on the window information, the position and size of the floating window used after the application is launched can be determined. A floating window generation module is used to generate a floating window based on the window information; An application launch module is used to launch the application through the floating window; The device also includes: The startup configuration module is used to configure the Activity Management Service (AMS) to start any application using a floating window.

8. The application management device according to claim 7, characterized in that, The device also includes: The user operation detection module is used to detect user operations; The window adjustment module is used to change the size and / or position of the floating window based on the user's operation.

9. The application management device according to claim 7, characterized in that, The window information includes at least one or more of the following: The position and size of the floating window on the screen; The device also includes: The window display adjustment module is used to adjust the display ratio of the content displayed in the floating window according to the size of the floating window after the user operation instruction to scale the floating window is detected.

10. The application management device according to claim 9, characterized in that, The device also includes: The window information management module is used to update the application's window information based on the user's actions.

11. The application management device according to claim 7, characterized in that, The startup configuration module includes: The function control unit is used to control the ActivityRecord.isResizeable() and / or TaskRecord.isResizeable() functions to remove the restriction on launching the application using a floating window.

12. A computer device, characterized in that, include: processor; Memory used to store processor-executable instructions; The processor is configured as follows: Based on user actions, focus switching is performed between applications launched from multiple floating windows on a shared screen; Terminate the suspension process of the application that has lost focus and maintain the resumed state of the application that has lost focus; In this process, the application that loses focus runs and is displayed in one of the multiple floating windows, while the application that gains focus runs and is displayed in another of the multiple floating windows, so that when multiple floating windows are displayed, the applications that lose focus in the multiple floating windows are kept in a restored state. Prior to the step of switching focus between applications launched in multiple floating windows on a shared screen, the method further includes: When it is necessary to launch an application, the window information of the application is obtained. Based on the window information, the position and size of the floating window used after the application is launched can be determined. A floating window is generated based on the window information; The application is launched via the floating window; Before the step of obtaining the application's window information when the application needs to be launched, the method further includes: Configure the Activity Management Service (AMS) to launch any application using a floating window.

13. A non-transitory computer-readable storage medium, wherein when instructions in the storage medium are executed by a processor of a mobile terminal, the mobile terminal is enabled to execute an application management method, the method comprising: Based on user actions, focus switching is performed between applications launched from multiple floating windows on a shared screen; Terminate the suspension process of the application that has lost focus and maintain the resumed state of the application that has lost focus; In this process, the application that loses focus runs and is displayed in one of the multiple floating windows, while the application that gains focus runs and is displayed in another of the multiple floating windows, so that when multiple floating windows are displayed, the applications that lose focus in the multiple floating windows are kept in a restored state. Prior to the step of switching focus between applications launched in multiple floating windows on a shared screen, the method further includes: When it is necessary to launch an application, the window information of the application is obtained. Based on the window information, the position and size of the floating window used after the application is launched can be determined. A floating window is generated based on the window information; The application is launched via the floating window; Before the step of obtaining the application's window information when the application needs to be launched, the method further includes: Configure the Activity Management Service (AMS) to launch any application using a floating window.

Citation Information

Patent Citations

  • Device and method for switching background programs

    CN105700776A

  • Application running state control method and mobile terminal

    CN108200278A

  • Android-based floating video playing method

    CN108366301A