Application use method and terminal

By installing applications on the terminal, deploying SDKs in the cloud, and utilizing cloud resources to achieve end-cloud collaboration, the problem of application dependence on terminal hardware resources is solved, user experience is improved, storage usage is reduced, and the impact of SDK upgrades is mitigated.

WO2025218203A1PCT designated stage Publication Date: 2025-10-23HUAWEI TECH CO LTD

Patent Information

Application Number
PCT/CN2024/139508
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-04-18
Filing Date
2024-12-16
Publication Date
2025-10-23

AI Technical Summary

Technical Problem

The application's reliance on terminal hardware resources leads to a decline in user experience, and the frequent SDK upgrades and large packages occupy terminal storage space, affecting user stickiness.

Method used

By installing applications on the terminal and deploying the SDK that the applications depend on in the cloud, and utilizing the powerful computing power and storage resources of the cloud, we can achieve end-cloud collaboration, automatically switch between the terminal and cloud SDK usage, and reduce dependence on terminal hardware resources.

Benefits of technology

Improve user experience, reduce terminal storage space usage, reduce the impact of SDK upgrades on users, and reduce costs for application developers.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024139508_23102025_PF_FP_ABST
    Figure CN2024139508_23102025_PF_FP_ABST
Patent Text Reader

Abstract

The present application provides an application use method and a terminal. A target application is installed in a terminal, a proxy application of the target application is deployed in the cloud, and a first SDK is integrated in the proxy application. The application use method applied to the terminal comprises: acquiring a first use operation on the target application; if the first use operation is used for requesting to use the first SDK, sending a first use request for the first SDK to the cloud, so as to use the first SDK deployed in the cloud; receiving first information sent by the cloud, the first information being obtained by the cloud processing the first use request on the basis of the deployed first SDK; and, on the basis of the first information, executing processing for responding to the first use operation. The present application can cope with the problem that an application is strongly dependent on terminal hardware resources, and can improve user experience.
Need to check novelty before this filing date? Find Prior Art

Description

Application usage method and terminal

[0001] The present application claims priority to the Chinese patent application No. 202410473889.9, filed on April 18, 2024, and entitled "Application usage method and terminal", the content of which is incorporated herein by reference in its entirety. TECHNICAL FIELD

[0002] The present application relates to the technical field of electronic devices, and in particular to an application usage method and a terminal. BACKGROUND

[0003] When developing an application (APP), an application developer usually integrates the capabilities of multiple software development kits (SDKs) in the application to improve development efficiency.

[0004] In a related technology, when developing an application, an application developer can package all the full versions of the SDKs relied on by the application into the application in the packaging stage, and then publish the application in an application store. A user can download the application in the application store and install the application on the user's terminal device. During the running of the installed application on the terminal device, if the user's operation of using the application needs to use the capabilities of a certain SDK relied on by the application, the terminal device can use the deployed SDK to respond to the user's operation.

[0005] However, when the SDK relied on by the application requires high computing power, this leads to the strong dependence of the application on the hardware resources of the user's terminal device, resulting in a decline in user experience. SUMMARY

[0006] The embodiments of the present application provide an application usage method and a terminal, which can solve the problem of strong dependence of the application on terminal hardware resources and improve user experience.

[0007] In a first aspect, the embodiments of the present application provide an application usage method applied to a terminal, wherein the terminal is installed with a target application, a proxy application of the target application is deployed on a cloud, and the proxy application integrates a first SDK. The method comprises: obtaining a first usage operation on the target application; if the first usage operation is used to request to use the first SDK, sending a first usage request for the first SDK to the cloud to use the first SDK deployed on the cloud; receiving first information sent by the cloud, the first information being obtained by the cloud according to the first SDK deployed by the cloud to process the first usage request; and performing processing for responding to the first usage operation according to the first information.

[0008] In the embodiments of the present application, the target application is installed on the terminal, and the proxy application of the target application is deployed on the cloud, and one or more SDKs relied on by the target application are integrated in the proxy application, so that the application can be used based on the cooperation of the terminal and the cloud. By installing the target application on the terminal and deploying part or even all of the SDKs relied on by the target application on the cloud, the powerful hardware resources of the cloud can be used to use the target application, and the limitation on the hardware resources of the user terminal device is reduced.

[0009] Feasibly, the target application can be any application developed and published by an application developer. The application developer can integrate part of the SDKs (such as other SDKs except for the interface interaction SDK, and the interface interaction SDK can be deployed only on the terminal) or even all of the SDKs relied on by the application in the proxy application, and deploy the proxy application on the cloud, and integrate the basic information (such as the UI framework) relied on by the application in the application, and the user can download and install the application to the terminal. The UI (User Interface) represents the user interface. By integrating the UI framework in the target application and deploying it on the terminal, the terminal can respond to the user's operation of using the target application based on the deployed UI framework and the use of the cloud-side SDK (that is, the SDK deployed on the cloud) relied on by the target application.

[0010] Feasibly, the SDK relied on by the target application can include at least the SDK deployed on the cloud. Among them, the SDK relied on by the target application and at least deployed on the cloud can include part or all of the following SDKs:

[0011] (1) The first type of SDK (which can be an SDK with higher requirement for computing power, such as an SDK with higher requirement for CPU usage rate, specifically such as a face recognition SDK);

[0012] (2) The second type of SDK (which can be an SDK with lower requirement for response delay, such as an instant messaging SDK);

[0013] (3) The third type of SDK (which can be an SDK with a larger package, specifically such as a map SDK);

[0014] (4) The fourth type of SDK (which can be an SDK with more frequent upgrades);

[0015] (5) Other types of SDKs suitable for being deployed at least on the cloud.

[0016] In one embodiment, the first SDK described above can be any one of the SDKs relied on by the target application and at least deployed on the cloud, that is, the first SDK described above can belong to any one of these types of SDKs.

[0017] Feasibly, the first type of SDK and the third type of SDK can be deployed in the terminal and the cloud at the same time, and the fourth type of SDK and the fifth type of SDK can be deployed only in the cloud.

[0018] Feasibly, the SDKs relied on by the target application can include at least the SDKs deployed in the cloud, and can also include the SDKs not deployed in the cloud but only deployed in the terminal. Among them, the SDKs relied on by the target application and only deployed in the terminal can include part or all of the following SDKs:

[0019] (1) The fifth type of SDK (which can be a general SDK not sensitive to computing power and response time delay, such as an interface interaction SDK);

[0020] (2) Other types of SDKs suitable for being deployed only in the terminal.

[0021] Based on the above, in one example, the SDKs deployed in the terminal can include interface interaction SDKs, and the SDKs deployed in the cloud can include third-party payment SDKs, instant messaging SDKs, map SDKs, and face recognition SDKs.

[0022] Exemplarily, referring to FIGS. 3a-3c, the target application can be an application 312 installed on the terminal, and the proxy application can be a proxy application 322 deployed in the cloud. In the examples shown in FIGS. 3a and 3b, the first SDK described above can be a first SDK 314 relied on by the application 312, and the cloud 321 also deploys a third SDK 315 relied on by the application 312. In the example shown in FIG. 3c, the first SDK described above can be a first SDK 314 relied on by the application 312, and the cloud 321 also deploys a third SDK 315, a fourth SDK 317, and a fifth SDK 318 relied on by the application 312.

[0023] After the user installs the application on the terminal, the user can start the application to run the application on the terminal. During the running of the application, the user can use the application through touch, key, etc.

[0024] In one embodiment, the first use operation described above can be a touch operation, a key operation, etc. of the user on the target application. Exemplarily, if the user clicks on a certain control in the target application displayed by the terminal, the terminal can obtain the click operation of the user on the control.

[0025] Feasibly, the terminal can determine the capability of which SDK or which SDKs the user needs to use based on the acquired first use operation. If the user uses the capability of the cloud-side SDK, the terminal can send a use request for the cloud-side SDK to the cloud by sending an operation instruction to the cloud, and the operation instruction can carry use information of the cloud-side SDK. The cloud can use the deployed SDK to process the use request sent by the terminal, and feed back the processing result to the terminal. Then, the terminal can display the processing result sent by the cloud to respond to the use operation of the user.

[0026] As can be seen from the above, the embodiments of the application can use the application based on the end-cloud collaboration capability by installing the application on the terminal and deploying the SDK (such as the face recognition SDK) relied by the application on the cloud. Therefore, the user can use the powerful computing resources of the cloud when using the application on the terminal, thereby avoiding the influence of the strong dependence of the application on the terminal hardware resources on the user experience.

[0027] For the SDK deployed on the cloud, it can be deployed only on the cloud, can be deployed on the terminal at the same time, and can be partially deployed on the terminal at the same time and the other part is deployed only on the cloud. Therefore, under the premise that the one or more SDKs relied by the application are deployed on the cloud, based on whether the terminal also deploys the one or more SDKs, there can be the following implementation mode 1 and implementation mode 2:

[0028] Implementation mode 1: The SDK relied by the application and deployed on the cloud is not only deployed on the cloud, but also deployed on the terminal. In addition, since the one or more SDKs relied by the application are deployed on the terminal and the cloud at the same time, the terminal can also deploy a function module. When the user uses the capability of a certain SDK, the function module can automatically switch to use the end-side SDK (i.e., the SDK deployed on the terminal) or the cloud-side SDK based on the terminal processor usage rate or response time delay of the SDK.

[0029] The implementation mode 1 can cope with the problem that the application is strongly dependent on the terminal hardware resources by deploying the application on the terminal, deploying the first type SDK, the second type SDK, and the like relied by the application on the terminal and the cloud at the same time, and based on the automatic switching of the end-cloud collaboration capability. In addition, there is no problem of high network bandwidth requirement and large time delay for the user, so the user experience can be improved, and the cost of the application developer can be reduced.

[0030] Implementation mode 2: The SDK relied by the application and deployed on the cloud is only deployed on the cloud and not deployed on the terminal.

[0031] The implementation mode deploys an application on a terminal, and only deploys an application-dependent SDK such as a first-type SDK, a second-type SDK, a third-type SDK, a fourth-type SDK, and the like on the cloud to utilize the powerful computing resources of the cloud. Based on the terminal-cloud collaboration capability, the application strong dependence on terminal hardware resources can be addressed, and thus the user experience can be improved.

[0032] In addition, the implementation mode 2 deploys an application on a terminal, and only deploys a third-type SDK (such as a large SDK) dependent on the application on the cloud to utilize the powerful storage resources of the cloud. The application installed on the terminal can have a small package size, and the terminal storage space used by the application is small. Therefore, the implementation mode 2 can address the problem of excessive terminal storage space occupied by the application while realizing the terminal-cloud collaboration capability.

[0033] In addition, the implementation mode 2 deploys an application on a terminal, and only deploys a third-type SDK (such as a large SDK) dependent on the application on the cloud to utilize the powerful storage resources of the cloud. The application installed on the terminal can have a small package size, and the terminal storage space used by the application is small. Therefore, the implementation mode 2 can address the problem of excessive terminal storage space occupied by the application while realizing the terminal-cloud collaboration capability.

[0034] Corresponding to the above-mentioned implementation mode 1, in one embodiment of the method in the above-mentioned first aspect, the first SDK is integrated in the target application; the application use method further includes: using the first SDK deployed on the terminal to execute processing for responding to the first use operation; detecting the terminal processor usage of the first SDK deployed on the terminal in the process of using the first SDK deployed on the terminal; if the detected terminal processor usage is greater than or equal to the first threshold, stopping using the first SDK deployed on the terminal, and executing the step of using the first SDK deployed on the cloud by sending a first use request for the first SDK to the cloud.

[0035] The first SDK can be integrated in the target application and its proxy application, that is, the first SDK (such as a first-type SDK or a second-type SDK) dependent on the application is deployed on the terminal and the cloud at the same time. Thus, based on the terminal processor usage, the use of the terminal-side SDK or the cloud-side SDK can be switched (that is, automatically switched) as needed.

[0036] When the terminal uses the terminal-side SDK, the terminal processor usage rate when the terminal uses the terminal-side SDK can be detected, and if the limit is exceeded, the cloud-side SDK can be switched to be used, so that the powerful computing resources of the cloud are used to respond to the operation of the user, so that the application running can be guaranteed on the basis of avoiding excessive occupation of terminal hardware resources by the application running.

[0037] Corresponding to the above-mentioned implementation manner 1, in one embodiment of the method in the above-mentioned first aspect, the first SDK is integrated in the target application; the application use method further comprises: in the process of using the cloud-deployed first SDK, detecting the response delay of the cloud-deployed first SDK; if the detected response delay is greater than or equal to the second threshold value, stopping using the cloud-deployed first SDK, and executing the processing for responding to the first use operation by using the terminal-deployed first SDK.

[0038] The first SDK can be integrated in the target application and its proxy application, that is, the first SDK (which can be a first-type SDK or a second-type SDK) relied on by the application is deployed on the terminal and the cloud, so that the use of the terminal-side SDK or the cloud-side SDK can be switched (that is, automatically switched) as needed based on the response delay.

[0039] When the terminal uses the cloud-side SDK, the response delay when the terminal uses the cloud-side SDK can be detected, and if the limit is exceeded, the terminal-side SDK can be switched to be used to respond to the operation of the user, so as to avoid that the use of the cloud-side SDK causes the application delay to be too large and affects the user experience.

[0040] Corresponding to the above-mentioned implementation manner 2, in one embodiment of the method in the above-mentioned first aspect, the first SDK is not integrated in the target application. Since the first SDK is only deployed on the cloud and is not deployed on the terminal, if the user uses the capability of the first SDK, the terminal directly uses the cloud-deployed first SDK.

[0041] Feasibly, in order to utilize the powerful computing resources of the cloud, the first SDK only deployed on the cloud can be a first-type SDK, such as a face recognition SDK, and can be a second-type SDK, such as an instant messaging SDK.

[0042] Feasibly, in order to utilize the powerful storage resources of the cloud, the first SDK only deployed on the cloud can be a third-type SDK, such as a map SDK.

[0043] Feasibly, in order to utilize the SDK upgrade feature of the cloud, the first SDK only deployed on the cloud can be a fourth-type SDK.

[0044] For the SDK upgrade scenario, in one embodiment of the method of the first aspect described above, the first information is obtained by the cloud according to the first SDK of the first version deployed to process the first use request; after obtaining the first use operation on the target application, the application use method further includes: obtaining a second use operation on the target application; if the second use operation is used to request to use the first SDK, the first SDK deployed by the cloud is used by sending a second use request for the first SDK to the cloud; receiving the second information sent by the cloud, the second information is obtained by the cloud according to the first SDK of the second version deployed to process the second use request; according to the second information, the processing for responding to the second use operation is executed.

[0045] Before the SDK upgrade on the cloud side, if the user uses the SDK on the cloud side, the terminal uses the capability before the SDK upgrade to respond to the user operation, and after the SDK upgrade on the cloud side, if the user uses the SDK on the cloud side, the terminal uses the capability after the SDK upgrade to respond to the user operation. In this way, in the above-mentioned implementation mode 2, the application developer can update and deploy the upgraded SDK on the cloud, so that the user can use the capability of the upgraded SDK without changing the terminal application and without user awareness.

[0046] To support the terminal to request to use the SDK deployed on the cloud through the network, the cloud can provide the terminal with a set of operation instructions for using the SDK on the cloud side. In this way, in one embodiment of the method of the first aspect described above, sending the first use request for the first SDK to the cloud includes: according to the first use operation and according to the set of operation instructions for using the first SDK provided by the cloud, sending use information to the cloud; the first information is obtained by the cloud according to the first SDK deployed to process the use information.

[0047] To utilize the general capability provided by the terminal, the interface interaction SDK relied on by the application can be deployed on the terminal, and when the user uses the capability of the interface interaction SDK, the terminal can directly use the interface interaction SDK deployed on the terminal to quickly respond to the user operation. In this way, in one embodiment of the method of the first aspect described above, the second SDK is integrated in the target application, and the second SDK is not integrated in the proxy application; the application use method further includes: if the first use operation is used to request to use the second SDK, the second SDK deployed on the terminal is used to execute the processing for responding to the first use operation.

[0048] In an embodiment, the second SDK can be any one of the SDKs that the target application depends on and is deployed only on the terminal, such as the fifth type of SDK. In a second aspect, an application usage method is provided, which is applied to a cloud end, the cloud end is deployed with a proxy application of a target application, the proxy application is integrated with a first SDK, and the target application is installed on a terminal. The method includes: receiving a first usage request for the first SDK sent by the terminal; processing the first usage request according to the deployed first SDK to obtain first information; and sending the first information to the terminal.

[0049] In an embodiment, the target application is installed on a terminal, a proxy application of the target application is deployed on a cloud end, the proxy application is integrated with one or more SDKs that the target application depends on, and thus the application can be used based on the cooperation of the terminal and the cloud end. The application usage processing procedure of the cloud end corresponds to the application usage processing procedure of the terminal, and specific technical implementation and technical effects can be referred to the content in the first aspect, which will not be described herein.

[0050] In an embodiment of the method in the second aspect, the first information is obtained by the cloud end processing the first usage request according to the first SDK of the first version. After receiving the first usage request for the first SDK sent by the terminal, the application usage method further includes: receiving update information for the first SDK; performing update processing according to the update information to update the deployed first SDK from the first version to the second version; after the update processing is completed, receiving a second usage request for the first SDK sent by the terminal; processing the second usage request according to the first SDK of the second version to obtain second information; and sending the second information to the terminal.

[0051] In an embodiment of the method in the second aspect, the application usage method further includes: after the proxy application is deployed on the cloud end, sending a set of operation instructions for using the first SDK to the terminal; and the first usage request includes usage information obtained by the terminal according to the set of operation instructions.

[0052] In a third aspect, an embodiment of the present application provides a terminal, the terminal is installed with a target application, a proxy application of the target application is deployed on a cloud end, and the proxy application is integrated with a first SDK. The terminal includes: an acquisition module, configured to acquire a first usage operation for the target application; a sending module, configured to, if the first usage operation is used to request to use the first SDK, send a first usage request for the first SDK to the cloud end to use the first SDK deployed on the cloud end; a receiving module, configured to receive first information sent by the cloud end, the first information is obtained by the cloud end processing the first usage request according to the deployed first SDK; and a processing module, configured to execute processing for responding to the first usage operation according to the first information.

[0053] In a fourth aspect, an embodiment of the present application provides a terminal, the terminal comprising one or more memories for storing computer program instructions, and one or more processors, wherein when the computer program instructions are executed by the one or more processors, the terminal is triggered to perform the method of any one of the first aspect.

[0054] In a fifth aspect, an embodiment of the present application provides a cloud, the cloud deploying a proxy application of a target application, the proxy application integrating a first SDK, the target application being installed in a terminal, the cloud comprising: a receiving module configured to receive a first use request for the first SDK sent by the terminal; a processing module configured to process the first use request according to the deployed first SDK to obtain first information; and a sending module configured to send the first information to the terminal.

[0055] In a sixth aspect, an embodiment of the present application provides a cloud, the cloud comprising one or more memories for storing computer program instructions, and one or more processors, wherein when the computer program instructions are executed by the one or more processors, the cloud is triggered to perform the method of any one of the second aspect.

[0056] In a seventh aspect, an embodiment of the present application provides an application use system, comprising: the terminal of the third aspect or the fourth aspect, and the cloud of the fifth aspect or the sixth aspect.

[0057] In an eighth aspect, an embodiment of the present application provides an electronic chip, comprising: a processor configured to execute computer program instructions stored on a memory, wherein when the computer program instructions are executed by the processor, the electronic chip is triggered to perform the method of any one of the first aspect.

[0058] In a ninth aspect, an embodiment of the present application provides an electronic chip, comprising: a processor configured to execute computer program instructions stored on a memory, wherein when the computer program instructions are executed by the processor, the electronic chip is triggered to perform the method of any one of the second aspect.

[0059] In a tenth aspect, an embodiment of the present application provides a computer readable storage medium, the computer readable storage medium storing a computer program, and when the computer program runs on a computer, the computer is caused to perform the method of any one of the first aspect.

[0060] In an eleventh aspect, an embodiment of the present application provides a computer readable storage medium, the computer readable storage medium storing a computer program, and when the computer program runs on a computer, the computer is caused to perform the method of any one of the second aspect.

[0061] In a twelfth aspect, an embodiment of the present application provides a computer program product, which comprises a computer program, and when the computer program is run on a computer, the computer program causes the computer to execute the method in any one of the first aspect.

[0062] In a thirteenth aspect, an embodiment of the present application provides a computer program product, which comprises a computer program, and when the computer program is run on a computer, the computer program causes the computer to execute the method in any one of the second aspect.

[0063] The technical effects of the foregoing aspects can be referred to each other, and will not be repeated here. BRIEF DESCRIPTION OF DRAWINGS

[0064] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings needed in the embodiments will be briefly introduced as follows.

[0065] FIG. 1 is a schematic diagram of deploying an application integrated with an SDK on a user terminal device in prior art 1;

[0066] FIG. 2 is a schematic diagram of deploying an application integrated with an SDK on a cloud phone in prior art 2;

[0067] FIGS. 3a-3c are schematic diagrams of three SDK deployment modes provided by an embodiment of the present application;

[0068] FIGS. 3d-3f are schematic diagrams of specific feasible examples of the three SDK deployment modes provided by an embodiment of the present application;

[0069] FIG. 4 is a timing diagram of an application use flow provided by an embodiment of the present application;

[0070] FIG. 5 is a timing diagram of another application use flow provided by an embodiment of the present application;

[0071] FIG. 6 is a timing diagram of still another application use flow provided by an embodiment of the present application;

[0072] FIG. 7 is a flowchart of an application use method applied to a terminal and provided by an embodiment of the present application;

[0073] FIG. 8 is a flowchart of another application use method applied to a terminal and provided by an embodiment of the present application;

[0074] FIG. 9 is a flowchart of still another application use method applied to a terminal and provided by an embodiment of the present application;

[0075] FIG. 10 is a flowchart of an application use method applied to a cloud and provided by an embodiment of the present application;

[0076] FIG. 11 is a flowchart of another application use method applied to the cloud according to an embodiment of the present application;

[0077] FIG. 12 is a structural schematic diagram of an electronic device according to an embodiment of the present application. DETAILED DESCRIPTION

[0078] In order to better understand the technical solutions of the present application, the embodiments of the present application are described in detail below with reference to the drawings.

[0079] It should be clear that the described embodiments are only some of the embodiments of the present application, rather than all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative labor fall within the scope of protection of the present application.

[0080] The terms used in the embodiments of the present application are only for the purpose of describing the specific embodiments, and are not intended to limit the present application. The singular forms "a", "an" and "the" used in the embodiments of the present application and the appended claims are also intended to include the plural forms, unless the context clearly indicates otherwise.

[0081] It should be understood that the term "at least one" used herein means one or more, and "multiple" means two or more. The term "and / or" used herein is only a description of the association relationship of the associated objects, which means that there can be three relationships, for example, A and / or B can mean that A exists alone, A and B exist together, and B exists alone. Wherein A and B can be singular or plural. In addition, the character " / " in this paper generally represents an "or" relationship between the front and rear associated objects. "At least one of the following" and the like means any combination of these items, including any combination of single or multiple items. For example, at least one of a, b and c can mean a, b, c, a-b, a-c, b-c, or a-b-c, where a, b, and c can be single or multiple.

[0082] It should be understood that although the terms first, second, etc. may be used in the embodiments of the present application to describe the set threshold, these set thresholds should not be limited to these terms. These terms are only used to distinguish the set thresholds from each other. For example, the first set threshold can also be referred to as the second set threshold, and similarly, the second set threshold can also be referred to as the first set threshold without departing from the scope of the embodiments of the present application.

[0083] When developing an application, an application developer usually integrates the capabilities of multiple SDKs in the application to improve development efficiency, such as integrating a third-party payment SDK to implement user payment capabilities within the application, or integrating an instant messaging SDK to implement instant chat capabilities between users within the application.

[0084] In the related technology 1, when developing an application, an application developer can package all the full versions of the SDKs depended by the application into the application in the packaging stage, and then publish the application in an application store. A user can download the application in the application store and install the application on a terminal device of the user. In the process of running the installed application on the terminal device, if the use operation of the user on the application needs to use the capability of a certain SDK depended by the application, the terminal device can use the deployed SDK to respond to the operation of the user.

[0085] However, when the SDK depended by the application requires high computing power, it leads to that the application is strongly dependent on the hardware resources of the terminal device of the user, and the user experience is reduced.

[0086] In addition, considering that the SDK integrated by the current application cannot run independently of the application, and must be integrated into the application to be used, the more the SDK integrated by the application, the larger the application package will be, and the user storage space used will also increase. Therefore, in addition to the problem that the application is strongly dependent on the terminal hardware resources in the related technology 1, there is also the problem that the application occupies too much terminal storage space.

[0087] In addition, considering that the SDK integrated by the current application must be packaged into the application for publishing, after any SDK depended by the application is upgraded, the application must be repackaged and published, and the terminal user must update the application to use it. Therefore, when any SDK depended by the application is upgraded due to reasons such as problem repair, new features online, etc., the terminal user cannot update the application in time, which leads to the problem that the time required to experience the features after the SDK is upgraded is long, and the user stickiness is reduced. That is, the related technology 1 also has the problem that the user experience is affected by the frequent upgrade of the SDK.

[0088] Exemplarily, referring to the user mobile phone display interface shown in FIG. 1, in the related technology 1, the terminal 200 of the user can install the application 201, and the application 201 integrates all the SDKs depended, such as the map SDK 202, the instant messaging SDK 203 and the payment SDK 204. Since all the SDKs depended by the application 201 are deployed in the terminal 200, in the process of running the application 201 on the terminal 200, if the use operation of the user on the application 201 needs to use the capability of the map SDK 202, the terminal 200 can use the map SDK 202 to respond to the user demand. Similarly, if the use operation of the user on the application 201 needs to use the capability of other SDKs, the terminal 200 can correspondingly use other SDKs.

[0089] But if the instant messaging SDK 203 requires high computing power, the application 201 is strongly dependent on the hardware resources of the mobile phone; if the package of the map SDK 202 is large, the application 201 occupies a large amount of storage space of the mobile phone; and when any SDK is upgraded, the user needs to update the application, so the user experience is poor.

[0090] To solve the problems in related technology 1, there can be the following related technology 2: when developing an application, an application developer can package all SDKs and UI frameworks and other basic information that the application depends on into the application in the packaging stage, and then deploy the application on a cloud phone in the cloud. Users use the application running on the cloud phone through the cloud phone client provided by the application developer and deployed on the terminal device.

[0091] But since the entire application is deployed on the cloud phone side in the cloud, the network bandwidth requirement for the user is high, the delay is increased, and the user experience is affected. Furthermore, since the entire application is deployed on the cloud phone side in the cloud, the application developer will face an increase in cloud phone resource costs.

[0092] Referring to FIG. 2, in one example in related technology 2, a cloud phone client 205 is installed on a terminal 200, and a cloud phone server 220, i.e., a cloud, is deployed with cloud phones 1 to N, and each cloud phone is deployed with an application that integrates the SDKs it depends on, such as the map SDK and the payment SDK shown in FIG. 2. Among them, different cloud phones correspond to different cloud phone clients to support users using the applications deployed in the corresponding cloud phones through the cloud phone client installed on the user terminal.

[0093] As shown in FIG. 2, when a user of the terminal 200 needs to use an application, the user can send an instruction to the network 210 through the cloud phone client 205 to pass touch information to the cloud phone 1 through the network 210, and then the cloud phone 1 can respond to the received touch information. But since the entire application is deployed on the cloud phone side in the cloud, there is a problem of high network bandwidth requirement for the user and large delay, which affects the user experience.

[0094] Before introducing the technical implementation of the embodiments of the present application, some key terms are first explained.

[0095] Application / Proxy Application: The application and its proxy application are both software developed by the application developer for implementing specific capabilities for users to use. The application and its proxy application can both integrate the underlying information of the application-dependent UI framework. The UI framework in the application can be used for interface display to respond to user operations on the application. Compared with the UI framework in the application, the UI framework in the proxy application can be simplified to support the use of the terminal to the cloud-side SDK. The application developer can publish the developed application in the application market and other channels for users to download. Users can install the downloaded application on their own terminal devices. The application developer can deploy the developed proxy application on the cloud. That is, the application can be deployed on the terminal, and the proxy application can be deployed on the cloud.

[0096] User: The user can download and install the application developed by the application developer on their own terminal device through the application market and other channels, and then use the application, such as touch operation (such as clicking, sliding, etc.), key operation, etc.

[0097] Terminal: The terminal (or terminal side) is a device that can provide a running environment for the application, such as a mobile phone, a mobile tablet, a vehicle-mounted tablet, a watch, and other user terminal devices. In the embodiments of the present application, the user can operate the application installed on the terminal through touch, key, and other methods to use the general capabilities provided by the application on the terminal and the high-computing power capabilities provided by the proxy application on the cloud.

[0098] Cloud: The cloud (or cloud side) provides a running environment for the SDK (such as a face recognition SDK) relied on by the terminal-side application, and provides a way for the terminal-side application to use (or access) the cloud-side SDK capabilities, so that the terminal-side application can use the powerful computing power resources and storage resources of the cloud.

[0099] SDK: The SDK can be provided by a third-party manufacturer or self-developed by the application developer. The SDK can be integrated in the application / proxy application.

[0100] Based on the characteristics of the SDK, the application developer can artificially distinguish different types of SDKs, such as a first type of SDK (which can be a high-computing power requirement SDK, such as a high CPU usage rate requirement SDK, specifically such as a face recognition SDK), a second type of SDK (which can be a low response time requirement SDK, such as an instant messaging SDK), a third type of SDK (which can be a large package SDK, specifically such as a map SDK), a fourth type of SDK (which can be a frequently upgraded SDK), and a fifth type of SDK (which can be a general SDK that is not sensitive to computing power and response time, such as an interface interaction SDK).

[0101] Taking the first type of SDK as an example, the face recognition SDK has the characteristics of high computing power, but it can also have other characteristics (such as infrequent upgrades). Application developers can deploy it on the terminal and / or cloud based on the characteristics of the SDK.

[0102] In a feasible implementation, taking the map SDK as an example, if the package size of the map SDK is not less than the corresponding set threshold, the application developer can consider that the map SDK has the characteristic of a large package size, and thus deploy it as a third type of SDK. Feasibly, the set threshold can be set and adjusted by the application developer as needed.

[0103] Detect SDK: for switching to using a cloud-side SDK as needed when using an end-side SDK integrated in the application, and for switching to using an end-side SDK as needed when using a cloud-side SDK integrated in the proxy application by monitoring the response delay of the cloud-side SDK.

[0104] Operation instruction set: refers to the way in which the end-side application uses the cloud-side SDK to obtain a response result. The operation instruction set can be defined as: cmd inputKey inputValue (command file input key input value).

[0105] To address the problem that the application is strongly dependent on terminal hardware resources, the application embodiment provides an application use method based on end-cloud collaboration capability, wherein the application developer can integrate part of the SDKs (such as other SDKs except for interface interaction SDK, which can be deployed only on the terminal) or even all the SDKs relied on by the application in the proxy application of the application, and deploy the proxy application on the cloud, and integrate the basic information (such as UI framework) relied on by the application in the application, and the user can download and install the application to the terminal. In this way, by integrating the UI framework in the target application and deploying it on the terminal, the terminal can respond to the user's use operation of the target application based on the deployed UI framework and the use of the cloud-side SDK relied on by the target application, that is, the application embodiment can use the application based on the collaboration of the terminal and the cloud.

[0106] The application embodiment can use the application based on the end-cloud collaboration capability by installing the application on the terminal and deploying the SDK (such as face recognition SDK) relied on by the application on the cloud, so that the user can use the powerful computing resources of the cloud when using the application on the terminal, thereby avoiding the influence of the strong dependence of the application on the terminal hardware resources on the user experience.

[0107] Feasibly, to utilize the instant response capability of the terminal, the fifth type of SDK (such as interface interaction SDK) relied on by the application can be deployed on the terminal. The fifth type of SDK can have the characteristics of being insensitive to both CPU usage and response delay.

[0108] Feasibly, in order to utilize the powerful computing resources of the cloud, the first type of SDK and the second type of SDK relied on by the application can be deployed on the cloud to cope with the problem that the application is strongly dependent on terminal hardware resources.

[0109] Feasibly, in order to utilize the powerful storage resources of the cloud, the third type of SDK (such as a map SDK) relied on by the application can be deployed on the cloud to cope with the problem that the application occupies too much terminal storage space.

[0110] Feasibly, in order to utilize the SDK updating feature of the cloud, the fourth type of SDK relied on by the application can be deployed on the cloud to cope with the problem that the user experience is affected due to frequent upgrades of the SDK.

[0111] Exemplarily, the SDK deployed on the cloud can be a third-party payment SDK, an instant messaging SDK, a map SDK, a face recognition SDK, and the like.

[0112] Under the premise that the cloud is deployed with one or more SDKs relied on by the application, based on whether the terminal is also deployed with these SDKs, referring to FIGS. 3a-3c, the application use method of the embodiments of the present application can have the following implementation mode 1-implementation mode 3.

[0113] Implementation mode 1: The SDK relied on by the application deployed on the cloud is not only deployed on the cloud but also deployed on the terminal.

[0114] In addition, since the one or more SDKs relied on by the application are simultaneously deployed on the terminal and the cloud, the terminal can also be deployed with a functional module for realizing automatic switching of end-cloud collaboration capabilities (such as the detection SDK described above, or the automatic switching function realized through a developed process). When the user uses the capability of a certain SDK, the functional module can automatically switch between using the terminal-side SDK or the cloud-side SDK based on the terminal processor usage rate or response time delay of the SDK.

[0115] That is, in implementation mode 1, the terminal is deployed with an application, the application integrates the SDK relied on by the application, the terminal is also deployed with a functional module for realizing automatic switching of end-cloud collaboration capabilities, the cloud is deployed with a proxy application of the application, the proxy application integrates the SDK relied on by the application, and the SDK integrated in the application and the proxy application is partially or entirely the same.

[0116] Feasibly, in implementation mode 1, the first type of SDK and the second type of SDK relied on by the application can be simultaneously deployed on the terminal and the cloud.

[0117] Compared with the related art 1, deploying all application-dependent information on the terminal can cause the application to be strongly dependent on the terminal hardware resources, and the related art 2, deploying all application-dependent information on the cloud can cause high requirements on user network bandwidth and large time delay, and the implementation 1 can solve the problem of strong dependence of the application on the terminal hardware resources by deploying the application on the terminal, deploying the first type SDK and the second type SDK dependent on the application on the terminal and the cloud, and based on the automatic switching of the end-to-cloud collaboration capability, and there is no problem of high requirements on user network bandwidth and large time delay, so as to improve the user experience and reduce the cost of application developers.

[0118] In the implementation 1, the fifth type SDK dependent on the application can be deployed on the terminal. The embodiments of the present application do not limit whether the fifth type SDK is also deployed on the cloud.

[0119] For example, taking the SDK dependent on the application 312 as an example, the second SDK 313 belonging to the fifth type SDK, the first SDK 314 belonging to the first type SDK, and the third SDK 315 belonging to the second type SDK, the SDK deployment manner of the implementation 1 can be as shown in FIG. 3a. The deployment manner is only an example of the implementation 1, and does not limit it. For example, in other examples, the first SDK 314 and the third SDK 315 can also belong to the same type SDK, or the SDK dependent on the application 312 does not include the third SDK 315, or the third SDK 315 belongs to other types, etc.

[0120] Referring to FIG. 3a, the application developer 320 can integrate the first SDK 314 and the third SDK 315 dependent on the application 312 in the proxy application 322, and deploy the proxy application 322 on the cloud 321. The application developer 320 can integrate the second SDK 313, the first SDK 314, the third SDK 315, and the detection SDK 316 dependent on the application 312 in the application 312 and publish it. The user 310 downloads and installs the application 312 on the terminal 311. To support the terminal 311 to request to use the SDK deployed on the cloud 321 through the network, the cloud 321 can provide the terminal 311 with a set of operation instructions.

[0121] In a feasible example, taking the second SDK 313 as the interface interaction SDK, the first SDK 314 as the face recognition SDK, and the third SDK 315 as the instant messaging SDK as an example, the SDK deployment manner shown in FIG. 3a can be specifically as shown in FIG. 3d.

[0122] In the process of using the application 312 by the user, if the user uses the capability of the second SDK 313, the application 312 can directly use the second SDK 313 deployed on the terminal 311.

[0123] For example, in the process of using the application 312, if the user uses the capability of the first SDK 314, the application 312 can directly use the first SDK 314 deployed by the terminal 311, or use the first SDK 314 deployed by the cloud 321 according to the operation instruction set provided by the cloud 321.

[0124] In one embodiment, the terminal can obtain usage information according to the operation instruction set provided by the cloud in response to the user's usage operation of the application, and send the usage information to the cloud through the operation instruction, so that the cloud returns a response result according to the usage information, and then the terminal performs corresponding processing according to the response result sent by the cloud to respond to the user's usage operation.

[0125] For example, if the user performs a click operation on the payment control displayed by the terminal, the click operation uses the payment SDK relied on by the application, the terminal can obtain usage information such as payment amount and payment parties according to the operation instruction set, and send the usage information to the cloud, and then display the response result returned by the cloud in combination with the UI framework deployed by the terminal.

[0126] In the process of using the first SDK 314 deployed by the terminal 311 by the application 312, the detection SDK 316 can detect the CPU usage rate of the first SDK 314, and if the detected CPU usage rate exceeds a corresponding threshold (such as 80%), the first SDK 314 deployed by the cloud 321 is automatically switched to be used.

[0127] In the process of using the first SDK 314 deployed by the cloud 321 by the application 312, the detection SDK 316 can detect the response delay of the first SDK 314, and if the detected response delay exceeds a corresponding threshold (such as 2s), the first SDK 314 deployed by the terminal 311 is automatically switched to be used.

[0128] Based on the same implementation logic, on-demand switching use of the third SDK 315 deployed by the terminal 311 and the third SDK 315 deployed by the cloud 321 can also be implemented, which is not described here.

[0129] Based on the SDK deployment mode shown in FIG. 3a, referring to FIG. 4, the process of deploying the SDK relied on by the application 312 and using the application 312 can include the following steps:

[0130] a1) Deploy the proxy application 322 in the cloud 321.

[0131] Step a11, the application developer 320 integrates the first SDK 314 and the third SDK 315 relied by the application 312 in the proxy application 322, and deploys the proxy application 322 to the cloud 321.

[0132] Step a12, the cloud 321 runs the proxy application 322.

[0133] In this step, the cloud 321 provides a running environment for the proxy application 322.

[0134] Feasibly, the proxy application 322 can be deployed to the cloud 321 by the application developer 320.

[0135] Step a13, the cloud 321 obtains an operation instruction set for the application 312 to use the cloud-side SDK (i.e. the first SDK 314 and the third SDK 315).

[0136] Feasibly, the cloud 321 can generate the operation instruction set after running the proxy application 322, and the operation instruction set can be used by the application 312 to use the first SDK 314 and the third SDK 315 deployed by the cloud 321. The cloud 321 can provide the operation instruction set to any terminal installing the application 312.

[0137] In a feasible implementation, the terminal 311 can request the operation instruction set from the cloud 321 after deploying the application 312. The cloud 321 can send the operation instruction set to the terminal 311 in response to the request.a2) Deploy the application 312 on the terminal 311.

[0138] Step a21, the application developer 320 integrates the second SDK 313, the first SDK 314, the third SDK 315 and the detection SDK 316 relied by the application 312 in the application 312, and provides the application 312 to the user 310.

[0139] For any SDK deployed on the terminal and the cloud, the detection SDK has the monitoring capability of the CPU usage and the response time delay of the SDK when the SDK is used on the terminal.

[0140] If the CPU usage when the terminal uses the terminal-side SDK exceeds the usage threshold, the capability of using the cloud-side SDK can be automatically switched to, so as to avoid the application from occupying too much terminal hardware resource and affecting the user experience by the automatically switched terminal-cloud collaborative capability. Feasibly, the usage threshold can be flexibly configured by the application developer as needed, such as 80%.

[0141] If the response delay of the terminal when using the cloud-side SDK exceeds the delay threshold, the terminal can automatically switch to using the end-side SDK to avoid affecting the user experience by using the automatically switched end-cloud collaborative capability to avoid application response delay. In practice, the delay threshold can be flexibly configured by the application developer as needed, such as 2s.

[0142] In other embodiments of the present application, step a21 can be performed before step a11 or simultaneously, and this is not limited.

[0143] Step a22, the user 310 installs the application 312 on the terminal 311.

[0144] a3) using the application 312.

[0145] Step a31, the terminal 311 runs the application 312.

[0146] In practice, the user 310 can download and install the application 312 on the terminal 311.

[0147] Step a32, the terminal 311 detects the use operation of the user 310 on the application 312.

[0148] In practice, the user can use the application based on the terminal device through touch, key, and other operation methods.

[0149] Step a33, if the use operation is used to request the use of the second SDK 313, the terminal 311 uses the second SDK 313 deployed on the terminal 311.

[0150] For the second SDK 313 deployed only on the terminal 311, the terminal can directly use the end-side SDK to respond to the user's operation.

[0151] For the first SDK 314 and the third SDK 315 deployed on the terminal 311 and the cloud 321, the terminal can use the end-side SDK or the cloud-side SDK to respond to the user's operation.

[0152] Step a34, in the process of using the first SDK 314 / third SDK 315 deployed on the terminal 311 by the terminal 311, the terminal 311 detects the CPU usage of the used SDK by running the detection SDK 316.

[0153] Step a35, if the detected CPU usage exceeds the corresponding threshold, the terminal 311 uses the first SDK 314 / third SDK 315 deployed on the cloud 321 according to the operation instruction set.

[0154] For example, in the process that the terminal 311 uses the first SDK 314 deployed by the terminal 311, if the terminal 311 detects that the CPU usage of the terminal 311 caused by the first SDK 314 deployed by the terminal 311 exceeds 80%, the terminal 311 automatically switches to use the first SDK 314 deployed by the cloud 321.

[0155] This step is based on the CPU usage, and is used to realize the on-demand switching of the end-cloud collaborative capability from using the terminal-side SDK to using the cloud-side SDK. After switching to use the cloud-side SDK, the response delay of the used cloud-side SDK can be continuously detected, and the on-demand switching of the end-cloud collaborative capability from using the cloud-side SDK to using the terminal-side SDK can be performed based on the detection result.

[0156] When the application-dependent SDK requires high computing power, the CPU usage can usually be detected to exceed the limit, and then the cloud-side SDK can be switched to use, so as to use the powerful computing power resources of the cloud to respond to the operation of the user. In this way, the excessive occupation of the terminal hardware resources by the application running can be avoided on the basis of ensuring the running of the application.

[0157] In step a36, in the process that the terminal 311 uses the first SDK 314 / third SDK 315 deployed by the cloud 321, the terminal 311 detects the response delay of the used SDK by running the detection SDK 316. In step a37, if the detected response delay exceeds the corresponding threshold, the terminal 311 uses the first SDK 314 / third SDK 315 deployed by the terminal 311.

[0158] It is mentioned above that in response to the use operation of the user on the application, the terminal can obtain the use information according to the operation instruction set provided by the cloud, and send the use information to the cloud through the operation instruction, and then perform corresponding processing according to the response result returned by the cloud. Based on this, in a feasible implementation manner, the detection SDK 316 in the terminal 311 can detect whether the cloud 321 returns the response result within the required time limit (such as 2s) after the terminal 311 sends the use information. If the cloud 321 does not return the response result within the required time limit, it can be indicated that the response delay exceeds the corresponding threshold, and otherwise, if the cloud 321 returns the response result within the required time limit, it can be indicated that the response delay does not exceed the corresponding threshold.

[0159] This step is based on the response delay, and is used to realize the on-demand switching of the end-cloud collaborative capability from using the cloud-side SDK to using the terminal-side SDK. After switching to use the terminal-side SDK, the CPU usage of the used terminal-side SDK can be continuously detected, and the on-demand switching of the end-cloud collaborative capability from using the terminal-side SDK to using the cloud-side SDK can be performed based on the detection result.

[0160] During the use of the cloud-side SDK, if the network environment of the terminal device is poor, the response time delay can be detected to be out of limit, indicating that the cloud-side SDK is not suitable for use at present, and then the terminal device can switch to use the terminal-side SDK to respond to the operation of the user, so as to avoid the problem that the application time delay is large due to the poor network environment, thereby affecting the user experience.

[0161] In addition, in a feasible implementation manner, the terminal device can also implement on-demand switching of the terminal-cloud collaborative capability based on a set switching strategy, so as to avoid frequent switching operations in a short time.

[0162] In other embodiments of the present application, step a36 can be performed before step a34 or simultaneously (for example, the terminal device 311 can simultaneously use the first SDK 314 deployed by the terminal device 311 and the third SDK 315 deployed by the cloud 321), and no limitation is made in this regard.

[0163] In the implementation process shown in FIG. 4, the application developer deploys the SDK relied on by the application on the cloud side to utilize the powerful computing resources of the cloud, and monitors the CPU usage and response time delay of the SDK during the running of the application to automatically determine whether to use the capability of the cloud-side SDK, so as to implement on-demand switching of the terminal-cloud collaborative capability. In this way, not only can the over-occupancy of the terminal hardware resources by the application running be avoided on the basis of ensuring the running of the application, but also the problem that the application time delay is large due to the use of the cloud-side SDK can be avoided, thereby affecting the user experience.

[0164] Implementation manner 2: The SDK relied on by the application and deployed on the cloud is only deployed on the cloud and is not deployed on the terminal device.

[0165] That is, in the implementation manner 2, the terminal device is deployed with the application, the cloud is deployed with the proxy application of the application, the SDK relied on by the application is integrated in the proxy application, and the SDK integrated in the proxy application is not integrated in the application. When the user uses the capability of the SDK deployed on the cloud, the application directly uses the SDK deployed on the cloud to respond to the user demand.

[0166] Feasibly, in the implementation manner 2, the first type SDK, the second type SDK, the third type SDK, and the fourth type SDK relied on by the application can be only deployed on the cloud.

[0167] Compared with the related art 1 in which the information relied on by the application is completely deployed on the terminal device, which causes the application to be strongly dependent on the terminal hardware resources, the implementation manner 2 deploys the application on the terminal device, and only deploys the first type SDK and the second type SDK relied on by the application on the cloud, so as to utilize the powerful computing resources of the cloud. Therefore, the terminal-cloud collaborative capability can cope with the problem that the application is strongly dependent on the terminal hardware resources, and thus the user experience can be improved.

[0168] Compared with the related art 1, deploying all application dependent information on the terminal will cause the application to occupy too much terminal storage space. The implementation manner 2 deploys the application on the terminal, and only deploys the third type of SDK (such as an SDK with a large package size) dependent on the application on the cloud, so as to utilize the powerful storage resources of the cloud. The application installed on the terminal can have a smaller package size, so that the terminal storage space used by the application is less. Therefore, the implementation manner 2 can cope with the problem of too much application occupying terminal storage space while realizing the end-cloud collaboration capability.

[0169] Compared with the related art 1, deploying all application dependent information on the terminal will cause the user experience to be affected by the long time-consuming of the characteristics after the SDK is upgraded. The implementation manner 2 deploys the application on the terminal, and only deploys the fourth type of SDK (such as an SDK that is frequently upgraded) dependent on the application on the cloud. Therefore, when the application developer upgrades the SDK, the application developer can update and deploy the upgraded SDK on the cloud. The user can use the capability of the upgraded SDK without any change in the terminal application, that is, without any user perception. Since the user has no operation and no perception of the upgrade of the SDK, the implementation manner 2 can cope with the problem of affecting the user experience due to the frequent upgrade of the SDK while realizing the end-cloud collaboration capability, and is beneficial to the promotion of the SDK of the third party manufacturer.

[0170] Feasibly, in the implementation manner 2, the fifth type of SDK dependent on the application can be only deployed on the terminal. In other embodiments, the fifth type of SDK can also be only deployed on the cloud.

[0171] Exemplarily, taking the SDK dependent on the application 312 as an example, the second SDK 313 belongs to the fifth type of SDK, the first SDK 314 belongs to the first type of SDK, and the third SDK 315 belongs to the second type of SDK. The SDK deployment manner of the implementation manner 2 can be as shown in FIG. 3b. The deployment manner is only an example of the implementation manner 2, and does not cause limitation. For example, in other examples, the first SDK 314 and the third SDK 315 can also belong to the same type of SDK, or the SDK dependent on the application 312 does not include the third SDK 315, or the third SDK 315 belongs to another type, and the like.

[0172] Referring to FIG. 3b, the application developer 320 can integrate the first SDK 314 and the third SDK 315 dependent on the application 312 in the proxy application 322, and deploy the proxy application 322 on the cloud 321. The application developer 320 can integrate the second SDK 313 dependent on the application 312 in the application 312 and publish it. The user 310 downloads and installs the application 312 on the terminal 311. To support the terminal 311 to request to use the SDK deployed on the cloud 321 through the network, the cloud 321 can provide the terminal 311 with a set of operation instructions.

[0173] In a feasible example, taking the second SDK 313 as an interface interaction SDK, the first SDK 314 as a face recognition SDK, and the third SDK 315 as an instant messaging SDK as examples, the SDK deployment mode shown in FIG. 3b can be specifically the SDK deployment mode shown in FIG. 3e.

[0174] In the process in which the user 310 uses the application 312, if the user 310 uses the capability of the second SDK 313, the application 312 can directly use the second SDK 313 deployed by the terminal 311.

[0175] In the process in which the user 310 uses the application 312, if the user 310 uses the capability of the first SDK 314, the application 312 can directly use the first SDK 314 deployed by the cloud 321 by sending operation instructions according to the operation instruction set provided by the cloud 321.

[0176] In the process in which the user 310 uses the application 312, if the user 310 uses the capability of the third SDK 315, the application 312 can directly use the third SDK 315 deployed by the cloud 321 by sending operation instructions according to the operation instruction set provided by the cloud 321.

[0177] Taking the upgrade of the first SDK 314 as an example, when the first SDK 314 deployed by the cloud 321 needs to be upgraded, the application developer 320 can update and deploy the upgraded SDK on the cloud, and the application 312 installed on the terminal 311 can remain unchanged. When the first SDK 314 before the upgrade is deployed on the cloud 321, the application 312 can use the capability of the first SDK 314 before the upgrade, and when the first SDK 314 after the upgrade is deployed on the cloud 321, the application 312 can use the capability of the first SDK 314 after the upgrade.

[0178] In an embodiment, the application developer can integrate the upgraded SDK into a new proxy application, and update and deploy the new proxy application on the cloud, so as to realize the upgrade of the SDK deployed on the cloud.

[0179] Based on the SDK deployment mode shown in FIG. 3b, referring to FIG. 5, the process of deploying the SDK relied on by the application 312 and using the application 312 can include the following steps:

[0180] b1) Deploying the proxy application 322 on the cloud 321.

[0181] Step b11, the application developer 320 integrates the first SDK 314 and the third SDK 315 relied on by the application 312 in the proxy application 322, and deploys the proxy application 322 on the cloud 321.

[0182] Step b12, the cloud 321 runs the agent application 322.

[0183] In this step, the cloud 321 provides a running environment for the agent application 322.

[0184] Feasibly, the agent application 322 can be deployed on the cloud 321 by the application developer 320.

[0185] Step b13, the cloud 321 obtains an operation instruction set for the application 312 to use the cloud-side SDK (i.e., the first SDK 314 and the third SDK 315).

[0186] For the implementation manner that the cloud provides the operation instruction set to the terminal, the related technical description of step a13 can be referred to.

[0187] b2) Deploy the application 312 on the terminal 311.

[0188] Step b21, the application developer 320 integrates the second SDK 313 relied by the application 312 in the application 312, and provides the application 312 to the user 310.

[0189] Step b22, the user 310 installs the application 312 on the terminal 311.

[0190] b3) Use the application 312.

[0191] Step b31, the terminal 311 runs the application 312.

[0192] Feasibly, the user 310 can download and install the application 312 on the terminal 311.

[0193] Step b32, the terminal 311 detects the use operation of the user 310 on the application 312.

[0194] Feasibly, the user can use the application based on the terminal device through touch, key and other operation manners.

[0195] Step b33, if the use operation is used to request to use the second SDK 313, the terminal 311 uses the second SDK 313 deployed on the terminal 311.

[0196] For the SDK deployed only on the terminal, i.e., the end-side SDK, the terminal can directly use the end-side SDK to respond to the operation of the user.

[0197] Step b34, if the use operation is used to request to use the first SDK 314 and / or the third SDK 315, the terminal 311 uses the first SDK 314 and / or the third SDK 315 deployed on the cloud 321 according to the operation instruction set.

[0198] For SDKs deployed only on the cloud, namely the first SDK 314 and the third SDK 315 , the terminal can directly use the cloud-side SDK to respond to user operations according to the operation instruction set.

[0199] In other embodiments of the present application, step b34 may be executed first and then step b33, or they may be executed simultaneously, and this is not limited.

[0200] Based on the implementation logic shown in Figure 5, application developers deploy the fifth type SDK that the application depends on only on the terminal, and deploy the first type SDK, third type SDK, etc. only on the cloud to utilize the powerful computing power and storage resources of the cloud. In this way, based on cloud collaboration, the size of the application package deployed on the terminal device can be reduced, avoiding excessive occupation of terminal storage space by the application.

[0201] Based on the SDK deployment method shown in FIG3b , referring to FIG6 , in an SDK upgrade scenario, the process of deploying the SDK that application 312 depends on and using application 312 may include the following steps:

[0202] c1) Deploy the proxy application 322 in the cloud 321 .

[0203] In step c11 , the application developer 320 integrates the 1.0 versions of the first SDK 314 and the third SDK 315 , which the application 312 depends on, into the proxy application 322 , and deploys the proxy application 322 on the cloud 321 .

[0204] This embodiment is used to illustrate the relevant technical implementation of upgrading the first SDK 314, so the version number of the third SDK 315 is not reflected. Based on the same implementation principle, in other embodiments, only the third SDK 315 can be upgraded or upgraded simultaneously.

[0205] In step c12, the cloud 321 runs the proxy application 322 (same as step b12).

[0206] That is, the cloud 321 currently deploys the first SDK 314 of version 1.0. When the user uses the cloud-side SDK, the first SDK 314 of version 1.0 is used.

[0207] In step c13, the cloud 321 obtains an operation instruction set for the application 312 to use the cloud-side SDK (same as step b13).

[0208] c2) Deploy application 312 on terminal 311 .

[0209] In step c21 , the application developer 320 integrates the second SDK 313 , on which the application 312 depends, into the application 312 , and provides the application 312 to the user 310 (same as step b21 ).

[0210] Step c22, the user 310 installs the application 312 on the terminal 311 (synchronous step b22).

[0211] c3) using the application 312.

[0212] Step c31, the terminal 311 runs the application 312 (synchronous step b31).

[0213] Step c32, the terminal 311 detects the use operation of the user 310 on the application 312 (synchronous step b32).

[0214] Step c33, if the use operation is used to request the use of the second SDK 313, the terminal 311 uses the second SDK 313 deployed by the terminal 311 (synchronous step b33).

[0215] Step c34, if the use operation is used to request the use of the first SDK 314 and / or the third SDK 315, the terminal 311 uses the first SDK 314 and / or the third SDK 315 of version 1.0 deployed by the cloud 321 according to the operation instruction set.

[0216] For the SDKs deployed only in the cloud, i.e. the first SDK 314 and the third SDK 315, the terminal can directly use the cloud-side SDK according to the operation instruction set to respond to the user's operation. Since the cloud 321 currently deploys the first SDK 314 of version 1.0, the user uses the capabilities of the first SDK 314 of version 1.0.

[0217] In other embodiments of the present application, step c34 can be performed before step c33 or performed synchronously, which is not limited.

[0218] c4) upgrading the first SDK 314 of version 1.0 deployed by the cloud 321.

[0219] Feasibly, the provider of the SDK can be a third-party manufacturer or an application developer. The following takes the third-party manufacturer upgrading its SDK as an example for description, and in other embodiments of the present application, the SDK of the application developer can also be upgraded.

[0220] Step c41, the third-party manufacturer 330 performs the upgrading process to obtain the first SDK 314 of version 2.0.

[0221] Feasibly, the provider of the SDK can upgrade the existing SDK based on factors such as problem repair or new features online, and the SDKs before and after the upgrade can have corresponding different version numbers. After upgrading the SDK based on these factors, the operation instruction set provided by the cloud can not change, the application related information deployed on the terminal can not change, and the user can not perceive the upgrading process of the SDK.

[0222] For example, the first SDK 314 can be a face recognition SDK. Since there are some problems in the internal algorithm of the 1.0 version of the face recognition SDK, the recognition rate is low, such as only 50%. After the third-party manufacturer of the face recognition SDK optimizes and fixes the problem, the 2.0 version of the face recognition SDK can be released to the application developer. The recognition rate of the 2.0 version of the face recognition SDK is higher, such as up to 90%.

[0223] Step c42, the third-party manufacturer 330 provides the 2.0 version of the first SDK 314 to the application developer 320.

[0224] Feasibly, the third-party manufacturer can integrate the upgraded SDK into a new proxy application and provide the new proxy application to the application developer. The application developer can deploy the new proxy application to the cloud, thereby realizing the upgrade of the cloud-side SDK.

[0225] Step c43, the application developer 320 deploys the 2.0 version of the first SDK 314 to the cloud 321. In this way, the cloud 321 can no longer deploy the 1.0 version of the first SDK 314. When the user uses the cloud-side SDK again, the ability of the 2.0 version of the first SDK 314 is used.

[0226] c5) using the application 312 again.

[0227] Step c51, the terminal 311 detects the use operation of the user 310 on the application 312.

[0228] Step c52, if the use operation is used to request the use of the second SDK 313, the terminal 311 uses the second SDK 313 deployed by the terminal 311.

[0229] Step c53, if the use operation is used to request the use of the first SDK 314 and / or the third SDK 315, the terminal 311 uses the 2.0 version of the first SDK 314 and / or the third SDK 315 deployed by the cloud 321 according to the operation instruction set.

[0230] For the SDK only deployed in the cloud, the terminal can directly use the cloud-side SDK according to the operation instruction set to respond to the operation of the user. Since the cloud 321 currently deploys the 2.0 version of the first SDK 314, the user uses the ability of the 2.0 version of the first SDK 314.

[0231] Based on the implementation logic shown in FIG. 6, the application developer deploys the fifth type of SDK relied on by the application only on the terminal, and deploys the first type of SDK, the third type of SDK, etc. only on the cloud, so as to utilize the powerful computing resources and storage resources of the cloud. In this way, on the basis of cloud collaboration, the application package size deployed on the terminal device can be reduced, and excessive occupation of the terminal storage space by the application can be avoided.

[0232] In addition, when the cloud-side SDK needs to be upgraded, the application developer can deploy the new SDK on the cloud, and then the user can use the capabilities of the upgraded SDK without being aware of the upgrade process. In this way, the frequent upgrade of the application SDK can be avoided, and the user experience can be improved.

[0233] Implementation manner 3: a combination of implementation manner 1 and implementation manner 2, that is, a part of the SDK relied on by the application and deployed on the cloud is deployed on both the cloud and the terminal, and the terminal is further deployed with a function module to realize automatic switching of the end-to-cloud collaborative capability of the SDK, and another part of the SDK relied on by the application and deployed on the cloud is only deployed on the cloud and not deployed on the terminal.

[0234] Feasibly, in implementation manner 3, the first type of SDK and the second type of SDK relied on by the application can be deployed on both the terminal and the cloud, the third type of SDK and the fourth type of SDK relied on by the application can be deployed only on the cloud, and the fifth type of SDK relied on by the application can be deployed only on the terminal.

[0235] Exemplarily, taking the SDK relied on by the application as the second SDK 313 belonging to the fifth type of SDK, the first SDK 314 belonging to the first type of SDK, the third SDK 315 belonging to the second type of SDK, the fourth SDK 317 belonging to the third type of SDK, and the fifth SDK 318 belonging to the fourth type of SDK as an example, the SDK deployment manner of implementation manner 3 can be as shown in FIG. 3c. The deployment manner is only an example of implementation manner 3, and does not limit implementation manner 3. For example, in other examples, the first SDK 314 and the third SDK 315 can belong to the same type of SDK, or the SDK relied on by the application 312 does not include the third SDK 315, or the third SDK 315 belongs to another type, etc.

[0236] Referring to FIG. 3c, the application developer 320 can integrate the first SDK 314, the third SDK 315, the fourth SDK 317 and the fifth SDK 318 relied on by the application 312 in the proxy application 322, and deploy the proxy application 322 on the cloud 321. The application developer 320 can integrate the second SDK 313, the first SDK 314, the third SDK 315 and the detection SDK 316 relied on by the application 312 in the application 312 and publish it. The user 310 downloads and installs the application 312 on the terminal 311. To support the terminal 311 to request to use the SDK deployed on the cloud 321 through the network, the cloud 321 can provide the terminal 311 with a set of operation instructions.

[0237] In a feasible example, taking the second SDK 313 as the interface interaction SDK, the first SDK 314 as the face recognition SDK, the third SDK 315 as the instant messaging SDK, the fourth SDK 317 as the map SDK, and the fifth SDK 318 as the payment SDK, the SDK deployment mode shown in FIG. 3c can be specifically the SDK deployment mode shown in FIG. 3f.

[0238] In the process of using the application 312 by the user, if the user uses the capability of the second SDK 313, the application 312 can directly use the second SDK 313 deployed on the terminal 311; if the user uses the capability of the fourth SDK 317 and the fifth SDK 318, the application 312 can use the fourth SDK 317 and the fifth SDK 318 deployed on the cloud 321 by sending operation instructions according to the set of operation instructions provided by the cloud 321.

[0239] Taking the first SDK 314 as an example, in the process of using the application 312 by the user, if the user uses the capability of the first SDK 314, the application 312 can directly use the first SDK 314 deployed on the terminal 311, or use the first SDK 314 deployed on the cloud 321 according to the set of operation instructions provided by the cloud 321, and in this process, the detection SDK 316 detects the CPU usage and response time delay of the first SDK 314, and makes on-demand switching between using the cloud-side SDK and the terminal-side SDK.

[0240] Taking the upgrade of the fifth SDK 318 as an example, when the fifth SDK 318 deployed on the cloud 321 needs to be upgraded, the application developer can update and deploy the upgraded SDK on the cloud, while the application 312 installed on the terminal 311 remains unchanged. Before / after the upgrade of the cloud-side SDK, the application 312 corresponds to the capability of using the upgraded cloud-side SDK.

[0241] The technical implementation and technical effects of this implementation manner 3 can refer to the related descriptions of implementation manner 1 and implementation manner 2, which are not described here.

[0242] Based on the technical implementation of the above-mentioned implementation manners 1-3, referring to FIG. 7, one embodiment of the present application provides an application use method, which is applied to a terminal, the terminal is installed with a target application, a proxy application of the target application is deployed on a cloud, and the proxy application is integrated with a first SDK; the method can include the following steps 701-704:

[0243] Step 701: A first use operation on the target application is acquired.

[0244] Step 702: If the first use operation is used to request to use the first SDK, a first use request for the first SDK is sent to the cloud to use the first SDK deployed on the cloud.

[0245] Feasibly, the first SDK deployed on the cloud can be a first type SDK, a second type SDK, a third type SDK, or a fourth type SDK, etc. that the application depends on.

[0246] Step 703: First information sent by the cloud is received, the first information is obtained by the cloud according to the first SDK deployed by the cloud to process the first use request.

[0247] In one embodiment, the step of sending the first use request for the first SDK to the cloud includes: sending use information to the cloud according to the first use operation and according to operation instruction sets provided by the cloud for using the first SDK; and the first information is obtained by the cloud according to the first SDK deployed by the cloud to process the use information.

[0248] Step 704: According to the first information, processing for responding to the first use operation is executed.

[0249] In one embodiment, the second SDK is integrated in the target application, and the second SDK is not integrated in the proxy application; therefore, the application use method shown in FIG. 7 can further include: if the first use operation is used to request to use the second SDK, the processing for responding to the first use operation is executed by using the second SDK deployed on the terminal.

[0250] Feasibly, the second SDK can be a fifth type SDK of the application.

[0251] In the embodiment shown in FIG. 7, the target application is installed on the terminal, and the proxy application of the target application is deployed on the cloud, and one or more SDKs relied on by the target application are integrated in the proxy application, so that the application can be used based on the cooperation of the terminal and the cloud. By installing the target application on the terminal and deploying part or even all of the SDKs relied on by the target application on the cloud, the powerful hardware resources of the cloud can be used to use the target application, and the limitation on the hardware resources of the user terminal device is reduced.

[0252] The specific technical implementation of the embodiment shown in FIG. 7 can refer to the related technical description in the summary of the application and other embodiments of the application, which will not be repeated here.

[0253] Feasibly, the application use method shown in FIG. 7 can be applied to any one of the above-mentioned implementation modes 1-3.

[0254] Corresponding to the above-mentioned implementation mode 1 or implementation mode 3, referring to FIG. 8, one embodiment of the application provides an application use method, which is applied to a terminal, the terminal is installed with a target application, the target application is integrated with a first SDK, a proxy application of the target application is deployed on a cloud, and the proxy application is integrated with the first SDK; the method can include the following steps 801-807:

[0255] Step 801, a first use operation on the target application is obtained, and if the first use operation is used to request to use the first SDK, step 802 is executed.

[0256] Step 802, the first SDK deployed on the terminal is used to execute the processing for responding to the first use operation.

[0257] Step 803, in the process of using the first SDK deployed on the terminal, the terminal processor usage rate (X) of the first SDK deployed on the terminal is detected, if the detected terminal processor usage rate is greater than or equal to the first threshold value (X≥x), step 804 is executed, and if the detected terminal processor usage rate is less than the first threshold value (X

[0258] Step 804, the use of the first SDK deployed on the terminal is stopped, and the first use request for the first SDK is sent to the cloud to use the first SDK deployed on the cloud.

[0259] Step 805, in the process of using the first SDK deployed on the cloud, the response delay (Y) of the first SDK deployed on the cloud is detected, if the detected response delay is greater than or equal to the second threshold value (Y≥y), step 806 is executed, and if the detected response delay is less than the second threshold value (Y

[0260] Feasibly, if the time when the first message is received is the time corresponding to the second threshold being exceeded, it can be indicated that the detected response delay is less than the second threshold.

[0261] At step 806, the first SDK deployed in the cloud is stopped from being used, and step 802 is performed.

[0262] At step 807, according to the first information sent by the cloud, a process for responding to the first use operation is performed, and the first information is obtained by the cloud according to the first SDK deployed to process the first use request.

[0263] In the embodiment shown in FIG. 8, when the terminal uses the terminal-side SDK, the processor usage of the terminal when the terminal uses the terminal-side SDK can be detected, and if it is exceeded, the cloud-side SDK can be switched to be used to respond to the user's operation, so as to utilize the powerful computing resources of the cloud to respond to the user's operation, thereby avoiding excessive occupation of terminal hardware resources by the application running.

[0264] In addition, when the terminal uses the cloud-side SDK, the response delay of the terminal when the terminal uses the cloud-side SDK can be detected, and if it is exceeded, the terminal-side SDK can be switched to be used to respond to the user's operation, so as to avoid the application delay caused by using the cloud-side SDK from affecting the user experience.

[0265] The specific technical implementation of the embodiment shown in FIG. 8 can refer to the related technical description in the summary of the application and other embodiments of the application, and will not be repeated here.

[0266] Corresponding to the above-mentioned implementation mode 2 or implementation mode 3, one embodiment of the application provides an application use method, which is applied to a terminal, the terminal is installed with a target application, the target application does not integrate a first SDK, a proxy application of the target application is deployed in a cloud, and the proxy application integrates the first SDK; the method can include the above steps 701-704. The specific technical implementation of this embodiment can refer to the related technical description in the summary of the application and other embodiments of the application, and will not be repeated here.

[0267] In the implementation mode 2, since the terminal does not deploy the first SDK, when the first SDK needs to be used, the terminal always uses the first SDK deployed in the cloud. In this way, it is not necessary to deploy too many SDKs on the terminal.

[0268] Based on the application use method shown in FIG. 7, referring to FIG. 9, one embodiment of the application provides an application use method, which is applied to a terminal, the terminal is installed with a target application, a proxy application of the target application is deployed in a cloud, and the proxy application integrates a first SDK; the method can include the following steps 901-908:

[0269] Step 901, a first usage operation for the target application is acquired (step 701).

[0270] Step 902, if the first usage operation is used to request to use the first SDK, the first SDK deployed on the cloud is used by sending a first usage request for the first SDK to the cloud (step 702).

[0271] Step 903, the first information sent by the cloud is received, and the first information is obtained by the cloud according to the first SDK of the first version deployed to process the first usage request.

[0272] Step 904, according to the first information, the processing for responding to the first usage operation is executed (step 704).

[0273] Step 905, a second usage operation for the target application is acquired.

[0274] In other embodiments, step 905 can also be executed after step 901. During this period, the first SDK deployed on the cloud is upgraded in version.

[0275] Step 906, if the second usage operation is used to request to use the first SDK, the first SDK deployed on the cloud is used by sending a second usage request for the first SDK to the cloud.

[0276] Step 907, the second information sent by the cloud is received, and the second information is obtained by the cloud according to the first SDK of the second version deployed to process the second usage request.

[0277] Step 908, according to the second information, the processing for responding to the second usage operation is executed.

[0278] The application usage method shown in FIG. 9 can be applied to any one of the above-mentioned implementation modes 1-3.

[0279] The specific technical implementation of the embodiment shown in FIG. 9 can refer to the related technical description in the summary of the application and other embodiments of the application, which will not be repeated here.

[0280] Corresponding to the embodiment shown in FIG. 7, referring to FIG. 10, one embodiment of the application provides an application usage method, which is applied to the cloud, the cloud is deployed with a proxy application of a target application, the proxy application is integrated with a first SDK, the target application is installed on a terminal, and the method can include the following steps 1001-1003:

[0281] Step 1001, a first usage request for the first SDK sent by the terminal is received.

[0282] Step 1002, the first usage request is processed according to the first SDK deployed to obtain first information.

[0283] In one embodiment, the application using method further includes: after the agent application of the target application is deployed on the cloud, sending an operation instruction set for using the first SDK to the terminal; and wherein the first use request includes use information obtained by the terminal according to the operation instruction set.

[0284] Step 1003: sending the first information to the terminal.

[0285] In the embodiment shown in FIG. 10, the target application is installed on the terminal, and the agent application of the target application is deployed on the cloud, and one or more SDKs relied on by the target application are integrated in the agent application, so that the application can be used based on the cooperation of the terminal and the cloud. The application using process of the cloud corresponds to the application using process of the terminal, and the specific technical implementation and technical effects of the embodiment shown in FIG. 10 can be referred to the related description of the application using method applied to the terminal, which will not be repeated here.

[0286] Corresponding to the embodiment shown in FIG. 9, referring to FIG. 11, one embodiment of the present application provides an application using method, which is applied to the cloud, the cloud deploys an agent application of a target application, the agent application integrates a first SDK, and the target application is installed on a terminal. The method can include the following steps 1101-1108:

[0287] Step 1101: receiving a first use request for the first SDK sent by the terminal (synchronous with step 1001).

[0288] Step 1102: processing the first use request according to the first SDK of the first version deployed to obtain first information.

[0289] Step 1103: sending the first information to the terminal (synchronous with step 1003).

[0290] Step 1104: receiving update information for the first SDK.

[0291] In other embodiments, step 1104 can also be performed after step 1101 to update the version of the first SDK.

[0292] Step 1105: performing update processing according to the update information to update the deployed first SDK from the first version to the second version.

[0293] Step 1106: receiving a second use request for the first SDK sent by the terminal after the update processing is completed.

[0294] Step 1107: processing the second use request according to the first SDK of the second version deployed to obtain second information.

[0295] Step 1108, the second information is sent to the terminal.

[0296] The application usage processing procedure of the cloud corresponds to the application usage processing procedure of the terminal. The specific technical implementation and technical effects of the embodiment shown in FIG. 11 can refer to the related description of the application usage method applied to the terminal, and will not be repeated here.

[0297] The terminal in any embodiment of the present application can be an electronic device 100 shown in FIG. 12. FIG. 12 shows a structural schematic diagram of the electronic device 100.

[0298] The electronic device 100 can include a processor 110, an internal memory 121, an antenna 1, an antenna 2, a mobile communication module 150, a wireless communication module 160, a sensor module 180, a button 190, a display screen 194, and the like. The sensor module 180 can include a pressure sensor, a touch sensor, and the like.

[0299] It can be understood that the structure shown in the embodiments of the present application does not constitute a specific limitation on the electronic device 100. In other embodiments of the present application, the electronic device 100 can include more or fewer components than shown, or combine certain components, or split certain components, or different component arrangements. The components shown can be implemented in hardware, software, or a combination of software and hardware.

[0300] The processor 110 can include one or more processing units, for example: the processor 110 can include an application processor (application processor, AP), a modem processor, a graphics processor (graphics processing unit, GPU), an image signal processor (image signal processor, ISP), a controller, a video codec, a digital signal processor (digital signal processor, DSP), a baseband processor, and / or a neural network processing unit (neural-network processing unit, NPU), etc. Different processing units can be independent devices, or can be integrated in one or more processors. The controller can generate operation control signals according to instruction operation codes and timing signals to complete the control of fetching instructions and executing instructions.

[0301] In some embodiments, the processor 110 can be a system on chip (SOC, System on Chip), which can include a central processing unit (CPU) and can further include other types of processors. In some embodiments, the processor 110 can be a PWM control chip.

[0302] The processor 110 can also include necessary hardware accelerators or logic processing hardware circuits, such as ASIC, or one or more integrated circuits for controlling the execution of the technical solution program. In addition, the processor 110 can have the function of operating one or more software programs, which can be stored in a storage medium.

[0303] The processor 110 can also be provided with a memory for storing instructions and data. In some embodiments, the memory in the processor 110 is a cache memory. The memory can hold instructions or data that the processor 110 has just used or recycled. If the processor 110 needs to use the instructions or data again, it can be directly called from the memory. This avoids repeated access and reduces the waiting time of the processor 110, thus improving the efficiency of the system.

[0304] In some embodiments, the memory of the electronic device 100 can be a read-only memory (ROM), other types of static storage devices that can store static information and instructions, a random access memory (RAM) or other types of dynamic storage devices that can store information and instructions, an electrically erasable programmable read-only memory (EEPROM), or any computer-readable medium that can be used to carry or store desired program codes in the form of instructions or data structures and can be accessed by a computer.

[0305] In some embodiments, the processor 110 and the memory can be combined into one processing device, or can be independent components of each other, and the processor 110 can be used to execute the program code stored in the memory. In specific implementation, the memory can be integrated in the processor 110, or independent of the processor 110.

[0306] In some embodiments, the processor 110 can include one or more interfaces. The interfaces can include an inter-integrated circuit (I2C) interface, an inter-integrated circuit sound (I2S) interface, a pulse code modulation (PCM) interface, a universal asynchronous receiver / transmitter (UART) interface, a mobile industry processor interface (MIPI), a general-purpose input / output (GPIO) interface, a subscriber identity module (SIM) interface, and / or a universal serial bus (USB) interface, etc.

[0307] It can be understood that the interface connection relationship between the modules shown in the embodiments of the present application is only illustrative and does not constitute a structural limitation of the electronic device 100. In some other embodiments of the present application, the electronic device 100 can also use different interface connection modes or a combination of multiple interface connection modes in the above embodiments.

[0308] The wireless communication function of the electronic device 100 can be realized through the antenna 1, the antenna 2, the mobile communication module 150, the wireless communication module 160, the modem processor, and the baseband processor, etc. If the user uses the cloud-side SDK capability, the electronic device 100 can send operation instructions to the cloud to use the cloud-side SDK capability through the wireless communication function provided by the antenna 1 or the antenna 2, and receive the response result generated by the cloud-side SDK deployed by the cloud and returned by processing the operation instruction. The electronic device 100 can display the received response result on the display screen 194 to respond to the user's operation on the application.

[0309] The antenna 1 and the antenna 2 are used to transmit and receive electromagnetic wave signals. Each antenna in the electronic device 100 can be used to cover a single or multiple communication frequency bands. Different antennas can also be multiplexed to improve the utilization rate of the antennas. For example, the antenna 1 can be multiplexed as a diversity antenna of a wireless local area network. In some other embodiments, the antenna can be used in combination with a tuning switch.

[0310] The mobile communication module 150 can provide a solution for wireless communication including 2G / 3G / 4G / 5G, etc. applied to the electronic device 100. The mobile communication module 150 can include at least one filter, a switch, a power amplifier, a low noise amplifier (LNA), etc. The mobile communication module 150 can receive an electromagnetic wave by the antenna 1, and perform filtering, amplification, etc. on the received electromagnetic wave, and transfer the processed signal to the modem processor to be demodulated. The mobile communication module 150 can also amplify a signal modulated by the modem processor, and radiate the signal as an electromagnetic wave through the antenna 1. In some embodiments, at least part of the function modules of the mobile communication module 150 can be disposed in the processor 110. In some embodiments, at least part of the function modules of the mobile communication module 150 can be disposed in the same device as at least part of the modules of the processor 110.

[0311] The wireless communication module 160 can provide a solution for wireless communication including wireless local area networks (WLAN) (e.g., wireless fidelity (Wi-Fi) network), bluetooth (BT), global navigation satellite system (GNSS), frequency modulation (FM), near field communication (NFC), infrared (IR) technology, etc. applied to the electronic device 100. The wireless communication module 160 can be one or more devices integrated with at least one communication processing module. The wireless communication module 160 receives an electromagnetic wave via the antenna 2, performs frequency modulation and filtering on the electromagnetic wave signal, and transmits the processed signal to the processor 110. The wireless communication module 160 can also receive a signal to be transmitted from the processor 110, perform frequency modulation and amplification on the signal, and radiate the signal as an electromagnetic wave through the antenna 2.

[0312] In some embodiments, the antenna 1 and the mobile communication module 150 of the electronic device 100 are coupled, and the antenna 2 and the wireless communication module 160 are coupled, so that the electronic device 100 can communicate with a network and other devices through wireless communication technology. The wireless communication technology can include global system for mobile communications (GSM), general packet radio service (GPRS), code division multiple access (CDMA), wideband code division multiple access (WCDMA), time-division code division multiple access (TD-SCDMA), long term evolution (LTE), BT, GNSS, WLAN, NFC, FM, and / or IR technology, etc. The GNSS can include a global positioning system (GPS), a global navigation satellite system (GLONASS), a beidou navigation satellite system (BDS), a quasi-zenith satellite system (QZSS), and / or a satellite based augmentation systems (SBAS).

[0313] The electronic device 100 implements a display function through a GPU, a display screen 194, and an application processor, etc. The GPU is a microprocessor for image processing, which is connected to the display screen 194 and the application processor. The GPU is used to perform mathematical and geometric calculations for graphics rendering. The processor 110 can include one or more GPUs, which execute program instructions to generate or change display information.

[0314] The display screen 194 is configured to display images, videos, and the like. The display screen 194 includes a display panel. The display panel can be a liquid crystal display (LCD), an organic light-emitting diode (OLED), an active-matrix organic light-emitting diode (AMOLED), a flex light-emitting diode (FLED), a Miniled, a MicroLed, a Micro-oLed, a quantum dot light emitting diodes (QLED), or the like. In some embodiments, the electronic device 100 can include one or N display screens 194, where N is a positive integer greater than 1.

[0315] The internal memory 121 can be configured to store computer-executable program code including instructions. The internal memory 121 can include a program storage area and a data storage area. The program storage area can store an operating system, at least one application required by a function (such as a sound playing function, an image playing function, and the like), and the like. The data storage area can store data (such as audio data, a phone book, and the like) created during use of the electronic device 100, and the like. In addition, the internal memory 121 can include a high-speed random access memory, and can further include a non-volatile memory such as at least one of a magnetic disk storage device, a flash memory device, a universal flash storage (UFS), and the like. The processor 110 executes various function applications and data processing of the electronic device 100 by running instructions stored in the internal memory 121 and / or instructions stored in a memory disposed in the processor.

[0316] In practice, a user can download and install an application on the electronic device 100, and interface interaction SDK, UI framework, and the like information relied on by the application can be stored in the internal memory 121.

[0317] The pressure sensor is configured to sense a pressure signal and convert the pressure signal into an electrical signal. In some embodiments, the pressure sensor can be disposed on the display screen 194. There are many types of pressure sensors, such as a resistive pressure sensor, an inductive pressure sensor, a capacitive pressure sensor, and the like. When a touch operation is performed on the display screen 194, the electronic device 100 detects the intensity of the touch operation according to the pressure sensor. The electronic device 100 can also calculate the position of the touch according to the detection signal of the pressure sensor.

[0318] The touch sensor, also referred to as a "touch device". The touch sensor can be disposed on the display screen 194, and the touch sensor and the display screen 194 form a touch screen, also referred to as a "touch screen". The touch sensor is used to detect a touch operation acting on or near the touch sensor. The touch sensor can transmit the detected touch operation to the application processor to determine the touch event type. The visual output related to the touch operation can be provided through the display screen 194. In other embodiments, the touch sensor can also be disposed on the surface of the electronic device 100, which is different from the position where the display screen 194 is located. Feasibly, in the process of running the installed application by the electronic device 100, the user can use the application by clicking, sliding and other touch operations.

[0319] The keys 190 include a power-on key, a volume key, and the like. The keys 190 can be mechanical keys or touch keys. Feasibly, in the process of running the installed application by the electronic device 100, the user can use the application by operating the keys 190.

[0320] The software system of the electronic device 100 can adopt a layered architecture, an event-driven architecture, a microkernel architecture, a microservice architecture, or a cloud architecture.

[0321] The embodiments of the present application also provide an electronic chip, which is installed in a terminal device, and the electronic chip comprises a processor configured to execute computer program instructions stored in a memory, wherein when the computer program instructions are executed by the processor, the electronic chip triggers the terminal to execute the method steps provided by any method embodiment of the present application.

[0322] The embodiments of the present application also provide an electronic chip, which is installed in a server device, and the electronic chip comprises a processor configured to execute computer program instructions stored in a memory, wherein when the computer program instructions are executed by the processor, the electronic chip triggers the cloud to execute the method steps provided by any method embodiment of the present application.

[0323] The embodiments of the present application also provide a terminal device, which comprises a communication module, a memory configured to store computer program instructions, and a processor configured to execute the program instructions, wherein when the computer program instructions are executed by the processor, the terminal device triggers the terminal to execute the method steps provided by any method embodiment of the present application.

[0324] The embodiments of the present application also provide a server device, which comprises a communication module, a memory configured to store computer program instructions, and a processor configured to execute the program instructions, wherein when the computer program instructions are executed by the processor, the server device triggers the cloud to execute the method steps provided by any method embodiment of the present application.

[0325] Specifically, in an embodiment of the present application, one or more computer programs are stored in the memory of the terminal device, the one or more computer programs including instructions that, when executed by the device, cause the device to perform the method steps performed by the terminal according to the embodiments of the present application.

[0326] Specifically, in an embodiment of the present application, one or more computer programs are stored in the memory of the server device, the one or more computer programs including instructions that, when executed by the device, cause the device to perform the method steps performed by the cloud according to the embodiments of the present application.

[0327] Further, the devices, apparatuses, and modules illustrated in the embodiments of the present application can be specifically implemented by computer chips or entities, or by products with certain functions.

[0328] Those skilled in the art should understand that the embodiments of the present application can be provided as methods, apparatuses, or computer program products. Therefore, the present application can take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware aspects. Moreover, the present application can take the form of a computer program product implemented on one or more computer-usable storage media having computer-usable program code.

[0329] In several embodiments provided by the present application, any function if realized in the form of a software functional unit and sold or used as an independent product, can be stored in a computer-readable storage medium. Based on such an understanding, the technical solutions of the present application essentially or partially contribute to the prior art, or part of the technical solutions of the present application can be embodied in the form of a software product. The computer software product is stored in a storage medium, and includes several instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the methods described in the embodiments of the present application.

[0330] Specifically, the embodiments of the present application further provide a computer-readable storage medium, which stores a computer program. When the computer program runs on a computer, the computer is caused to execute the method steps performed by the terminal according to the embodiments of the present application.

[0331] Specifically, the embodiments of the present application further provide a computer-readable storage medium, which stores a computer program. When the computer program runs on a computer, the computer is caused to execute the method steps performed by the cloud according to the embodiments of the present application.

[0332] The embodiment of the present application further provides a computer program product, which comprises a computer program, and when the computer program runs on a computer, the computer program enables the computer to execute the method steps provided by the embodiment of the present application and executed by a terminal.

[0333] The embodiment of the present application further provides a computer program product, which comprises a computer program, and when the computer program runs on a computer, the computer program enables the computer to execute the method steps provided by the embodiment of the present application and executed by a cloud.

[0334] In several embodiments provided in the present application, it should be understood that the disclosed system, device and method can be implemented in other manners. For example, the described device embodiments are merely schematic, and the division of the units is merely a logical function division, and there can be another division manner in actual implementation, for example, a plurality of units or components can be combined or integrated into another system, or some features can be ignored or not executed. In addition, the displayed or discussed mutual couplings or direct couplings or communication connections can be indirect couplings or communication connections through some interfaces, devices or units, and can be electrical, mechanical or other forms.

[0335] The units described as separated components can or can not be physically separated, and the components displayed as units can or can not be physical units, i.e., can be located in one place, or can be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purposes of the embodiments.

[0336] In addition, each functional unit in the embodiments of the present application can be integrated in one processing unit, or each unit can exist physically, or two or more units can be integrated in one unit. The integrated unit can be implemented in the form of hardware, or in the form of hardware plus software function units.

[0337] The integrated unit in the form of software function units can be stored in a computer readable storage medium. The above-mentioned software function unit stored in a storage medium includes a plurality of instructions for enabling a computer device (which can be a personal computer, a server, or a network device, etc.) or a processor to execute part of the steps of the method described in the embodiments of the present application. The above-mentioned storage medium includes a U disk, a mobile hard disk, a read-only memory, a random access memory, a magnetic disk or an optical disk, and various program code storage media.

[0338] In the embodiments of the present application, the terms "comprising", "containing" or any other any other variant is intended to cover a non-exclusive inclusion, so that a process, method, article, or apparatus that comprises a list of elements not only includes those elements, but also includes other elements that are not expressly listed or other elements inherent in such process, method, article, or apparatus. Without more limitations, the element defined by the phrase "comprising a" does not exclude the presence of additional identical elements in the process, method, article, or apparatus that includes the element.

[0339] The present application can be described in the general context of computer-executable instructions, such as program modules, being executed by a computer. Generally, program modules include routines, programs, objects, components, data structures, and the like, that perform particular tasks or implement particular abstract data types. The present application can also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communication network. In a distributed computing environment, program modules can be located in both local and remote computer storage media including memory storage devices.

[0340] Those skilled in the art can realize that the units and algorithm steps described in the embodiments of the present application can be realized in electronic hardware, computer software and combination of electronic hardware and computer software. Whether the functions are realized in hardware or software depends on the specific application and design constraints of the technical solution. A person skilled in the art can use different methods to realize the described functions for each specific application, but such implementation should not be considered beyond the scope of the present application.

[0341] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the same and similar parts between various embodiments of the present application can be referred to each other. For example, the specific working process of the system, device and unit described in the embodiments of the present application can refer to the corresponding process in the method embodiments of the present application, which will not be described here.

[0342] The above only describes specific embodiments of the present application and does not limit the present application. The protection scope of the present application should be subject to the claims.

Claims

1. An application usage method, characterized by, The application is applied to a terminal, the terminal is installed with a target application, an agent application of the target application is deployed in a cloud, and a first software development kit (SDK) is integrated in the agent application; the method comprises the following steps: obtaining a first use operation on the target application; if the first use operation is used to request to use the first SDK, sending a first use request for the first SDK to the cloud to use the first SDK deployed in the cloud; receiving first information sent by the cloud, the first information being obtained by the cloud according to the first SDK deployed to process the first use request; according to the first information, performing processing for responding to the first use operation.

2. The method of claim 1, wherein, The first SDK is integrated in the target application. The method further comprises the following steps: using the first SDK deployed in the terminal to perform processing for responding to the first use operation; in the process of using the first SDK deployed in the terminal, detecting a terminal processor usage rate of the first SDK deployed in the terminal; if the detected terminal processor usage rate is greater than or equal to a first threshold value, stopping using the first SDK deployed in the terminal, and performing the step of sending the first use request for the first SDK to the cloud to use the first SDK deployed in the cloud.

3. The method according to claim 1 or 2, characterized in that, The first SDK is integrated in the target application. The method further comprises the following steps: in the process of using the first SDK deployed in the cloud, detecting a response delay of the first SDK deployed in the cloud; if the detected response delay is greater than or equal to a second threshold value, stopping using the first SDK deployed in the cloud, and using the first SDK deployed in the terminal to perform processing for responding to the first use operation.

4. The method of claim 1, wherein, The first SDK is not integrated in the target application.

5. The method according to any one of claims 1 to 4, characterized in that, The first information is obtained by the cloud according to the first SDK of a first version deployed to process the first use request; after the first use operation on the target application is obtained, the method further comprises the following steps: obtaining a second use operation on the target application; if the second use operation is used to request to use the first SDK, sending a second use request for the first SDK to the cloud to use the first SDK deployed in the cloud; receiving second information sent by the cloud, the second information being obtained by the cloud according to the first SDK of a second version deployed to process the second use request; according to the second information, performing processing for responding to the second use operation.

6. The method according to any one of claims 1 to 5, characterized in that, The step of sending the first use request for the first SDK to the cloud comprises the following steps: sending use information to the cloud according to the first use operation and according to an operation instruction set provided by the cloud for using the first SDK; the first information is obtained by the cloud according to the first SDK deployed to process the use information.

7. The method according to any one of claims 1 to 6, characterized in that, The second SDK is integrated in the target application, and the second SDK is not integrated in the agent application. The method further comprises the following steps: If the first use operation is used to request use of the second SDK, processing for responding to the first use operation is performed by using the second SDK deployed by the terminal.

8. A method of use of an application, characterized in that, Applied to a cloud end, the cloud end is deployed with a proxy application of a target application, the proxy application is integrated with a first SDK, the target application is installed in a terminal, and the method comprises: Receiving a first use request for the first SDK sent by the terminal; Processing the first use request according to the deployed first SDK to obtain first information; Sending the first information to the terminal.

9. The method of claim 8, wherein, The first information is obtained by the cloud end processing the first use request according to the first SDK of the first version deployed by the cloud end; After receiving the first use request for the first SDK sent by the terminal, the method further comprises: Receiving update information of the first SDK; According to the update information, performing update processing to update the deployed first SDK from the first version to the second version; After the update processing is completed, receiving a second use request for the first SDK sent by the terminal; Processing the second use request according to the first SDK of the second version deployed to obtain second information; Sending the second information to the terminal.

10. The method according to claim 8 or 9, characterized in that, The method further comprises: After the proxy application is deployed in the cloud end, sending an operation instruction set for using the first SDK to the terminal; The first use request comprises use information obtained by the terminal according to the operation instruction set.

11. A terminal, characterized by comprising: The terminal comprises one or more memories for storing computer program instructions, and one or more processors, wherein when the computer program instructions are executed by the one or more processors, the terminal is triggered to execute the method of any one of claims 1-7.

12. A cloud, characterized in that The cloud end comprises one or more memories for storing computer program instructions, and one or more processors, wherein when the computer program instructions are executed by the one or more processors, the cloud end is triggered to execute the method of any one of claims 8-10.

13. An application using system characterized by comprising: Comprise: The terminal of claim 11 and the cloud end of claim 12.

14. A computer-readable storage medium, characterized in that, The computer readable storage medium stores a computer program, and when the computer program runs on a computer, the computer executes the method of any one of claims 1-10.

15. A computer program product, characterised in that, The computer program product comprises a computer program, and when the computer program runs on a computer, the computer executes the method of any one of claims 1-10.

Citation Information

Patent Citations

  • Plug-in processing method and device for software development kit and electronic equipment

    CN112835615A

  • Order processing method for cloud application

    CN115099910A

  • Service access method, terminal and system

    CN115624746A

  • Cloud Software Development Kit for Third-Party Autonomous Vehicles

    US20200241869A1

Cited By

  • Industrial gap controller and working method thereof

    CN121455042A