WO2019233241A1 - Method and apparatus for starting application program, and storage medium and terminal - Google Patents

Method and apparatus for starting application program, and storage medium and terminal Download PDF

Info

Publication number
WO2019233241A1
WO2019233241A1 PCT/CN2019/086121 CN2019086121W WO2019233241A1 WO 2019233241 A1 WO2019233241 A1 WO 2019233241A1 CN 2019086121 W CN2019086121 W CN 2019086121W WO 2019233241 A1 WO2019233241 A1 WO 2019233241A1
Authority
WO
WIPO (PCT)
Prior art keywords
application
preloaded
configuration information
interface
target
Prior art date
Application number
PCT/CN2019/086121
Other languages
French (fr)
Chinese (zh)
Inventor
韩世广
陈岩
Original Assignee
Oppo广东移动通信有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority to CN201810574498.0 priority Critical
Priority to CN201810574498.0A priority patent/CN108958830A/en
Application filed by Oppo广东移动通信有限公司 filed Critical Oppo广东移动通信有限公司
Publication of WO2019233241A1 publication Critical patent/WO2019233241A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading

Abstract

Disclosed are a method and apparatus for starting an application program, and a storage medium and a terminal. The method comprises: when it is detected that an application preload event is triggered, determining the application program to be preloaded; preloading the application program to be preloaded; when a start instruction of a target application program included in the application program to be preloaded is received, determining whether preloaded first configuration information corresponding to the target application program is the same as second configuration information of a current display interface; and in response to a determination result that the first configuration information is not the same as the second configuration information, prohibiting an update operation on the first configuration information, and starting the target application program on the basis of said first configuration information.

Description

Application program starting method, device, storage medium and terminal

The present disclosure claims the priority of a Chinese patent application filed with the Chinese Patent Office on June 06, 2018 with application number 201810574498.0, the entire contents of which are incorporated herein by reference.

Technical field

The embodiments of the present application relate to the technical field of application preloading, for example, to a method, a device, a storage medium, and a terminal for starting an application.

Background technique

Terminals such as smartphones, tablets, laptops, and smart home appliances have become essential electronic devices in people's daily lives. With the continuous intelligentization of terminal devices, most terminal devices are loaded with operating systems, enabling terminal devices to install a variety of applications to meet different needs of users.

With the continuous improvement of the configuration of terminal devices, dozens or even hundreds of applications can be installed in most terminal devices, and as the functions of applications become more and more abundant, more resources need to be loaded when the applications run. When the user chooses to start an application, the terminal will load the resources required for the application to start. After loading, the initial interface of the application is entered. The entire process usually takes several seconds or even ten seconds, resulting in the application. The start-up efficiency of the program is low and urgently needs improvement.

Summary of the Invention

The embodiments of the present application provide a method, a device, a storage medium, and a terminal for starting an application program, which can optimize a startup solution for a pre-loaded application program in the terminal.

In a first aspect, an embodiment of the present application provides a method for starting an application, including:

Determine the application to be preloaded when it is detected that the application preload event is triggered;

Preloading the application to be preloaded;

When receiving the start instruction of the target application included in the application to be preloaded, determine whether the pre-loaded first configuration information corresponding to the target application is the same as the second configuration information of the current display interface ;

In response to a determination result that the first configuration information is different from the second configuration information, an update operation on the first configuration information is prohibited, and the target application program is started based on the first configuration information.

In a second aspect, an embodiment of the present application provides an apparatus for starting an application program, including:

An application determining module, configured to determine an application to be preloaded when an application preload event is detected to be triggered;

An application preloading module configured to preload the application to be preloaded;

The configuration information judging module is configured to judge the first pre-loaded first configuration information corresponding to the target application and the current display interface when a startup instruction of the target application included in the application to be preloaded is received. Whether the second configuration information is the same;

The first application startup module is configured to, in response to a determination result that the first configuration information is different from the second configuration information, prohibit an update operation of the first configuration information, and start an application based on the first configuration information The target application is described.

In a third aspect, an embodiment of the present application provides a computer-readable storage medium on which a computer program is stored. When the program is executed by a processor, the method for starting an application according to the first aspect of the embodiment of the present application is implemented.

In a fourth aspect, an embodiment of the present application provides a terminal, including a memory, a processor, and a computer program stored in the memory and executable by the processor. When the processor executes the computer program, the implementation is implemented as in the embodiment of the present application. The application startup method described in the first aspect.

In the application startup solution provided in the embodiment of the present application, when an application preload event is detected to be triggered, an application to be preloaded is determined, and the application to be preloaded is preloaded. When the application to be preloaded is received, In the case of the start instruction of the target application contained in the target application, determine whether the pre-loaded first configuration information corresponding to the target application is the same as the second configuration information of the current display interface, and respond to the first configuration information and the second configuration information. Different judgment results prohibit the update operation of the first configuration information, and start the target application based on the first configuration information. By adopting the above technical solution, the difference between the first configuration information corresponding to the pre-loaded target application and the second configuration information of the current display interface can effectively solve the slow startup speed and the stuck card of the pre-loaded target application. This problem can effectively improve the startup speed of the application to be preloaded.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic flowchart of an application startup method according to an embodiment of the present application; FIG.

2 is a schematic diagram of a relative position relationship between a preloaded active window stack and a display screen display area according to an embodiment of the present application;

3 is a schematic diagram of a relative position relationship between another preloaded active window stack and a display screen display area according to an embodiment of the present application;

4 is a schematic diagram of application interface migration provided by an embodiment of the present application;

FIG. 5 is a schematic flowchart of another application startup method according to an embodiment of the present application; FIG.

FIG. 6 is a schematic flowchart of another application startup method according to an embodiment of the present application; FIG.

7 is a schematic structural diagram of an application program startup device according to an embodiment of the present application;

8 is a schematic structural diagram of a terminal according to an embodiment of the present application;

FIG. 9 is a schematic structural diagram of another terminal according to an embodiment of the present application.

Detailed ways

The technical solutions of the present application will be further described below with reference to the accompanying drawings and specific embodiments. It can be understood that the specific embodiments described herein are only used to explain the present application, rather than limiting the present application. It should also be noted that, for convenience of description, the drawings only show a part of the structure related to the present application, but not the entire structure.

FIG. 1 is a schematic flowchart of an application startup method provided by an embodiment of the present application. The method may be executed by an application startup device, where the device may be implemented by software and / or hardware, and may generally be integrated in a terminal. As shown in Figure 1, the method includes:

Step 1010: In a case where it is detected that an application preload event is triggered, determine an application to be preloaded.

Exemplarily, the terminal in the embodiments of the present application may include terminal devices such as a mobile phone, a tablet computer, a notebook computer, and smart home appliances. The terminal is loaded with an operating system.

Exemplarily, the triggering condition of the application preload event can be set according to the actual situation, which is not specifically limited in the embodiment of the present application. For example, an application preload event can be triggered when it is detected that the user's actions meet a preset condition (such as picking up the terminal, entering a screen to unlock an operation, or inputting a terminal to unlock an operation, etc.); or it can detect a change in the foreground application In the case of an application, the application preload event is triggered; or the application preload event can be triggered immediately (or after a preset time period has elapsed) after the prediction process of the preloaded application ends; or it can be triggered at regular intervals and so on. After the application preload event is triggered, the system can detect that the application preload event has been triggered by reading a flag bit or receiving a trigger instruction, and the specific detection method is not limited in this embodiment of the present application.

Exemplarily, the application to be preloaded can be understood as an application that a user may be about to open, which can be a fixed application that is set in advance, or an application that is predicted in a certain manner, and the like. The applications to be preloaded may include one or more.

In one embodiment, a prediction model may be used to predict the pre-loaded application. The prediction model can be a machine learning model. The algorithms used can include Recurrent Neural Networks (RNN), Long Short-Term Memory (LSTM) networks, threshold recurring units, simple recurring units, simple recurring units, and automatic encoding. , Decision tree, random forest, feature mean classification, classification regression tree, hidden Markov, K-NearestNeighbor (KNN) algorithm, logistic regression model, Bayesian model, Gaussian model, and KL divergence (Kullback – Leibler divergence) and so on.

In an embodiment, during the process of using the terminal by the user, training samples may be collected, and the preset initial model may be trained by using the training samples, and finally a prediction model for predicting the application to be preloaded may be obtained. Exemplarily, the elements included in the training sample may include a time series or sequence sequence in which the application is opened; may include the time, place, and frequency of the application being opened; and may include a running state of the terminal, such as a switch of a mobile data network Status, the connection status of the wireless hotspot, the identity information of the connected wireless hotspot, the currently running application, the previous foreground application, the length of time the current application stays in the background, the time when the current application was last switched to the background, The plugging and unplugging status, charging status, battery power information, and screen display duration of the headphone jack; it can also include data collected by sensors integrated in the terminal, such as motion sensors, light sensors, temperature sensors, and humidity sensors.

Exemplarily, an appropriate sample element can be selected according to the selected machine learning model, and the selected machine learning model can be determined according to the selected sample element. It can also be combined with the requirements of prediction accuracy and preset speed. The selection of models and sample elements is not limited in the embodiments of the present application.

In the embodiment of the present application, determining the application to be preloaded may include determining the application to be preloaded according to the output result before the prediction model, or may include performing prediction using the prediction model to determine the current output result of the prediction model to determine the application to be preloaded. .

In the embodiment of the present application, when there are multiple (N) applications to be preloaded, the prediction model may output the startup probability of each candidate application set in the candidate application set, and determine the candidate application with a higher startup probability as the standby application. Preload the application. In an embodiment, the determining an application to be preloaded includes: predicting a startup probability of a candidate application; and determining a preset number of candidate applications with a high startup probability as the application to be preloaded. Exemplarily, the candidate applications may include all applications installed in the terminal, and may also include some applications. Some applications may not include system applications or applications that are rarely used by users. This embodiment of the present application does not limit the manner and quantity of candidate application programs. In an embodiment, the candidate applications can be determined according to the number of times and / or the duration of use of multiple applications in a preset period before the current time. The preset period is, for example, one month. When the corresponding threshold is exceeded, the corresponding application is determined as a candidate application, or multiple applications are sorted according to the number of uses and / or the duration of use, and the top-ranked application is determined as a candidate application.

Exemplarily, the prediction model described above may be used to determine the startup probability of multiple candidate applications. For example, according to the training samples during prediction model training, current samples are collected, and the current samples are input into the prediction model to obtain the startup probability of multiple candidate applications. The startup probability can be sorted from high to low, and the candidate N applications (N is a preset value) are determined as the applications to be loaded. The advantage of this setting is that multiple applications can be preloaded, and these multiple applications are determined based on the startup probability, which can improve the accuracy of the prediction.

Step 1020: Preload the application program to be preloaded.

In the embodiment of the present application, when there is only one application to be preloaded, there is no need to consider the preloading order of the applications; and when there are multiple applications to be preloaded, the multiple applications to be preloaded may be determined one by one as the current one. Applications to be preloaded, and preloading operations are performed in sequence. It is also possible to determine more than two applications to be preloaded as the current to be preloaded applications, and perform preloading operations at the same time, that is, preloading of multiple applications. The loading process can be performed in parallel.

In the embodiment of the present application, the specific process of preloading and the loaded resources are not limited. For example, corresponding hardware resources can be allocated to the application to be preloaded, and related data required for startup can be loaded based on the allocated hardware resources. Exemplarily, it may include application configuration information, application process startup, application service startup, memory allocation, file content reading, network data acquisition, and interface rendering. In addition, pre-loaded resources can be determined according to the specific type of application to be pre-loaded. For example, if the application to be preloaded is a social software, the startup screen, contact list, and recent message records in the application can be preloaded; if the application to be preloaded is a game, the application can be preloaded Game background related data.

Step 1030: In a case where a start instruction of the target application included in the application to be preloaded is received, determine the first preloaded configuration information corresponding to the target application and the second configuration of the current display interface. The information is the same.

In the embodiment of the present application, the configuration information is mainly used to enable the application to obtain correct resources when it is started, and to ensure that the application can be displayed normally. The first configuration information may include the font scaling of the text displayed on the display interface corresponding to the target application when the target application is started, the locale of the text, the size of the display interface, the layout of the display interface on the display screen, and the display boundary, etc. A series of content. The second configuration information may include configuration information of an interface currently being displayed on the display screen of the terminal, that is, configuration information of the current display interface, where the second configuration information may also include a font scaling ratio of text displayed on the current display interface. , The locale of the text, the size of the current display interface, the layout of the current display interface on the display screen, and the display boundaries. In the related art, when a start instruction of a target application included in the application to be preloaded is received, it is determined whether the first preloaded configuration information corresponding to the target application is the same as the second configuration information of the current display interface. If the first configuration information and the second configuration information are different, the system considers that when the target application is started based on the first configuration information, the target application will display an error, and the first configuration information is updated based on the second configuration information , This is easy to cause problems such as slow startup of the target application, stall. However, in most cases, the configuration of the first configuration information and the configuration of the second configuration information are basically the same. Even if the first configuration information and the second configuration information are different, the locale of the text that appears or the layout of the display interface on the display screen are different. , And the locale of the text and the layout of the display interface on the display screen have no effect on the normal display of the application.

Therefore, when receiving the start instruction of the target application included in the application to be preloaded, it is determined whether the pre-loaded first configuration information corresponding to the target application is the same as the second configuration information of the current display interface, and Go to step 1040.

Step 1040: In response to a determination result that the first configuration information is different from the second configuration information, prohibit an update operation on the first configuration information, and start the target application program based on the first configuration information.

In the embodiment of the present application, when the pre-loaded first configuration information corresponding to the target application is different from the second configuration information of the current display interface, the update operation of the first configuration information may be prohibited, and may be directly based on the pre-loaded The loaded first configuration information starts the target application program, which can effectively solve problems such as slow startup speed and stall of the target application program.

In an embodiment, in response to a determination result that the pre-loaded first configuration information corresponding to the target application is the same as the second configuration information of the current display interface, starting the target application based on the first configuration information . The advantage of this setting is that it can effectively improve the startup speed of the application to be preloaded.

The application startup method provided in the embodiment of the present application determines an application to be preloaded when it is detected that an application preload event is triggered, and preloads the application to be preloaded, and upon receiving the application to be preloaded, In the case of a startup instruction of the target application included, it is determined whether the pre-loaded first configuration information corresponding to the target application is the same as the second configuration information of the current display interface, in response to the first configuration information being different from the second configuration information As a result of the determination, the update operation of the first configuration information is prohibited, and the target application is started based on the first configuration information. By adopting the above technical solution, the difference between the first configuration information corresponding to the pre-loaded target application and the second configuration information of the current display interface can effectively solve the problem that the startup speed of the pre-loaded target application is slow, and the card is stuck. Problems such as pause can effectively improve the startup speed of the application to be preloaded.

In some embodiments, pre-loading the application to be pre-loaded includes: pre-loading an application interface corresponding to the application to be pre-loaded based on a pre-created pre-loaded active window stack, wherein the pre-loading The boundary coordinates corresponding to the loading active window stack are outside the coordinate range of the display screen. The advantage of this setting is that pre-loading the application interface can greatly complete the preparation work before the application is started, and improve the startup speed of the application to be pre-loaded without affecting the display content of the foreground application on the display screen. On the display.

In the embodiment of the present application, the active window may be understood as an independent interface that directly provides users with interaction and operation, and different terms may be used to name the interface in different operating systems. In order to facilitate understanding, the following description is made by taking an Android operating system as an example.

In the Android system, the active window is called Activity. Activity is a component that is responsible for interacting with the user. Activity provides a screen (which can be understood as a screen interface instead of a physical display screen) for the user to interact with to complete a task. In an Android application, an Activity is usually a separate screen, which can display some controls or listen to and handle user events. In the management of Activity, there are two concepts: Task stack (Task) and activity window stack (Stack). A Task corresponds to an application. A Task is used to store Activities. A Task can store one or more Activities, and these Activities follow the "first in, first out, last in, first out" principle. Stack is also used to manage Tasks. Generally, a Stack manages Tasks that belong to multiple Activities that need to be displayed on a screen. A Stack can manage one or more Tasks. Of course, Stack also follows the basic management of the Stack. in principle. The screens described here are not necessarily complete and independent display screens. Taking "two screens" as an example, these two screens may be just two areas in a complete display screen that independently display their respective display contents. Of course, if the terminal has two or more independent display screens, the "two screens" may also be two independent display screens.

In the Android system, multi-window mode is supported, which can include split-screen mode, picture-in-picture mode, and FreeForm. In the multi-window mode, the stack where the application is located can have its own size, which can include the upper, lower, left, and right coordinates in a coordinate system with the upper left corner of the terminal screen as the origin. For example, (a, b, c, d) generally describes a rectangular boundary, which is expressed by the coordinates of the upper left corner and the lower right corner of the rectangle, that is, the upper left corner of the rectangle is (a, b), and the lower right corner The coordinates are (c, d), such a rectangular area corresponds to the size of the Stack. The layout of the application in the stack is based on the size of the stack, which means that the application interface corresponding to the activity is displayed within the boundary of the size.

In multi-window mode, you can allow multiple applications to be visible, including both system and user visible and system only visible. Both visible to the system and the user means to be displayed on the display screen and can be seen by the user; only visible to the system means that the operating system is visible and the user is not visible, which may be obscured by the application in the foreground or as implemented in this application. Show off screen.

In the embodiment of the present application, pre-loading the application interface of the application to be pre-loaded outside the display screen can be implemented based on the multi-window mechanism of the operating system, and the size corresponding to the application program is set outside the display screen through the multi-window mechanism to achieve For the purpose of being invisible to the user, so that the display content of the foreground application is not displayed on the display screen.

Generally, in the multi-window mode, there can be multiple types of stacks. For example, Home Stack represents the stack displayed by desktop applications, App Stack represents the third-party application display, and there can be other split-screen stacks. In the embodiment of the present application, a preloaded active window stack (preloaded stack) is added to indicate the stack displayed by the preloaded application, and the boundary coordinates of the preloaded stack are set outside the coordinate range of the display screen, and are to be preloaded The application can be displayed on that Stack. For the Android system, based on the multi-window mechanism of the Android system, a new Stack dedicated to displaying preloaded applications can be created. In the embodiment of the present application, a new stack is created because the newly created preloaded stack can have its own size and visibility, thereby achieving the purpose of preloading outside the display screen.

In the embodiment of the present application, the creation timing of the preloaded stack is not limited. The preloaded stack is set to the resident state by default before the terminal leaves the factory, that is, the preloaded stack always exists; the terminal can also be successfully opened when the terminal is powered on or the terminal is unlocked successfully. Create later; you can also create after the application preload event is triggered (before you determine the application to be preloaded) and so on. In an embodiment, pre-loading an application interface corresponding to the application to be pre-loaded based on a pre-created pre-loaded active window stack includes: determining whether a pre-created pre-loaded active window stack exists; and responding to the pre-created As a result of the judgment that the preloaded active window stack does not exist, a preloaded active window stack is created according to a preset rule; based on the created preloaded active window stack, an application interface corresponding to the application to be preloaded is preloaded. The advantage of this setting is that after determining the application to be preloaded, determine whether the preloaded stack exists. If the preloaded stack exists, you do not need to create a new one. If the preloaded stack does not exist, create it, which can save the system. Resources. It can be understood that when there are multiple applications to be preloaded, that is, when multiple applications need to be preloaded continuously in a short period of time, the preloading stack has been created before the first application to be preloaded starts to load. After that, the pre-loading stack exists before the second application to be pre-loaded starts to be loaded, and the above judgment may not be necessary.

In the embodiment of the present application, the specific process of preloading the application interface corresponding to the application to be preloaded based on the preloaded stack is not limited, for example, the application interface may be drawn and displayed based on the size of the preloaded stack.

In some embodiments, pre-loading an application interface corresponding to the application to be pre-loaded based on a pre-created pre-loaded active window stack includes: creating a target process corresponding to the application to be pre-loaded; A task stack corresponding to the application to be preloaded is created in a preloaded active window stack; an active window corresponding to the application to be preloaded is started in the task stack based on the target process; and drawn based on the started active window And an application interface corresponding to the application to be preloaded is displayed. The advantage of this setting is that it can draw and display the application interface of the pre-loaded application based on the pre-loaded active window stack outside the screen coordinate range, without interfering with the operation and display of the foreground application, ensuring system stability, and effective. Improves the speed at which applications to be preloaded are launched. When the target process is created, the initialization process of the target process can also be included. During the execution of the above steps, pre-loading of other resources may also be involved, such as application service startup, memory allocation, file content reading, and network data acquisition. The embodiments of this application do not limit the pre-loading process of other resources.

In some embodiments, the method further includes: sending a fake focus notification to the application to be preloaded, and maintaining a continuous drawing of an application interface corresponding to the application to be preloaded for a preset period of time based on the fake focus notification. And display updates. The advantage of this setting is that it can complete the drawing and display of the application interface when the application to be preloaded has the focus and is visible to the system, improving the completion of the preloading without affecting the focus of the foreground application. The focus in the embodiments of the present application is also referred to as input focus, and the fake focus and the focus corresponding to the foreground application are independent of each other. Generally, for the Android system, the focus is unique. For example, input operations such as touch only take effect on the focus. For the input of focus information, the system side and the application side are consistent. Once the system side modifies the input focus information, it will report to the application. Sends information that the input focus information changes, this way to ensure that the input focus information of the system and application are consistent. In the embodiment of the present application, the purpose of falsifying the focus on the application side is achieved by separating the system side and the application side from inputting focus information. In the embodiment of the present application, a fake focus notification is sent to the preloaded application program, so that the preloaded application has focus information, and the system side focus information is still correct. Such processing can enable the preloaded application to draw normally and achieve the purpose of all loading. . The focus exists on the system side and the application side. It can be considered as the server and the client. The system side records the application that has the focus, and the application side saves a flag to indicate whether it has focus. The timing of falsifying the input focus may be that when the Android window system adds a new window and the focus needs to be updated, a fake focus notification is generated and sent. The method of falsifying the focus may be a method of calling the client side of the window to change the focus of the window, so that the window acquires focus. In one embodiment, a fake focus notification can be sent based on the Binder mechanism. The Binder mechanism is the most commonly used method for inter-process communication of the Android system, and adopts a c / s architecture, that is, a client / service architecture.

In the embodiment of the present application, the preset time period may be designed according to actual conditions, for example, it may be within a fixed time range after starting preloading, or it may be a period from starting preloading to completing preloading. In some embodiments, the length of the preset time period includes a playing duration of starting an advertisement or starting an animation in the application to be preloaded. During the startup of some applications, some advertisements or animations are usually played. The duration of advertisements or animations usually ranges from 3 seconds to more than ten seconds. During the playback of advertisements or animations, users may not be able to perform any operations. Can wait for the playback to finish, wasting valuable time of the user. The advantage of this embodiment of the present application is that it can play the startup advertisement or startup animation off the screen before the application to be preloaded is launched. When the application to be preloaded is launched, it can directly enter the main page of the application or other User-operable interface, which further advances the operable time point of the application to be preloaded, reducing waiting time.

In some embodiments, the first configuration information includes an application boundary of an application interface corresponding to the target application, and the second configuration information includes a display boundary of the current display interface; determining whether the target application corresponds to Whether the pre-loaded first configuration information is the same as the second configuration information of the current display interface includes: determining an application boundary of an application interface corresponding to the target application included in a pre-loaded active window stack and a display boundary of the current display interface Is it the same.

In an embodiment, prohibiting an update operation of the first configuration information and starting the target application based on the first configuration information includes: prohibiting an update operation of an application interface corresponding to the target application, The application interface corresponding to the target application is migrated to the display screen for display based on the application boundary.

In an embodiment, prohibiting an update operation of the first configuration information and starting the target application based on the first configuration information includes: applying an application interface corresponding to the target application based on the application boundary Migrating to the display screen for display, and prohibiting an update operation of an application interface corresponding to the target application.

The advantage of this setting is that it can effectively solve the problem of updating and restarting the application interface corresponding to the target application when the application boundary corresponding to the target application is different from the display boundary of the current display interface when the preloaded application is started. , Causing the target application to be easy to black screen when starting, slow startup speed and stuttering problems, and when the target application really needs to start, directly migrate the already drawn application interface to the display screen for display, can reach the application interface Fast switching to improve startup speed.

In the embodiment of the present application, when an application interface corresponding to the application to be preloaded is preloaded based on a pre-created preloading active window stack, the first configuration information includes an application boundary of the application interface corresponding to the target application, and the second The configuration information includes the display boundaries of the current display interface. Exemplarily, the first configuration information may be expressed as: Configuration1 = {1.0460mcc1mnc [zh_CN] ldltr sw360dp w360dp h685dp 480dpi nrml long port port finger-keyb / v / h-nav / h appBounds = Rect (2280, 0, 3360, 2055 ) s.14mThemeChanged = 0mThemeChangedFlags = 0mFlipFont = 0. The second configuration information can be expressed as: Configuration = {1.0460mcc1mnc [zh_CN] ldltr sw360dp w360dp h685dp 480dpi znrml longport portfinger-keyb / v / hna (0, 0, 1080, 2136) s.14mThemeChanged = 0mThemeChangedFlags = 0mFlipFont = 0}. Among them, 1.0 fontScale indicates the font scaling ratio; 460mcc indicates the mobile country code; 1mnc indicates the mobile network code; [zh_CN] indicates the locale; ldltr indicates the layout from left to right; sw360dp indicates the minimum screen size seen by the application in normal operation. ; W360dp represents the current width of available screen space in dp; h685dp represents the current height of available screen space in dp; 480dpi represents the display screen density; nrml represents the screen size of the screen layout; long represents the screen layout; port represents Vertical screen; finger indicates the touch input method; appBounds = Rect (2280, 0, 3360, 2055) indicates the application boundary of the application interface corresponding to the target application; appBounds = Rect (0, 0, 1080, 2136) indicates the current display interface. Show boundaries. In the embodiment of the present application, after an application interface corresponding to the application to be preloaded is preloaded based on a pre-created preloading active window stack, when a start of a target application included in the application to be preloaded is received When instructing, determine whether the application boundary of the application interface corresponding to the target application included in the preloaded active window stack is the same as the display boundary of the current display interface. If the application boundary and the display boundary are different, the system will consider the target directly The migration of the application interface corresponding to the application to the display screen for display will cause the target application to display abnormally, which will cause the application interface corresponding to the target application to be updated and restarted. This will easily cause a black screen when the target application starts, resulting in a slow startup speed. And Caton. However, the application boundary in the first configuration information has no effect on the normal display of the target application. Therefore, in the embodiment of the present application, even if the application boundary in the first configuration information is different from the display boundary in the second configuration information, the update and restart operation of the application interface of the target application that has been preloaded is not performed. Wherein, the updating operation of the application interface corresponding to the target application may be prohibited first, and the application interface corresponding to the target application may be migrated to the display screen for display. The application interface corresponding to the target application may also be migrated to the display screen for display, and the update operation of the application interface corresponding to the target application may be prohibited.

In some embodiments, the migrating an application interface corresponding to the target application included in the preloaded active window stack to the display screen for display includes: The task stack corresponding to the target application is migrated to the top of the application active window stack; the size information, configuration information, and visibility of the task stack are updated to implement the application interface corresponding to the target application on the display screen display. The advantage of this setting is that it can ensure the stability of the interface migration process and ensure that no issues such as screen freezes, black screens, or slow migration speeds occur during the recovery process.

For some terminals, such as mobile terminals such as mobile phones and tablet computers, in order to facilitate the use of the user, the display mode of the display screen usually includes vertical screen display and horizontal screen display. Many applications use the vertical screen for display by default, and some applications By default, the program is displayed in landscape mode (such as some online games). During the use of the terminal, some applications will switch between horizontal and vertical display as the user holds the terminal. In some embodiments of the present application, a boundary coordinate corresponding to the preloaded active window stack is (H, 0, 2H, H), a coordinate system corresponding to the boundary coordinate is a system coordinate, and an origin of the system coordinate is In the upper left corner of the display screen, H is the length of the long side of the display area of the display screen. That is, the side corresponding to H is the largest side of the display area of the display screen, which is the height of the display screen when displayed in the vertical screen and the width of the display screen when displayed in the horizontal screen. The purpose of this setting is to consider the horizontal screen of the display screen, the horizontal screen display of pre-loaded applications, and the normal display of some applications. FIG. 2 is a schematic diagram of a relative position relationship between a preloaded active window stack and a display screen display area according to an embodiment of the present application. As shown in FIG. 2, the display screen is in the vertical screen mode, the origin of the terminal system coordinates is the left vertex (0,0) of the display screen 201, the width direction of the display screen 201 is the X axis, and the height direction is the Y axis. The boundary coordinates corresponding to loading Stack202 are (H, 0, 2H, H), where H is the screen height, that is, the area within the solid rectangle on the left is the main screen display area, and the area within the rectangle on the right dashed line is the preload display area. FIG. 3 is a schematic diagram of a relative position relationship between another preloaded active window stack and a display screen display area according to an embodiment of the present application. As shown in Figure 3, the display screen is in landscape mode, the origin of the terminal system coordinates is the left vertex (0,0) of the display screen 301, the height direction of the display screen 301 is the X axis, and the width direction is the Y axis. The boundary coordinates corresponding to loading Stack202 are (H, 0, 2H, H), where H is the screen height, that is, the area within the solid rectangle on the left is the main screen display area, and the area within the rectangle on the right dashed line is the preload display area.

The reason why multiple boundaries of the preload Stack are set like this is because:

The horizontal axis of the upper left corner is H, which is to prevent the display screen (also called the home screen) from being displayed on the pre-loaded application interface when the screen is horizontal, because the home screen has a horizontal screen mode in addition to the vertical screen mode. In order to prevent part of the preloaded application from being displayed in the main screen display area, the horizontal coordinate of the upper left corner of the rectangular area corresponding to the preloaded stack is set to the screen height.

The vertical coordinate of the upper left corner is 0, so that the preloaded application can correctly calculate the height of the status bar. In order to better design the user interface (UI), the Android application will customize the top status bar. If the corresponding vertical coordinate is not equal to 0, the height of the status bar may be wrong.

The horizontal axis of the lower right corner is 2H (2 times the screen height), that is, the width of the rectangle corresponding to the preloaded stack = screen height, so that the size of the preloaded stack can include the horizontal screen application when preloaded (that is, the application interface is horizontal screen) Display mode application).

The vertical coordinate of the lower right corner is H, that is, the height of the rectangle corresponding to the pre-loaded Stack = screen height, so that the size of the pre-loaded Stack can include the vertical screen application when pre-loaded.

Based on the foregoing reasons, the embodiment of the present application sets the size of the preloaded stack to (H, 0, 2H, H).

In addition, FIG. 4 is a schematic diagram of an application interface migration provided by an embodiment of the present application. As shown in FIG. 4, when a start instruction of a target application is received, the target application included in the preloaded active window stack is correspondingly mapped. The application interface 401 is transferred to the display screen 201 for display. For example, the task to which the preloaded application interface belongs is moved to the top of the application activity window Stack, and the size information, configuration information, and visibility of the task are updated, so that the application interface can be displayed in the Normal display on the display screen.

FIG. 5 is a schematic flowchart of another application startup method according to an embodiment of the present application. The method includes the following steps:

Step 5010: In a case where it is detected that an application preload event is triggered, determine an application to be preloaded.

Step 5020: Pre-load an application interface corresponding to the application to be pre-loaded based on a pre-created pre-loading active window stack.

The boundary coordinates corresponding to the preloaded active window stack are located outside the coordinate range of the display screen.

Step 5030: In the case of receiving the start instruction of the target application included in the application to be preloaded, determining an application boundary and a current display of an application interface corresponding to the target application included in the preload active window stack Whether the display boundaries of the interface are the same; if so, step 5050 is performed, and in response to the determination result that the application boundary is different from the display boundary, step 5040 is performed.

Step 5040: Disable the update operation of the application interface corresponding to the target application based on the application boundary, and migrate the application interface corresponding to the target application to the display screen for display.

Step 5050: Migrate an application interface corresponding to the target application to the display screen for display based on an application boundary.

The application startup method provided in the embodiment of the present application preloads an application interface corresponding to an application to be preloaded based on a pre-created preloaded active window stack, wherein a boundary coordinate corresponding to the preloaded active window stack is within a coordinate range of a display screen. In addition, when receiving the start instruction of the target application included in the application to be preloaded, determine whether the application boundary of the application interface corresponding to the target application included in the preloaded active window stack and the display boundary of the current display interface are Similarly, in response to different judgment results between the application boundary and the display boundary, the application interface corresponding to the target application is migrated to the display screen for display, and the update operation of the application interface corresponding to the target application is prohibited. When the loaded application is launched, because the application boundary of the target application's corresponding application interface is different from the display boundary of the current display interface, the application interface corresponding to the target application is updated and restarted, which causes the target application to be easily blanked and started at startup. And the problem of slow Caton, and when the target really need to start the application directly to the application interface has been migrated to draw a good display screen display, can achieve fast switching applications interface, improve the startup speed.

FIG. 6 is a schematic flowchart of another application startup method according to an embodiment of the present application. The method includes the following steps:

Step 6010: When it is detected that an application preload event is triggered, determine an application to be preloaded.

Step 6020: Determine whether a pre-loaded active window stack exists in advance, and if so, execute step 6050, and execute step 6030 in response to a judgment result that the pre-created active window stack does not exist.

Step 6030: Create a preloaded active window stack according to a preset rule.

Step 6040: Pre-load an application interface corresponding to the application to be pre-loaded based on the created pre-loading active window stack.

Step 6050: Pre-load an application interface corresponding to the application to be pre-loaded based on a pre-created pre-loading active window stack.

The boundary coordinates corresponding to the preloaded active window stack are located outside the coordinate range of the display screen.

Step 6060: In a case where the start instruction of the target application included in the application to be preloaded is received, determine the application boundary and the current display of the application interface corresponding to the target application included in the preload active window stack Whether the display boundaries of the interface are the same; if so, step 6080 is performed, and in response to the determination result that the application boundary is different from the display boundary, step 6070 is performed.

Step 6070: Migrate an application interface corresponding to the target application to the display screen for display based on an application boundary, and prohibit an update operation of an application interface corresponding to the target application.

Step 6080: Migrate an application interface corresponding to the target application to the display screen for display based on an application boundary.

In the application startup method provided in the embodiment of the present application, when there is no pre-created pre-loaded active window stack, a pre-loaded active window stack is created according to a preset rule, and based on the created pre-loaded active window stack, pre-loading is to be performed. The application interface corresponding to the loading application. When receiving the start instruction of the target application included in the application to be preloaded, determine the application boundary and current display interface of the application interface corresponding to the target application included in the preloading active window stack. Whether the display boundaries are the same, in response to the determination result that the application boundaries are different from the display boundaries, the update operation of the application interface corresponding to the target application is prohibited, and the application interface corresponding to the target application is migrated to the display screen for display. This can not only ensure the stability of the interface migration process, ensure that no problems such as stuck screens, black screens, or slow migration speeds occur during the recovery process, but also achieve rapid switching of the application interface and improve startup speed.

FIG. 7 is a schematic structural diagram of an application startup device provided by an embodiment of the present application. The device may be implemented by software and / or hardware, and is generally integrated in a terminal. The application startup method may be executed to pre-start an application to be started. load. As shown in FIG. 7, the device includes: an application determining module 701 configured to determine an application to be preloaded when an application preloading event is detected to be triggered; and an application preloading module 702 configured to be Load the application program for preloading; the configuration information judgment module 703 is configured to, when receiving the start instruction of the target application program included in the application program to be preloaded, determine the preloaded corresponding to the target application program. Whether the first configuration information is the same as the second configuration information of the current display interface; the first application startup module 704 is configured to, in response to a determination result that the first configuration information is different from the second configuration information, prohibit the first configuration information An update operation of configuration information, and starting the target application based on the first configuration information.

The application starting device provided in the embodiment of the present application determines that an application to be preloaded is detected when an application preload event is triggered, and preloads the application to be preloaded, and upon receiving the application to be preloaded In the case of the start instruction of the target application contained in the target application, determine whether the pre-loaded first configuration information corresponding to the target application is the same as the second configuration information of the current display interface, and respond to the first configuration information and the second configuration information. Different judgment results prohibit the update operation of the first configuration information, and start the target application based on the first configuration information. By adopting the above technical solution, the difference between the first configuration information corresponding to the pre-loaded target application and the second configuration information of the current display interface can effectively solve the slow startup speed and the stuck card of the pre-loaded target application. This problem can effectively improve the startup speed of the application to be preloaded.

In one embodiment, the device further includes a second application startup module configured to respond to a determination result that the pre-loaded first configuration information corresponding to the target application is the same as the second configuration information of the current display interface, Starting the target application based on the first configuration information.

In one embodiment, the application preloading module is configured to preload an application interface corresponding to the application to be preloaded based on a pre-created preloading active window stack, wherein the preloading active window stack corresponds to The boundary coordinates of are outside the coordinate range of the display screen.

In one embodiment, the first configuration information includes an application boundary of an application interface corresponding to the target application, and the second configuration information includes a display boundary of the current display interface. The configuration information determination module is configured to: : Determine whether the application boundary of the application interface corresponding to the target application included in the preloaded active window stack is the same as the display boundary of the current display interface.

In an embodiment, the first application startup module is configured to: in response to a determination result that the application boundary is different from the display boundary, prohibit an update operation of an application interface corresponding to the target application, and The application interface corresponding to the target application is migrated to the display screen for display based on the application boundary.

In an embodiment, the first application startup module is configured to: in response to a determination result that the application boundary is different from the display boundary, migrate an application interface corresponding to the target application based on the application boundary Display on the display screen, and prohibit an update operation of an application interface corresponding to the target application.

In an embodiment, the application preloading module is configured to preload an application interface corresponding to the application to be preloaded based on a pre-created preloading activity window stack in the following manner: determine whether a pre-created preloading activity exists A window stack; in response to a judgment result that the preloaded active window stack does not exist, create a preloaded active window stack according to a preset rule; and preload an application interface corresponding to the application to be preloaded based on the created preloaded active window stack.

In one embodiment, the application preloading module is configured to preload an application interface corresponding to the application to be preloaded based on a pre-created preloading active window stack in the following manner: to create a corresponding application program to be preloaded The target process; creating a task stack corresponding to the application to be preloaded in a pre-created preloaded active window stack; and starting an active window corresponding to the application to be preloaded in the task stack based on the target process Draw and display an application interface corresponding to the application to be preloaded based on the activated active window.

In an embodiment, the application determining module is configured to determine an application to be preloaded by: predicting a startup probability of a plurality of candidate applications; and in accordance with an order of the startup probability from high to low, the first preset numerical values are The candidate application is determined as the application to be preloaded.

An embodiment of the present application further provides a storage medium including computer-executable instructions, which are executed by a computer processor to execute an application program startup method, and the method includes: detecting that an application preload event is In the case of triggering, determine the application to be preloaded; perform preloading on the application to be preloaded; and determine whether the target application included in the application to be preloaded has received the startup instruction of the target application. Whether the pre-loaded first configuration information corresponding to the target application is the same as the second configuration information of the current display interface; in response to a determination result that the first configuration information is different from the second configuration information, prohibiting the An update operation, and starting the target application based on the first configuration information.

Storage medium-any memory device or storage device. The term "storage medium" is intended to include: installation media such as Compact Disc Read-Only Memory (CD-ROM), floppy disks or magnetic tape devices; computer system memory or random access memory, such as dynamic random access memory Access Memory (Dynamic Random Access Memory, DRAM), Double Data Rate Random Access Memory (DDR Random Access Memory, DDRRAM), Static Random Access Memory (Stat Random Random Access Memory, SRAM), Extended Data Output Random Access Memory Access memory (Extended Data Output Random Access Memory (EDORAM), Rambus Random Access Memory (RAM), etc.); Non-volatile memory, such as flash memory, magnetic media (such as hard disk or optical storage) ; Registers or other similar types of memory elements, etc. The storage medium may also include other types of memory or multiple types of memory combinations. In addition, the storage medium may be located in a first computer system in which the program is executed, or may be located in a different second computer system connected to the first computer system through a network such as the Internet. The second computer system may provide program instructions to the first computer for execution. The term "storage medium" may include two or more storage media that may reside in different locations, such as in different computer systems connected through a network. The storage medium may store program instructions (for example, embodied as a computer program) executable by one or more processors.

Certainly, a storage medium including computer-executable instructions provided in the embodiments of the present application is not limited to the application startup operation described above, and may also execute the application startup provided by any embodiment of the application. Related operations in the method.

An embodiment of the present application provides a terminal, and the terminal may integrate an application startup device provided by the embodiment of the present application. FIG. 8 is a schematic structural diagram of a terminal according to an embodiment of the present application. The terminal 800 may include: a memory 801, a processor 802, and a computer program stored in the memory and executable by the processor. When the processor 802 executes the computer program, the application program startup method according to the embodiment of the present application is implemented. .

The terminal provided in the embodiment of the present application can effectively solve the problem of slow startup of the preloaded target application due to the difference between the first configuration information corresponding to the preloaded target application and the second configuration information of the current display interface. And stutter issues can effectively improve the startup speed of the application to be preloaded.

FIG. 9 is a schematic structural diagram of another terminal according to an embodiment of the present application. The terminal may include: a housing (not shown in FIG. 9), a memory 901, a central processing unit (CPU) 902 (also referred to as A processor, hereinafter referred to as a CPU), a circuit board (not shown in FIG. 9), and a power supply circuit (not shown in FIG. 9). The circuit board is disposed in a space surrounded by the housing; the CPU 902 and the memory 901 are disposed on the circuit board; and the power supply circuit is configured to supply power to various circuits or devices of the terminal; The memory 901 is configured to store executable program code; the CPU 902 runs a computer program corresponding to the executable program code by reading the executable program code stored in the memory 901 to implement the following steps: In a case where an application preload event is detected, determine an application to be preloaded; preload the application to be preloaded; and receive a start instruction of a target application included in the application to be preloaded In the case of determining whether the pre-loaded first configuration information corresponding to the target application is the same as the second configuration information of the current display interface; in response to a determination result that the first configuration information is different from the second configuration information, prohibiting the An operation of updating the first configuration information, and starting the target application based on the first configuration information.

The terminal also includes a peripheral interface 903, a radio frequency (RF) circuit 905, an audio circuit 906, a speaker 911, a power management chip 908, an input / output (I / O) subsystem 909, and other input / control devices. 910, a touch screen 912, other input / control devices 910, and an external port 904. These components communicate through one or more communication buses or signal lines 907.

It should be understood that the terminal 900 shown in FIG. 9 is only an example of the terminal, and the terminal 900 may have more or fewer components than those shown in FIG. 9, and two or more components may be combined , Or can have different component configurations. The various components shown in FIG. 9 may be implemented in hardware, software, or a combination of hardware and software including one or more signal processing and / or application specific integrated circuits.

The following describes the terminal for application startup provided in this embodiment, and the terminal uses a mobile phone as an example.

Memory 901, which can be accessed by CPU902, peripheral interface 903, etc. The memory 901 can include high-speed random access memory, and can also include non-volatile memory, such as one or more disk storage devices, flash memory devices , Or other volatile solid-state storage devices.

A peripheral interface 903, which can connect input and output peripherals of the device to the CPU 902 and the memory 901.

I / O subsystem 909, which can connect input / output peripherals on the device, such as touch screen 912 and other input / control devices 910, to peripheral interface 903. The I / O subsystem 909 may include a display controller 9091 and one or more input controllers 9092 configured to control other input / control devices 910. In one embodiment, one or more input controllers 9092 receive electrical signals from or send electrical signals to other input / control devices 910. The other input / control devices 910 may include physical buttons (press buttons, Rocker button, etc.), dial, slide switch, joystick, click wheel. In an embodiment, the input controller 9092 may be connected to any of the following: a keyboard, an infrared port, a universal serial bus (Universal Serial Bus, USB) interface, and a pointing device such as a mouse.

A touch screen 912, which is an input interface and an output interface between a user terminal and a user, and displays a visual output to the user. The visual output may include graphics, text, icons, videos, and the like.

The display controller 9091 in the I / O subsystem 909 receives an electric signal from the touch screen 912 or sends an electric signal to the touch screen 912. The touch screen 912 detects a contact on the touch screen, and the display controller 9091 converts the detected contact into interaction with a user interface object displayed on the touch screen 912, that is, realizes human-computer interaction. The user interface object displayed on the touch screen 912 may be running Icons for games, icons connected to the appropriate network, etc. In an embodiment, the device may further include a light mouse, which is a touch-sensitive surface that does not display a visible output, or an extension of the touch-sensitive surface formed by a touch screen.

The RF circuit 905 is mainly configured to establish communication between a mobile phone and a wireless network (that is, a network side), and realize data reception and transmission of the mobile phone and the wireless network. For example, send and receive text messages, e-mail, and so on. In an embodiment, the RF circuit 905 receives and sends RF signals. The RF signals are also referred to as electromagnetic signals. The RF circuit 905 converts electrical signals into electromagnetic signals or converts electromagnetic signals into electrical signals, and communicates with the communication network through the electromagnetic signals. As well as other devices. The RF circuit 905 may include known circuits for performing these functions. The RF circuit 805 includes, but is not limited to, an antenna system, an RF transceiver, one or more amplifiers, a tuner, one or more oscillators, a digital signal processor, COder-DECoder (CODEC) chipset, Subscriber Identity Module (SIM), and so on.

The audio circuit 906 is mainly configured to receive audio data from the peripheral interface 903, convert the audio data into an electrical signal, and send the electrical signal to the speaker 911.

The speaker 911 is configured to restore a voice signal received by the mobile phone from the wireless network through the RF circuit 905 to a sound and play the sound to a user.

The power management chip 908 is configured to provide power and power management for the hardware connected to the CPU 902, the I / O subsystem, and peripheral interfaces.

The application startup device, storage medium, and terminal provided in the foregoing embodiments can execute the application startup method provided in any embodiment of the present application, and have corresponding function modules and beneficial effects for executing the method. For technical details not described in detail in the foregoing embodiments, reference may be made to an application program startup method provided in any embodiment of the present application.

Claims (20)

  1. An application startup method includes:
    Determine the application to be preloaded when it is detected that the application preload event is triggered;
    Preloading the application to be preloaded;
    When receiving the start instruction of the target application included in the application to be preloaded, determine whether the pre-loaded first configuration information corresponding to the target application is the same as the second configuration information of the current display interface ;
    In response to a determination result that the first configuration information is different from the second configuration information, an update operation on the first configuration information is prohibited, and the target application is started based on the first configuration information.
  2. The method of claim 1, further comprising:
    In response to a determination result that the pre-loaded first configuration information corresponding to the target application is the same as the second configuration information of the current display interface, the target application is started based on the first configuration information.
  3. The method according to claim 1, wherein pre-loading the application to be pre-loaded comprises:
    An application interface corresponding to the application to be preloaded is preloaded based on a pre-created preloaded active window stack, wherein a boundary coordinate corresponding to the preloaded active window stack is outside a coordinate range of a display screen.
  4. The method according to claim 3, wherein the first configuration information includes an application boundary of an application interface corresponding to the target application, and the second configuration information includes a display boundary of the current display interface;
    Determining whether the pre-loaded first configuration information corresponding to the target application is the same as the second configuration information of the current display interface includes:
    Determine whether the application boundary of the application interface corresponding to the target application included in the preloaded active window stack is the same as the display boundary of the current display interface.
  5. The method according to claim 4, wherein disabling an update operation of the first configuration information and starting the target application based on the first configuration information comprises:
    The updating operation of the application interface corresponding to the target application is prohibited, and the application interface corresponding to the target application is migrated to the display screen for display based on the application boundary.
  6. The method according to claim 4, wherein disabling an update operation of the first configuration information and starting the target application based on the first configuration information comprises:
    The application interface corresponding to the target application is migrated to the display screen for display based on the application boundary, and an update operation of the application interface corresponding to the target application is prohibited.
  7. The method according to any one of claims 3 to 6, wherein the preloading an application interface corresponding to the application to be preloaded based on a pre-created preloading active window stack comprises:
    Determine whether there is a pre-created pre-loaded active window stack;
    In response to a judgment result that the preloaded active window stack does not exist, creating a preloaded active window stack according to a preset rule;
    Preloading an application interface corresponding to the application to be preloaded based on the created preloading active window stack.
  8. The method according to any one of claims 3 to 6, wherein the preloading an application interface corresponding to the application to be preloaded based on a pre-created preloading active window stack comprises:
    Creating a target process corresponding to the application to be preloaded;
    Creating a task stack corresponding to the application to be preloaded in a pre-created preloading active window stack;
    Starting an active window corresponding to the application to be preloaded in the task stack based on the target process;
    An application interface corresponding to the application to be preloaded is drawn and displayed based on the activated active window.
  9. The method according to any one of claims 1-8, wherein the determining an application to be preloaded comprises:
    Predict the launch probability of multiple candidate applications;
    According to the order of starting probability from high to low, the candidate applications with the preset preset values are determined as the applications to be preloaded.
  10. An application program starting device includes:
    An application determining module, configured to determine an application to be preloaded when detecting that an application preloading event is triggered;
    An application preloading module configured to preload the application to be preloaded;
    The configuration information judging module is configured to judge the first pre-loaded first configuration information corresponding to the target application and the current display interface when a startup instruction of the target application included in the application to be preloaded is received. Whether the second configuration information is the same;
    The first application startup module is configured to, in response to a determination result that the first configuration information is different from the second configuration information, prohibit an update operation of the first configuration information, and start an application based on the first configuration information The target application is described.
  11. The device according to claim 10, further comprising: a second application startup module configured to respond to a determination result that the pre-loaded first configuration information corresponding to the target application is the same as the second configuration information of the current display interface And starting the target application based on the first configuration information.
  12. The device according to claim 10, the application preloading module is configured to preload an application interface corresponding to the application to be preloaded based on a pre-created preloading active window stack, wherein the preloading active window The boundary coordinates of the stack are outside the coordinate range of the display screen.
  13. The device according to claim 12, wherein the first configuration information includes an application boundary of an application interface corresponding to the target application, and the second configuration information includes a display boundary of the current display interface;
    The configuration information determination module is configured to determine whether an application boundary of an application interface corresponding to the target application included in a preloaded active window stack is the same as a display boundary of the current display interface.
  14. The device according to claim 13, wherein the first application startup module is configured to prohibit updating of an application interface corresponding to the target application in response to a determination result that the application boundary is different from the display boundary. Operate, and migrate an application interface corresponding to the target application to the display screen for display based on the application boundary.
  15. The apparatus according to claim 13, wherein the first application launching module is configured to respond to the target boundary of the target application based on the application boundary in response to a determination result that the application boundary is different from the display boundary. An application interface is migrated to the display screen for display, and an update operation of an application interface corresponding to the target application is prohibited.
  16. The device according to any one of claims 12 to 15, wherein the application preloading module is configured to preload an application interface corresponding to the application to be preloaded based on a preloaded active window stack created in the following manner: :
    Determine whether there is a pre-created pre-loaded active window stack;
    In response to a judgment result that the preloaded active window stack does not exist, creating a preloaded active window stack according to a preset rule;
    Preloading an application interface corresponding to the application to be preloaded based on the created preloading active window stack.
  17. The device according to any one of claims 12-15, wherein the application preloading module is configured to preload an application interface corresponding to the application to be preloaded based on a preloaded active window stack created in the following manner: :
    Creating a target process corresponding to the application to be preloaded;
    Creating a task stack corresponding to the application to be preloaded in a pre-created preloading active window stack;
    Starting an active window corresponding to the application to be preloaded in the task stack based on the target process;
    An application interface corresponding to the application to be preloaded is drawn and displayed based on the activated active window.
  18. The device according to any one of claims 10 to 17, wherein the application determining module is configured to determine an application to be preloaded in the following manner:
    Predict the launch probability of multiple candidate applications;
    According to the order of starting probability from high to low, the candidate applications with the preset preset values are determined as the applications to be preloaded.
  19. A computer-readable storage medium stores a computer program that, when executed by a processor, implements the method for starting an application program according to any one of claims 1-9.
  20. A terminal includes a memory, a processor, and a computer program stored in the memory and executable by the processor, and the processor implements the application program starting method according to any one of claims 1 to 9 when the processor executes the computer program. .
PCT/CN2019/086121 2018-06-06 2019-05-09 Method and apparatus for starting application program, and storage medium and terminal WO2019233241A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201810574498.0 2018-06-06
CN201810574498.0A CN108958830A (en) 2018-06-06 2018-06-06 Application program launching method, device, storage medium and terminal

Publications (1)

Publication Number Publication Date
WO2019233241A1 true WO2019233241A1 (en) 2019-12-12

Family

ID=64493048

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2019/086121 WO2019233241A1 (en) 2018-06-06 2019-05-09 Method and apparatus for starting application program, and storage medium and terminal

Country Status (2)

Country Link
CN (1) CN108958830A (en)
WO (1) WO2019233241A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108958830A (en) * 2018-06-06 2018-12-07 Oppo广东移动通信有限公司 Application program launching method, device, storage medium and terminal

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102929532A (en) * 2012-09-29 2013-02-13 东莞宇龙通信科技有限公司 Application program starting method and communication terminal
CN105939416A (en) * 2016-05-30 2016-09-14 努比亚技术有限公司 Mobile terminal and application prestart method thereof
CN106066805A (en) * 2016-05-31 2016-11-02 宇龙计算机通信科技(深圳)有限公司 Method, device and the terminal that a kind of end application starts
CN106919313A (en) * 2017-04-21 2017-07-04 维沃移动通信有限公司 The startup method and mobile terminal of a kind of application program
CN108958830A (en) * 2018-06-06 2018-12-07 Oppo广东移动通信有限公司 Application program launching method, device, storage medium and terminal

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102929532A (en) * 2012-09-29 2013-02-13 东莞宇龙通信科技有限公司 Application program starting method and communication terminal
CN105939416A (en) * 2016-05-30 2016-09-14 努比亚技术有限公司 Mobile terminal and application prestart method thereof
CN106066805A (en) * 2016-05-31 2016-11-02 宇龙计算机通信科技(深圳)有限公司 Method, device and the terminal that a kind of end application starts
CN106919313A (en) * 2017-04-21 2017-07-04 维沃移动通信有限公司 The startup method and mobile terminal of a kind of application program
CN108958830A (en) * 2018-06-06 2018-12-07 Oppo广东移动通信有限公司 Application program launching method, device, storage medium and terminal

Also Published As

Publication number Publication date
CN108958830A (en) 2018-12-07

Similar Documents

Publication Publication Date Title
US10346012B2 (en) Device, method, and graphical user interface for resizing content viewing and text entry interfaces
US9384096B2 (en) Application management
RU2617384C2 (en) Method and device for content management using graphical object
WO2018157662A1 (en) Display control method for mobile terminal, and mobile terminal
US10394441B2 (en) Device, method, and graphical user interface for controlling display of application windows
EP3480692A1 (en) Methods and systems for preloading applications and generating prediction models
US8587547B2 (en) Device, method, and graphical user interface for manipulating soft keyboards
EP3245579B1 (en) User interaction pattern extraction for device personalization
US9626087B2 (en) Device, method, and graphical user interface for navigating between user interfaces
JP2015158925A (en) Contextual history of computing objects
CA2813172C (en) Multiple-access-level lock screen
EP2854010B1 (en) Method and apparatus for displaying messages
US20150113479A1 (en) Accelerated scrolling for a multifunction device
KR20200022546A (en) Device, method, and graphical user interface for managing concurrently open software applications
CN104156171B (en) Method and device for preventing touch key misoperations in landscape screen state of mobile terminal
US8756533B2 (en) Multiple seesawing panels
US8473871B1 (en) Multiple seesawing panels
US20150127965A1 (en) Method of controlling power supply for fingerprint sensor, fingerprint processing device, and electronic device performing the same
US9965158B2 (en) Touch screen hover input handling
EP2990930A1 (en) Scrapped information providing method and apparatus
US20140267130A1 (en) Hover gestures for touch-enabled devices
KR102049784B1 (en) Method and apparatus for displaying data
US9032321B1 (en) Context-based presentation of a user interface
EP2669788A1 (en) Mobile terminal and controlling method thereof
US9213467B2 (en) Interaction method and interaction device

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19814881

Country of ref document: EP

Kind code of ref document: A1