An application running method, apparatus, device, and storage medium

By launching applications on cloud phones via cloud servers, the resource consumption and efficiency issues during application installation and operation on terminal devices are resolved, achieving an efficient and flexible application operating environment.

CN114398150BActive Publication Date: 2026-02-17BEIJING BAIDU NETCOM SCI & TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210027507.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-01-11
Publication Date
2026-02-17
Estimated Expiration
2042-01-11

AI Technical Summary

Technical Problem

When terminal devices install and run feature-rich applications, the download time is long and the resource consumption is high, which can easily lead to problems such as lag or crashes.

Method used

The target image is determined from the available images by the cloud server. The application is launched on the target cloud phone using the target image and user data, and the application launch interface is generated and displayed, avoiding the need to download and install the application on the terminal device.

Benefits of technology

It reduces the resource consumption of terminal devices during application operation, improves application startup efficiency, avoids lag and crashes, and enhances the flexibility and diversity of the application operating environment.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114398150B_ABST
    Figure CN114398150B_ABST
Patent Text Reader

Abstract

The disclosure provides an application running method and device, equipment and storage medium, relates to the technical field of computers, in particular to the technical field of cloud computing, cloud storage and cloud mobile phone. The specific implementation scheme is: in response to a target application startup request sent by a client, a target image is determined from a selectable image of the target application; wherein different selectable images are generated based on different selectable cloud mobile phone images and installation data of the target application; according to the target image and user data of the target application, the target application is started in a target cloud mobile phone associated with the target application, and an application startup interface is generated; the application startup interface is fed back to the client. A solution for running an application is given, which greatly reduces the occupation of terminal device resources during application running.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present disclosure relates to the technical field of computer, in particular to the technical field of cloud computing, cloud storage and cloud phone, and specifically relates to an application running method and device, equipment and a storage medium. BACKGROUND

[0002] With the development of computer technology, the application function installed in the terminal device is more and more rich, however, the more rich the function of the application is, the larger the capacity of the corresponding installation package is, and the longer the time of downloading and installing the application is, which seriously affects the efficiency of installing the application in the terminal device, in addition, when running the application with rich function, it needs to occupy large resources, which leads to the situation that the application running process is easy to appear card or death, etc., which needs to be improved urgently. SUMMARY

[0003] The present disclosure provides an application running method, device, equipment and a storage medium.

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

[0005] In response to a target application startup request sent by a client, a target image is determined from optional images of the target application; wherein different optional images are generated based on different optional cloud phone images and installation data of the target application;

[0006] According to the target image and user data of the target application, the target application is started in a target cloud phone associated with the target application, and an application startup interface is generated;

[0007] The application startup interface is fed back to the client.

[0008] According to another aspect of the present disclosure, an electronic device is provided, comprising:

[0009] At least one processor; and

[0010] A memory connected in communication with the at least one processor; wherein,

[0011] The memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to execute the application running method of any embodiment of the present disclosure.

[0012] According to another aspect of the present disclosure, a non-transitory computer readable storage medium storing computer instructions is provided, wherein the computer instructions are used to make the computer execute the application running method of any embodiment of the present disclosure.

[0013] The scheme of the embodiment of the present disclosure provides a solution for running an application, which greatly reduces the occupation of terminal device resources in the application running process.

[0014] It should be understood that the content described in this part is not intended to identify the key or important features of the embodiments of the present disclosure, nor to limit the scope of the present disclosure. Other features of the present disclosure will become apparent from the following description. BRIEF DESCRIPTION OF DRAWINGS

[0015] The accompanying drawings are used to better understand the present scheme and do not constitute a limitation on the present disclosure. Among them:

[0016] Figure 1A is a flowchart of an application running method according to an embodiment of the present disclosure;

[0017] Figure 1B is a schematic diagram of the principle of simultaneous running of multiple applications according to an embodiment of the present disclosure;

[0018] Figure 2 is a flowchart of an application running method according to an embodiment of the present disclosure;

[0019] Figure 3 is a flowchart of an application running method according to an embodiment of the present disclosure;

[0020] Figure 4 is a flowchart of an application running method according to an embodiment of the present disclosure;

[0021] Figure 5 is a schematic diagram of the process of interaction between a cloud server and a terminal device for running an application according to an embodiment of the present disclosure;

[0022] Figure 6 is a structural schematic diagram of an application running device according to an embodiment of the present disclosure;

[0023] Figure 7 is a block diagram of an electronic device for implementing an application running method according to an embodiment of the present disclosure. DETAILED DESCRIPTION

[0024] Exemplary embodiments of the present disclosure are described below with reference to the accompanying drawings, which include various details of the embodiments of the present disclosure to help understanding, and should be considered as merely exemplary. Therefore, those of ordinary skill in the art should recognize that various changes and modifications can be made to the embodiments described herein without departing from the scope and spirit of the present disclosure. Also, in order to be clear and concise, the description below omits the description of well-known functions and structures.

[0025] Figure 1A is a flowchart of an application running method according to an embodiment of the present disclosure;Figure 1B is a schematic diagram of a principle of simultaneous running of multiple applications according to an embodiment of the present disclosure; the embodiment of the present disclosure is applicable to a case where an application is run in response to a user operation on a client. In particular, it is applicable to a case where an application with rich functions and large resource occupation is run in response to a user operation on a client. The method can be executed by an application running device, which can be implemented in software and / or hardware. Specifically, it can be integrated into a cloud server where a cloud phone is deployed. As shown in Figures 1A-1B the application running method provided by the embodiment can include the following steps.

[0026] S101, in response to a target application start request sent by a client, determining a target image from optional images of the target application.

[0027] The client in the embodiment can be a client configured by a cloud server on a terminal device of a user, for communication between the client and the cloud server, and is different from a client generated by a target application itself after installation of a normal installation package of the target application on the terminal device. Optionally, the cloud server can configure different clients on the terminal device for different applications, or configure a common client on the terminal device for different applications.

[0028] The target application start request can be a request initiated by the user through the client on the terminal device to start the target application. The target application start request at least includes identification information (such as an identification of the target application or a name of the target application) of the target application to be started and user identification information (such as a user account or a mobile phone number for logging into the target application).

[0029] The target application is an application that the user wants to start this time. The optional image of the target application can be a copy file of installation data of the target application and a cloud phone image. The installation data of the target application can be installation package data of the target application. The cloud phone image can be a copy file of system files required for running a cloud phone. It should be noted that there can be many cloud phone systems, such as an Android system, an Apple (IOS) system, and a Microsoft (windows) system. For each system, there can be multiple versions, such as Android 8.0, Android 9.0, and Android 10.0. Therefore, for each system version of the phone system, there is a corresponding cloud phone image of the system version. The embodiment can collectively refer to the cloud phone images of each system version as optional cloud phone images. Optionally, the embodiment can construct an optional image of the target application based on the installation data of the target application and each optional cloud phone image. That is, the target application in the embodiment corresponds to multiple optional images, and different optional images are generated based on different optional cloud phone images and the installation data of the target application.

[0030] Optionally, the cloud server of the embodiment can call the mirror building instruction for each application respectively in advance, build an optional mirror of the application based on the optional cloud phone mirror of each system version and the installation data of the application, and store the optional mirrors of the applications in the mirror warehouse of the cloud server for subsequent use.

[0031] Optionally, in the embodiment, when a user wants to use a target application, the user can initiate a start request (i.e., a target application start request) of the target application to the cloud server through the client configured on the terminal device of the user. Specifically, if the cloud server configures different clients for different applications, the user can find the client associated with the target application that the user wants to initiate, and click the client. The client will initiate the start request (i.e., the target application start request) of the target application to the cloud server in response to the click operation of the user. If the cloud server configures a common client for different applications, the client will show the user an application list associated with the client after the user clicks the client. The user can select the target application that the user wants to start through the application list. The client will initiate the start request (i.e., the target application start request) of the target application to the cloud server after receiving the target application selected by the user.

[0032] The cloud server obtains and responds to the target application start request sent by the client, determines the target application that the client wants to start first, for example, if the target application start request contains a target application identifier, the target application identifier can be obtained from the target application start request, so as to determine the target application to be started. If different applications correspond to different clients, the target application can also be determined according to the client identifier and the association between the client and the application at this time. After determining the target application to be started, all optional mirrors associated with the target application can be found in the mirror warehouse, and the target mirror required for starting the target application this time can be determined from the optional mirrors.

[0033] Specifically, there are many ways to determine the target mirror from the optional mirrors of the target application, for example, one implementable manner is to determine the target mirror from the optional mirrors of the target application according to the system version of the optional cloud phone mirror in the optional mirrors of the target application. For example, the optional mirror corresponding to the optional cloud phone mirror with the latest system version can be selected as the target mirror. Another implementable manner is to generate an optional mirror list of the target application and send it to the client. The client shows the optional mirror list to the user. The client feeds back the selection result of the user to the cloud server in response to the selection operation of the user. The cloud server determines the target mirror from the optional mirrors of the target application based on the selection result of the user. Other ways can also be used to determine the target mirror from the optional mirrors of the target application, which are not limited in the embodiment.

[0034] S102, starting the target application in the target cloud mobile phone associated with the target application according to the target mirror image and the user data of the target application, and generating an application starting interface.

[0035] The user data can be data generated by the user when the user uses the target application before. It should be noted that for each application, as long as the user has used it, user data will be generated, which can be stored persistently in the cloud server. The application starting interface can be an interface displayed to the user after the target application is started.

[0036] Optionally, in this embodiment, the cloud server can first allocate an associated target cloud mobile phone for this running of the target application, then start the target cloud mobile phone on the target mirror image according to the determined target mirror image, and after starting the target cloud mobile phone, start the target application in the started target cloud mobile phone according to the user data of the target application. For example, based on the application container engine (docker) technology, a new container can be created by the container manager, and the target cloud mobile phone associated with the target application can be deployed in the container. After starting the target cloud mobile phone based on the relevant files of the cloud mobile phone image in the target mirror image, the user data is mounted to the specified directory, and the installation data of the target application in the target mirror image is executed, so as to start the target application in the started target cloud mobile phone and generate the interface after starting the target application, that is, the application starting interface.

[0037] S103, feeding back the application starting interface to the client.

[0038] Optionally, after the cloud server generates the application starting interface, it will feed back the application starting interface to the client that sends the target application starting request. So that the client can show the application starting interface to the user. Specifically, the application starting interface can be sent to the client in the form of a video stream, and correspondingly, the client can play the received video stream to realize showing the application starting interface to the user.

[0039] Exemplarily, Figure 1B The process of two users running multiple applications at the same time is shown. Specifically, user 1 sent application A, application B and application C starting requests to the cloud server through the client on his terminal device in sequence, and user 2 also sent application A, application B and application C starting requests to the cloud server through the client on his terminal device in sequence. The cloud server will start application A, application B and application C for user 1 and user 2 in sequence according to the order of receiving the six application starting requests according to the method of this embodiment.

[0040] It should be noted that although both the user 1 and the user 2 start the application A, the application B and the application C, the target images of the three applications determined for the two users can be the same or different. In the present scheme, the data stored persistently is only the user data of different users associated with different applications, and the installation data of the applications is not stored persistently repeatedly on the terminal device or the cloud server. In addition, the present embodiment needs to allocate a target cloud mobile phone for each target application started by each user. That is, different target cloud mobile phones need to be allocated for different applications run by the same user, for example, the target cloud mobile phone 1A is allocated for the application A run by the user 1, and the target cloud mobile phone 1B is allocated for the application B run by the user 1. Different target cloud mobile phones also need to be allocated for the same application run by different users, for example, the target cloud mobile phone 1A is allocated for the application A run by the user 1, and the target cloud mobile phone 2A is allocated for the application A run by the user 2.

[0041] The scheme of the present embodiment of the present disclosure determines the target image from the optional images of the target application in response to the target application start request sent by the client, and then starts the target application in the target cloud mobile phone associated with the target application according to the target image and the user data of the target application, and generates the application start interface to feed back to the client. The present scheme gives a scheme of replacing the terminal device to run the application by the cloud mobile phone, without the need to download and install the application program in the terminal device, which not only saves the application installation time, but also saves the occupation of the terminal device resources by the running application, and avoids the situation that the application is easy to appear stuck or dead during running. In addition, the present scheme determines the target image of the target application from multiple optional images, which improves the flexibility and diversity of the selection of the application running environment.

[0042] In addition, the existing cloud phone solution uses docker technology to run the application in a different way from the present solution. The image built by the prior art is a cloud phone image, which is independent of the application installation data. The cloud phone is started on the cloud phone image, and the user can install multiple applications in the cloud phone. However, all application data installed by the user in the cloud phone needs to be stored persistently, that is, the application installation data and user data are stored persistently, which occupies a large space. When different users install the same application, there are many videos, pictures and other identical resources in the installation data, and each user will store a copy, resulting in a lot of redundant data. If this data is saved on the cloud server, the bandwidth requirement of the intranet will also be high. Although the present solution also runs the application through the cloud phone, the image built by the present solution is a combination of the cloud phone image and the application installation data. The data stored persistently is only the user data in the application, which greatly reduces the data redundancy and the bandwidth requirement of the intranet. In addition, compared with the existing cloud phone solution, the present solution simplifies the process of the user operating the target application. The user does not need to apply for a cloud phone on the terminal device, and the application service can be provided to the user based on the cloud phone without the user's awareness.

[0043] Optionally, in the present embodiment, another implementable manner of determining the target image from the optional images of the target application is that the cloud server determines the target image from the optional images of the target application according to the target application start request sent by the client. Specifically, when the user wants to start the target application, the user can input the cloud phone image version that the user wants to use on the client. Correspondingly, the target application start request initiated by the client can include the cloud phone image version information. At this time, the cloud server can obtain the cloud phone image version information from the target application start request, and select the optional image corresponding to the cloud phone image version information from the optional images of the target application as the target image. The advantage of this setting is that the target image can be selected flexibly according to the user's demand. For example, the user can select the same or different target image according to the actual demand each time the user uses the target application, so as to better meet the user's individual needs and improve the flexibility of determining the target image.

[0044] Optionally, in the embodiment, another implementable manner of determining the target image from the optional images of the target application is that: according to the target application start request sent by the client, the system version of the terminal to which the client belongs is determined; and according to the system version, the target image is determined from the optional images of the target application. The system version can include a system type and version information of the system, for example, the system version can be Android 8.0. Specifically, the client can obtain the system version of the terminal device thereof, and carries the system version in the target application start request when initiating the target application start request. At this time, the cloud server can obtain the system version of the terminal to which the client belongs from the target application start request, and then select an optional image corresponding to the system version from the optional images of the target application as the target image. The advantage of such a setting is that the interface of the target application displayed by the client can conform to the system type of the terminal device thereof, ensuring the system compatibility of the terminal device and the target cloud phone, and avoiding that the application start interface generated by the target cloud phone cannot be completely and clearly displayed on the client.

[0045] Figure 2 is a flowchart of an application running method according to an embodiment of the present disclosure. The embodiment of the present disclosure further explains in detail how to start the target application in the target cloud phone associated with the target application according to the target image and the user data of the target application on the basis of the above-mentioned embodiments, as shown in Figure 2 The application running method provided by the embodiment can include the following steps:

[0046] S201, in response to the target application start request sent by the client, determining the target image from the optional images of the target application.

[0047] Different optional images are generated based on different optional cloud phone images and installation data of the target application.

[0048] S202, determining whether the target application is a pre-started application, if yes, performing S203, and if no, performing S205.

[0049] The pre-started application can refer to an application pre-started by the cloud server before receiving the application start request sent by the client. It should be noted that the embodiment can pre-start at least one application, and the pre-started application is not completely started, but only the cloud phone associated with the pre-started application is started, and the corresponding user data is not mounted to run the application.

[0050] Optionally, the embodiment can first determine whether the target application corresponding to the target application start request sent by the client is a pre-started application (i.e., a pre-started application) of the cloud server. If yes, it indicates that the target cloud phone required for starting the target application may have been pre-started, and the subsequent judgment operation is performed in S203. If no, it indicates that the target cloud phone required for starting the target application is definitely not pre-started, and the operation of starting the target cloud phone in S205 is performed.

[0051] S203, in the case where the target application belongs to a pre-started application, it is determined whether the target image is a pre-started image associated with the pre-started application. If yes, S204 is performed, otherwise, S205 is performed.

[0052] Specifically, the pre-started application in the embodiment refers to a cloud phone associated with the pre-started application being started. Since the pre-started image of the pre-started application must be used in the process of starting the cloud phone, in the case where the target application belongs to a pre-started application, it is further determined whether the pre-started image used for starting the cloud phone associated with the pre-started application is the target image determined in S201. If yes, it can be determined that the target cloud phone required for starting the target application has been pre-started, and S204 can be performed to take the pre-started cloud phone associated with the pre-started application as the target cloud phone associated with the target application. If no, it indicates that the system version of the pre-started cloud phone for the target application is different from the target cloud phone version corresponding to the target image, i.e., the target cloud phone required for the target application is not pre-started, and the operation of starting the target cloud phone in S205 needs to be performed.

[0053] S204, if yes, the pre-started cloud phone associated with the pre-started application is taken as the target cloud phone associated with the target application.

[0054] Optionally, in the case where the target application belongs to a pre-started application and the pre-started image associated therewith is the target image, it can be considered that the target cloud phone associated with the target application is started, i.e., the operation of starting the target cloud phone is not required.

[0055] It should be noted that the pre-started application pre-started by the cloud server can be one or more. When the pre-started application is one, the pre-started cloud phone associated with the pre-started application can be directly taken as the target cloud phone associated with the target application, i.e., the cloud phone pre-started when the pre-started application is taken as the target cloud phone. When the pre-started application is multiple, the pre-started cloud phone associated with the pre-started application corresponding to the target application can be taken as the target cloud phone associated with the target application.

[0056] S205, if no, the target cloud phone associated with the target application is started according to the target image.

[0057] Optionally, in the case that the target application does not belong to the pre-started application, or the target application belongs to the pre-started application but the pre-started image associated with the target application is not the target image, the operation of starting the target cloud phone associated with the target application based on the target image needs to be performed. That is, the operation of starting the target cloud phone needs to be performed again.

[0058] In S206, the target application is started in the target cloud phone associated with the target application according to the user data of the target application, and an application start interface is generated.

[0059] Specifically, this step can be that the user data of the target application is mounted under a specified target, and then the installation data of the target application in the target image is run, so as to start the target application in the target cloud phone after starting and generate the interface after starting the target application, that is, the application start interface.

[0060] In S207, the application start interface is fed back to the client.

[0061] The scheme of the embodiment of the present disclosure determines the target image from the optional images of the target application in response to the target application start request sent by the client. If the target application belongs to the pre-started application and the pre-started image associated with the target application is the target image, the pre-started cloud phone of the pre-started application corresponding to the target application can be directly used as the target cloud phone. Otherwise, the target cloud phone associated with the target application is started according to the target image, and then the target application is started in the target cloud phone associated with the target application according to the user data of the target application, and an application start interface is generated and fed back to the client. The scheme can pre-start some applications, that is, pre-start the cloud phone associated with the application, so as to save the boot power consumption when the application is actually started, directly mount the user data associated with the application, and greatly improve the efficiency of application start.

[0062] Figure 3 is a flowchart of an application running method according to an embodiment of the present disclosure. The embodiment of the present disclosure further explains and describes the process of pre-starting the application in detail on the basis of the above-mentioned embodiment, as shown in Figure 3 The application running method provided by the embodiment can include the following steps:

[0063] In S301, if an application pre-start event is detected, a pre-started application and a pre-started image associated with the pre-started application are determined.

[0064] The application pre-start event can be an event triggering the pre-started application operation. The pre-started application can be at least one of the applications (that is, optional applications) supported by the cloud server to run. The pre-started image associated with the pre-started application can be an image based on which the pre-started application is started. The pre-started image can be any one of the optional images of the pre-started application.

[0065] Optionally, in the embodiment, there are many ways to detect the application pre-start event, which are not limited in the embodiment. One implementation manner is that the number of running cloud phones in the cloud server is detected to be less than a preset value, that is, the remaining resources of the cloud server are sufficient to provide some resources to pre-start the application, and at this time, it can be considered that the application pre-start event is detected. Another implementation manner is that the current period is detected to belong to an application use peak period, and in order to improve the application start efficiency in the peak period, at this time, it can be considered that the application pre-start event is detected.

[0066] Optionally, the embodiment also has many ways to determine the pre-start application and the pre-start image associated with the pre-start application, which are not limited.

[0067] One implementation manner is that some applications can be randomly selected as pre-start applications, and the corresponding pre-start images of the pre-start applications can be randomly selected.

[0068] Another implementation manner is that the applications associated with the scene can be selected as pre-start applications according to the scene where the current time is located. For example, if the current time is 12 o'clock, the ordering applications such as "Meituan" and "Ele.me" can be selected as pre-start applications. When selecting the pre-start image associated with the pre-start application, a default version of the image can be selected as the pre-start image, such as selecting the latest version of the image associated with the pre-start application as the pre-start image.

[0069] Another implementation manner is that the pre-start application is determined from the optional applications according to the historical start situation of the optional applications, and the pre-start image associated with the pre-start application is determined from the optional images of the pre-start application. The optional applications can be applications supported by the cloud server to run. The historical start situation of the optional applications can include the historical start time, the start frequency, and the selected image version of each historical start of the optional applications.

[0070] Specifically, the embodiment can count peak start periods of each optional application according to historical start times of the optional applications, and take each optional application in the peak start period corresponding to the current time as a pre-start application; can also take a preset number of optional applications with higher historical start frequency ranking as pre-start applications; and can also combine the above two manners, and determine the pre-start applications by considering the start time and the start frequency. When determining the pre-start image associated with the pre-start application, the image version selected at each historical start time can be used to select, for each pre-start application, the image of the version with the highest historical use frequency as the pre-start image. The embodiment determines the pre-start application according to the historical start of the application by the user, so that the determined pre-start application is more in line with the user's demand for starting the application, to avoid the problem of wasting system resources caused by the pre-start application not being the application required to be started by the user all the time.

[0071] S302, start the pre-start cloud mobile phone associated with the pre-start application according to the pre-start image.

[0072] Optionally, the embodiment can create a new container based on the docker technology through a container manager, and deploy the pre-start cloud mobile phone associated with the pre-start application in the container, and start the pre-start cloud mobile phone based on the related files of the cloud mobile phone image in the pre-start image.

[0073] S303, in response to the target application start request sent by the client, determine the target image from the optional images of the target application.

[0074] Different optional images are generated based on different optional cloud mobile phone images and installation data of the target application.

[0075] S304, determine whether the target application belongs to the pre-start application, if yes, execute S305, and if no, execute S307.

[0076] S305, in the case where the target application belongs to the pre-start application, determine whether the target image is the pre-start image associated with the pre-start application, if yes, execute S306, and if no, execute S307.

[0077] S306, if yes, take the pre-start cloud mobile phone associated with the pre-start application as the target cloud mobile phone associated with the target application.

[0078] S307, if no, start the target cloud mobile phone associated with the target application according to the target image.

[0079] S308, start the target application in the target cloud mobile phone associated with the target application according to the user data of the target application, and generate an application start interface.

[0080] S309, feed the application start interface to the client.

[0081] The scheme of the embodiment of the present disclosure is that when the application pre-start event is detected, the pre-start application and its associated pre-start image are determined, the pre-start cloud phone associated with the pre-start application is started based on the pre-start image, after the target application start request sent by the client is received, the target image is first determined, in the case that the target application belongs to the pre-start application and the pre-start image associated with the target application is the target image, the pre-start cloud phone of the pre-start application corresponding to the target application can be directly used as the target cloud phone, and the target application is started in the target cloud phone according to the user data of the target application, and the application start interface is generated and fed back to the client. The scheme can realize the boot power consumption when the application is actually started by pre-starting some applications, i.e., pre-starting the cloud phone associated with the application, directly mounting the user data associated with the application, and greatly improving the efficiency of application start.

[0082] Optionally, in the embodiment, another implementable manner of detecting the application pre-start event is that the number of pre-start cloud phones without running applications is less than a preset threshold. Specifically, the pre-start application is essentially a pre-start cloud phone (i.e., a pre-start cloud phone) associated with the application, but the pre-start cloud phone does not run an application program, and only in the case that the target application in the target application start request sent by the client belongs to the pre-start application and the pre-start image associated with the target application is the target image, the pre-start cloud phone starts and runs the application based on the application data. Therefore, the embodiment can detect that the number of pre-start cloud phones without running applications is less than a preset threshold (such as the total number of determined pre-start applications), that is, a part of the pre-start applications becomes a formally started application, that is, the vacancy of the pre-start application exists, and it is considered that the application pre-start event is detected. For example, if the pre-start application is 3, the pre-start application 1 belongs to the target application that the user 1 wants to start, and the target image also meets the pre-start image, at this time, the pre-start application 1 becomes a formally started application, at this time, the number of pre-start applications becomes 2, and there is a vacancy, at this time, it can be considered that the application pre-start event is detected, that is, a new pre-start application is supplemented. The advantage of such setting is to ensure the stability of the number of pre-start applications and avoid the situation that the number of pre-start applications is too much or too little.

[0083] Figure 4 It is a flowchart of an application running method according to the embodiment of the present disclosure. The embodiment of the present disclosure further explains and describes the application running process of starting the application in detail on the basis of the above-mentioned embodiment, as shown in FIG. 8, the application running method provided by the embodiment can include the following steps. Figure 4

[0084] ​S401, in response to the target application start request sent by the client, determining a target image from the optional images of the target application.

[0085] Wherein, different optional images are generated based on different optional cloud phone images and installation data of the target application.

[0086] S402, starting the target application in the target cloud phone associated with the target application according to the target image and user data of the target application, and generating an application start interface.

[0087] S403, feeding back the application start interface to the client.

[0088] S404, obtaining operation data of the target application sent by the client.

[0089] Wherein, the operation data of the target application can be data generated by the user operating the target application through the display interface of the client. Specifically, it can include data input directly by the user on the display interface; it can also include data collected based on the user's operation of triggering related components (such as sensors, network modules, Global Positioning System (GPS) modules, Bluetooth modules, voice acquisition modules, and image acquisition modules, etc.) on the terminal device.

[0090] Optionally, the client can directly obtain the data input by the user on the display interface as the operation data; it can also obtain the data collected by the related components on the terminal device in response to the triggering operation of the user on the display interface, for example, the user triggering the face recognition login button on the display interface will trigger the camera to collect the face image, at this time the client can obtain the face image collected by the camera in response to the user's operation. After the client obtains the operation data of the target application, it will send the operation data to the cloud server, that is, synchronize the operation data of the target application based on the user to the cloud server. Correspondingly, the cloud server will obtain the operation data of the target application sent by the client.

[0091] S405, in the target cloud phone, running the target application according to the operation data, and generating an application running interface.

[0092] Wherein, the application running interface can be an interface displayed in real time during the running of the target application based on the user's operation after the target application is started. Optionally, after the cloud server obtains the operation data of the target application sent by the client, it can further run the target application program based on the obtained operation data in the target cloud phone corresponding to the target application which has been started, to obtain the application interface after this running, that is, the application running interface.

[0093] S406, feeding back the application running interface to the client.

[0094] Optionally, after the cloud server controls the target cloud phone to run the target application according to the operation data and generates an application running interface, the cloud server feeds back the application running interface to the client that sends the operation data, so that the client displays the application running interface to the user. Specifically, the application running interface can be sent to the client in the form of a video stream.

[0095] Optionally, in this embodiment, if the cloud server detects a target application closing event, such as detecting a target application closing request sent by the client, or detecting that no operation data about the target application sent by the client is received within a preset time period, the cloud server can first store the user data generated by running the target application in the target cloud phone, and then close the target application, and then release the related resources of the target cloud phone in the cloud service.

[0096] The scheme of the embodiment of the present disclosure determines a target image from the optional images of the target application in response to a target application starting request sent by the client, and then starts the target application in the target cloud phone associated with the target application according to the target image and the user data of the target application, and generates an application starting interface and feeds back the application starting interface to the client. After receiving the operation data of the target application transmitted by the client, the target application is run in the target cloud phone according to the operation data, an application running interface is generated, and the application running interface is fed back to the client. According to the scheme, the cloud server can further run the application through the cloud phone and display the running interface to the user by synchronizing the operation data generated by the user operating the terminal device through the client after the cloud phone replaces the terminal device to start the application. This greatly saves the terminal device resources occupied by running the application, and avoids the situation that the application is easy to be stuck or dead during running.

[0097] Optionally, on the basis of the above embodiment, if the cloud server detects a target application closing event, such as detecting a target application closing request sent by the client, or detecting that no operation data about the target application sent by the client is received within a preset time period, the cloud server can first store the user data generated by running the target application in the target cloud phone, and then close the target application, and then release the related resources of the target cloud phone in the cloud service. Figure 5 The process of the cloud server and the terminal device interacting to run the application is shown, and the process is mainly realized based on the docker container image technology. The cloud server at least includes a docker image warehouse storing optional images of each application, and a distributed storage unit storing persistent data (i.e., user data of each application). The cloud server and the terminal device can communicate through the Internet. After detecting an application pre-starting event, the cloud server needs to determine the pre-starting application and its associated pre-starting image, and start the pre-starting cloud phone associated with the pre-starting application based on the pre-starting image. For example, Figure 5As shown, assuming that the determined pre-started applications are application 1, application 2 and application 3, the cloud server finds the pre-started images associated with the application 1, application 2 and application 3 from the docker image repository respectively, and then allocates a docker container for each pre-started application based on the container manager, deploys each pre-started cloud phone based on the docker container, such as cloud phone 1, cloud phone 2 and cloud phone 3, and then starts the cloud phone 1, cloud phone 2 and cloud phone 3 according to the cloud phone images in the pre-started images, so as to realize the pre-started application 1, application 2 and application 3.

[0098] Next, taking the application 1 in the running Figure 5 application 1 as an example, the user can open the client configured by the cloud server on the terminal device through the IOS system, Android system, windows system or webpage of the terminal device, and send the application 1 start request to the cloud server through the client. The cloud server receives and responds to the application 1 start request, determines the target image from the selectable images, and if the target image is the pre-started image used by the pre-started cloud phone 1, the user data of the application 1 can be directly found from the distributed storage unit and mounted to the specified directory of the application 1, and then the application 1 is started in the pre-started cloud phone 1; otherwise, a docker container is allocated for the target application based on the container manager, a new cloud phone is deployed based on the docker container, the new cloud phone associated with the application 1 is started according to the cloud phone image in the target image, and the application 1 is started based on the user data mounted to the specified directory. After starting the application 1, the application start interface of the application 1 is generated and sent to the client on the terminal device side to realize projection of the application start interface of the application 1 to the client display of the terminal device. When the user operates the application 1 on the terminal device side, the client obtains the operation data of the application 1, such as user input data, sensor data network data, GPS data, Bluetooth data, voice data and image data, and sends the operation data to the cloud server, that is, synchronizes the operation data of the user on the terminal device side to the cloud server. The cloud server can continue to run the application 1 in the cloud phone 1 of the application 1 according to the operation data, and generate the application running interface feedback to the client to realize projection of the application running interface to the terminal device display.

[0099] Figure 6 is a structural schematic diagram of an application running device provided by an embodiment of the present disclosure. The embodiment of the present disclosure is applicable to the case of running an application in response to the operation of the user on the client. It is especially applicable to the case of running an application with rich functions and occupying more resources in response to the operation of the user on the client. The device can be implemented by software and / or hardware, and the device can implement the application running method of any embodiment of the present disclosure. As shown in Figure 6 The application running device 600 includes:

[0100] The target image determination module 601 is configured to determine a target image from optional images of the target application in response to a target application startup request sent by the client; wherein the different optional images are generated based on different optional cloud mobile phone images and installation data of the target application.

[0101] The application startup module 602 is configured to start the target application in a target cloud mobile phone associated with the target application according to the target image and user data of the target application, and generate an application startup interface.

[0102] The interface sending module 603 is configured to feed back the application startup interface to the client.

[0103] The scheme of the embodiments of the present disclosure determines a target image from optional images of a target application in response to a target application startup request sent by a client, and then starts the target application in a target cloud mobile phone associated with the target application according to the target image and user data of the target application, and feeds back an application startup interface to the client. The scheme provides a scheme for replacing terminal devices to run applications by using cloud mobile phones, without the need to download and install application programs in the terminal devices, which not only saves application installation time, but also saves the occupation of terminal device resources for running applications, and avoids the situation that applications are prone to freezing or crashing during running. In addition, the scheme determines a target image for starting the target application from multiple optional images, which improves the flexibility and diversity of the selection of application running environments.

[0104] Further, the target image determination module 601 is specifically configured to:

[0105] determine a target image from optional images of the target application according to the target application startup request sent by the client.

[0106] Further, the target image determination module 601 is specifically configured to:

[0107] determine the system version of the terminal to which the client belongs according to the target application startup request sent by the client.

[0108] determine the target image from the optional images of the target application according to the system version.

[0109] Further, the application startup module 602 is specifically configured to include:

[0110] if the target application is a pre-startup application, determine whether the target image is a pre-startup image associated with the pre-startup application;

[0111] if yes, determine a pre-startup cloud mobile phone associated with the pre-startup application as a target cloud mobile phone associated with the target application;

[0112] According to the user data of the target application, the target application is started in a target cloud mobile phone associated with the target application.

[0113] Further, the application running apparatus 600 further comprises:

[0114] The pre-starting information determination module is configured to determine a pre-starting application and a pre-starting image associated with the pre-starting application if the pre-starting event is detected.

[0115] The cloud mobile phone starting module is configured to start a pre-starting cloud mobile phone associated with the pre-starting application according to the pre-starting image.

[0116] Further, the pre-starting information determination module is specifically configured to:

[0117] The pre-starting application is determined from the optional applications according to the historical starting conditions of the optional applications, and the pre-starting image associated with the pre-starting application is determined from the optional images of the pre-starting application.

[0118] Further, the application running apparatus 600 further comprises:

[0119] The pre-starting event detection module is configured to detect that the number of pre-starting cloud mobile phones in which the applications are not running is less than a preset threshold.

[0120] Further, the application running apparatus 600 further comprises:

[0121] The data acquisition module is configured to acquire operation data of the target application sent by the client.

[0122] The application running module is configured to run the target application in the target cloud mobile phone according to the operation data, and generate an application running interface.

[0123] The interface sending module 603 is further configured to feed back the application running interface to the client.

[0124] The product can execute the method provided by any embodiment of the present disclosure, has the corresponding function modules and beneficial effects of executing the method.

[0125] In the technical solution of the present disclosure, the acquisition, storage and application of the image data, installation package data, user data and operation data, etc. conform to the relevant legal regulations and do not violate public order and good customs.

[0126] According to the embodiments of the present disclosure, the present disclosure further provides an electronic device, a readable storage medium and a computer program product.

[0127] Figure 7A schematic block diagram of an example electronic device 700 that can be used to implement embodiments of the present disclosure is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device may also represent various forms of mobile devices, such as personal digital assistants, cellular phones, smartphones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the present disclosure described and / or claimed herein.

[0128] like Figure 7 As shown, device 700 includes a computing unit 701, which can perform various appropriate actions and processes based on a computer program stored in read-only memory (ROM) 702 or a computer program loaded into random access memory (RAM) 703 from storage unit 708. RAM 703 may also store various programs and data required for the operation of device 700. The computing unit 701, ROM 702, and RAM 703 are interconnected via bus 704. Input / output (I / O) interface 705 is also connected to bus 704.

[0129] Multiple components in device 700 are connected to I / O interface 705, including: input unit 706, such as keyboard, mouse, etc.; output unit 707, such as various types of monitors, speakers, etc.; storage unit 708, such as disk, optical disk, etc.; and communication unit 709, such as network card, modem, wireless transceiver, etc. Communication unit 709 allows device 700 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.

[0130] The computing unit 701 can be various general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of the computing unit 701 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various specialized artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, and the like. The computing unit 701 performs various methods and processes described above, such as the application running method. For example, in some embodiments, the application running method can be implemented as a computer software program tangibly embodied in a machine-readable medium, such as the storage unit 708. In some embodiments, part or all of the computer program can be loaded and / or installed onto the device 700 via the ROM 702 and / or the communication unit 709. When the computer program is loaded onto the RAM 703 and executed by the computing unit 701, one or more steps of the application running method described above can be performed. Alternatively, in other embodiments, the computing unit 701 can be configured, by any suitable means (e.g., by means of firmware), to perform the application running method.

[0131] Various implementations of the systems and techniques described above can be realized in digital electronic circuitry, integrated circuitry, a field programmable gate array (FPGA), an application specific integrated circuit (ASIC), a system on a chip (SOC), a complex programmable logic device (CPLD), computer hardware, firmware, software, and / or combinations thereof. These various implementations can include implementation in one or more computer programs that are executable and / or interpretable on a programmable system including at least one programmable processor, which can be special or general purpose, coupled to receive data and instructions from, and to transmit data and instructions to, a storage system, at least one input device, and at least one output device.

[0132] Program code for carrying out methods of the present disclosure can be written in any combination of one or more programming languages. The program code can be provided to a processor or controller of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the program code, when executed by the processor or controller, produces a means for implementing the functions / acts specified in the flowcharts and / or block diagrams. The program code can be executed entirely on a machine, partially on a machine, partially on a machine as a stand-alone software package, partially on a machine and partially on a remote machine or entirely on a remote machine or server.

[0133] In the context of this disclosure, a machine-readable medium can be a tangible medium that contains or stores a program for use by or in connection with an instruction execution system, apparatus, or device. The machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can include but is not limited to an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples of the machine-readable storage medium will include one or more lines of electrical connections, portable computer disks, hard disk drives, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or Flash memory), optical fibers, portable compact disc read-only memories (CD-ROMs), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.

[0134] To provide for interaction with a user, the systems and techniques described here can be implemented on a computer having a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user and a keyboard and a pointing device (e.g., a mouse or a trackball) by which the user can provide input to the computer. Other kinds of devices can be used to provide for interaction with a user as well; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form, including acoustic, speech, or tactile input.

[0135] The systems and techniques described here can be implemented in a computing system that includes a back end component (e.g., as a data server), or that includes a middleware component (e.g., an application server), or that includes a front end component (e.g., a user computer having a graphical user interface or a Web browser through which a user can interact with an implementation of the systems and techniques described here), or any combination of such back end, middleware, or front end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include a local area network (LAN), a wide area network (WAN), blockchain networks, and the Internet.

[0136] The computer system can include clients and servers. This relationship can be. The servers are generally remote from the users and can be accessed via the Internet using a communication network. The relationship can be a client-server relationship over a communications network, and as such both the client and the server are typically computers, or other client and server computers. In a client-server relationship, the server is often providing functionality and data to the client. For example, the server can provide data, or functionality, to the client using any one of a number of protocols that are well known to those of ordinary skill in the art.

[0137] Artificial intelligence is a discipline that studies enabling computers to simulate some human thinking processes and intelligent behaviors (such as learning, reasoning, thinking, planning, etc.), both hardware and software technologies. Artificial intelligence hardware technology generally includes technologies such as sensors, special artificial intelligence chips, cloud computing, distributed storage, big data processing, etc.; artificial intelligence software technology mainly includes computer vision technology, speech recognition technology, natural language processing technology, machine learning / deep learning technology, big data processing technology, knowledge graph technology, etc.

[0138] Cloud computing refers to accessing elastic and scalable shared physical or virtual resource pools through a network, which can include servers, operating systems, networks, software, applications, and storage devices, and can deploy and manage resources in a self-service manner as needed. Through cloud computing technology, powerful data processing capabilities can be provided for artificial intelligence, blockchain, and other technology applications and model training.

[0139] It should be understood that various forms of the flow shown above can be used to reorder, add or delete steps. For example, each step described in the present disclosure can be executed in parallel, sequentially or in a different order, as long as the desired results of the technical solutions disclosed in the present disclosure can be achieved, which is not limited herein.

[0140] The above detailed description does not constitute a limitation on the protection scope of the present disclosure. Those skilled in the art should understand that various modifications, combinations, sub-combinations and substitutions can be made according to design requirements and other factors. Any modifications, equivalent replacements and improvements within the spirit and principles of the present disclosure should be included in the protection scope of the present disclosure.

Claims

1. An application running method, comprising: determining a target image from optional images of a target application in response to a target application starting request sent by a client; wherein different optional images are generated based on different optional cloud phone images and installation data of the target application; the optional cloud phone images correspond to phone systems of each system version; starting the target application in a target cloud phone associated with the target application according to the target image and user data of the target application, to generate an application starting interface; feeding back the application starting interface to the client; wherein the determining the target image from the optional images of the target application comprises: determining a system version of a terminal to which the client belongs according to the target application starting request sent by the client; the system version comprises a system type and version information of the system; determining the target image from the optional images of the target application according to the system version.

2. The application execution method according to claim 1, wherein The determining the target image from the optional images of the target application comprises: determining the target image from the optional images of the target application according to the target application starting request sent by the client.

3. The application execution method according to claim 1, wherein The starting the target application in the target cloud phone associated with the target application according to the target image and the user data of the target application comprises: in a case where the target application belongs to a pre-starting application, judging whether the target image is a pre-starting image associated with the pre-starting application; if yes, taking a pre-starting cloud phone associated with the pre-starting application as the target cloud phone associated with the target application; starting the target application in the target cloud phone associated with the target application according to the user data of the target application.

4. The application running method according to claim 3, further comprising: if an application pre-starting event is detected, determining a pre-starting application and a pre-starting image associated with the pre-starting application; starting a pre-starting cloud phone associated with the pre-starting application according to the pre-starting image.

5. The application execution method according to claim 4, wherein The determining the pre-starting application and the pre-starting image associated with the pre-starting application comprises: determining a pre-starting application from optional applications according to historical starting conditions of the optional applications, and determining a pre-starting image associated with the pre-starting application from optional images of the pre-starting application.

6. The application execution method according to claim 4, wherein The detecting the application pre-running event comprises: detecting that a number of pre-starting cloud phones of unrunning applications is less than a preset threshold.

7. The application running method according to claim 1, further comprising: obtaining operation data of the target application sent by the client; running the target application in the target cloud phone according to the operation data, to generate an application running interface; feeding back the application running interface to the client.

8. An application running apparatus, comprising: a target image determining module configured to determine a target image from optional images of a target application in response to a target application starting request sent by a client; wherein different optional images are generated based on different optional cloud phone images and installation data of the target application; the optional cloud phone images correspond to phone systems of each system version. The application starting module is configured to start the target application in a target cloud mobile phone associated with the target application according to the target image and user data of the target application, and generate an application starting interface. The target image determining module is further configured to determine a system version of a terminal to which the client belongs according to a target application starting request sent by the client, and determine a target image from the selectable images of the target application according to the system version; the system version includes a system type and version information of the system. The interface sending module is configured to feed back the application starting interface to the client.

9. The application execution device according to Claim 8, wherein The target image determining module is configured to: determine a target image from the selectable images of the target application according to a target application starting request sent by the client.

10. The application execution device according to Claim 8, wherein The application starting module is configured to include: in a case where the target application belongs to a pre-starting application, determine whether the target image is a pre-starting image associated with the pre-starting application; if yes, take a pre-starting cloud mobile phone associated with the pre-starting application as a target cloud mobile phone associated with the target application; and start the target application in the target cloud mobile phone associated with the target application according to user data of the target application.

11. The application running apparatus of claim 10, further comprising: a pre-starting information determining module configured to, if an application pre-starting event is detected, determine a pre-starting application and a pre-starting image associated with the pre-starting application from the selectable applications; a cloud mobile phone starting module configured to start a pre-starting cloud mobile phone associated with the pre-starting application according to the pre-starting image.

12. The application execution apparatus according to claim 11, wherein The pre-starting information determining module is configured to: determine a pre-starting application from the selectable applications according to a historical starting condition of the selectable applications, and determine a pre-starting image associated with the pre-starting application from the selectable images of the pre-starting application.

13. The application running apparatus of claim 11, further comprising: a pre-starting event detecting module configured to detect that a number of pre-starting cloud mobile phones in which no application is running is less than a preset threshold.

14. The application running apparatus of claim 8, further comprising: a data obtaining module configured to obtain operation data of the target application sent by the client; an application running module configured to run the target application in the target cloud mobile phone according to the operation data, and generate an application running interface; the interface sending module is further configured to feed back the application running interface to the client.

15. An electronic device, comprising: at least one processor; and a memory connected to the at least one processor in communication; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the application running method of any one of claims 1-7.

16. A non-transitory computer readable storage medium having stored thereon computer instructions, wherein, The computer instructions are used to enable the computer to perform the application running method of any one of claims 1-8.

17. A computer program product comprising a computer program which, when executed by a processor, implements the application running method of any one of claims 1-7.

Citation Information

Patent Citations

  • Method for obtaining pre-started cloud mobile phone and cloud mobile phone server

    CN109660658A

  • Computer software installation-free method, device and system based on cloud service

    CN111752640A