Cloud phone multi-user management method and device, server and storage medium
By identifying and utilizing active and idle cloud phone containers as service containers within the cloud phone platform, the problems of wasted system resources and long startup times are solved, achieving efficient management of cloud phones and improved user experience.
Patent Information
- Application Number
- CN202211472140.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-11-23
- Publication Date
- 2025-11-11
- Estimated Expiration
- 2042-11-23
AI Technical Summary
Existing cloud phone platforms suffer from wasted system resources and long system startup times, which negatively impact user experience.
Upon receiving a cloud phone login request, the system obtains the login account, determines whether the pre-allocated cloud phone container is active and has been idle for less than a preset time threshold, and uses it as the service cloud phone container to switch to the latest image of the login account to provide services.
It enables efficient resource utilization of cloud phones, reduces startup and migration time, and improves user experience.
Smart Images

Figure CN115801785B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of cloud computing technology, and in particular to a method, apparatus, server, and storage medium for multi-user management of cloud mobile phones. Background Technology
[0002] Cloud phones are products that leverage the advantages of cloud computing in large-scale computing, powerful storage capabilities, and virtualization applications to provide users with personalized terminal services. Cloud platforms offer smartphone users diverse and comprehensive virtual mobile applications and services, fully supporting the display, download, application, and management of various mobile applications. They also excellently achieve 24 / 7 cloud-hosted intelligent applications, allowing users to host various applications in the cloud even when they are not physically on their mobile devices, maintaining a constant online presence and fully realizing the virtualization of smartphone applications.
[0003] Users can subscribe to cloud phones based on various packages. The existing cloud phone platform will allocate a cloud storage image to subscribed users. When users log in, the cloud phone system runs on the platform side, enabling users to remotely use the Android system.
[0004] In developing this invention, the inventors discovered the following technical problem: Each cloud-side mobile phone occupies a significant amount of system-side space. Pre-allocating resources to each cloud-side mobile phone inevitably results in many of them merely occupying storage space with low usage frequency, leading to wasted system resources and increased costs for users. Furthermore, during user login or logout, a system restart and loading of the user's image are required, with system latency typically reaching tens of seconds or even longer. This degrades the user experience of using cloud mobile phones. Summary of the Invention
[0005] In view of this, embodiments of the present invention provide a cloud phone multi-user management method, device, server, and storage medium to solve the technical problems in the prior art where cloud phone platforms suffer from system resource waste and system startup time, which in turn affect user experience.
[0006] In a first aspect, embodiments of the present invention provide a method for multi-user management of cloud phones, including:
[0007] Upon receiving a cloud phone login request, the login account is obtained based on the cloud phone login request;
[0008] Based on the login account, at least two pre-allocated cloud phone containers are determined, and it is determined whether the two cloud phone containers are active and have been idle for a period of less than a preset time threshold.
[0009] When there is an active cloud phone container that has been idle for less than a preset duration threshold, the cloud phone container will be used as a service cloud phone container.
[0010] The service uses a cloud phone container to switch to the latest image corresponding to the login account and provides cloud phone services to the login account.
[0011] Secondly, embodiments of the present invention also provide a cloud phone multi-user management device, comprising:
[0012] The acquisition module is used to obtain the login account based on the cloud phone login request when a cloud phone login request is received;
[0013] The judgment module is used to determine at least two pre-allocated cloud phone containers based on the login account, and to determine whether the two cloud phone containers are active and have been idle for a period of less than a preset time threshold.
[0014] As a module, it is used to treat the cloud phone container as a service cloud phone container when there is an active cloud phone container whose idle time is less than a preset time threshold.
[0015] The switching module is used to switch the latest image corresponding to the login account using the service cloud phone container and provide cloud phone services to the login account.
[0016] Thirdly, embodiments of the present invention also provide a server, comprising:
[0017] One or more processors;
[0018] Storage device for storing one or more programs;
[0019] When the one or more programs are executed by the one or more processors, the one or more processors implement the cloud phone multi-user management method provided in the above embodiments.
[0020] Fourthly, embodiments of the present invention also provide a storage medium containing computer-executable instructions, which, when executed by a computer processor, are used to perform the cloud phone multi-user management method provided in the above embodiments.
[0021] The cloud phone multi-user management method, device, server, and storage medium provided in this invention, upon receiving a cloud phone login request, obtains a login account based on the login request; determines at least two pre-allocated cloud phone containers based on the login account, and judges whether any of the two cloud phone containers are active and have been idle for a period of less than a preset time threshold; if there is an active cloud phone container with an idle time of less than the preset time threshold, the cloud phone container is used as a service cloud phone container; the service cloud phone container is used to switch to the latest image corresponding to the login account, and provides cloud phone services to the login account. Utilizing the ease of copying and porting of cloud phones, a single cloud phone can be "cloned" into multiple cloud phones, providing cloud phone services to multiple users based on the login status of the cloud phone account. This saves cloud phone platform performance and reduces the time required for cloud phone startup or migration, allowing users to seamlessly transition from terminal use to cloud phone use, further improving the user experience. Attached Figure Description
[0022] Other features, objects, and advantages of the invention will become more apparent from the following detailed description of non-limiting embodiments with reference to the accompanying drawings:
[0023] Figure 1 This is a flowchart illustrating the cloud phone multi-user management method provided in Embodiment 1 of the present invention;
[0024] Figure 2 This is a flowchart illustrating the cloud phone multi-user management method provided in Embodiment 2 of the present invention;
[0025] Figure 3 This is a flowchart illustrating the cloud phone multi-user management method provided in Embodiment 3 of the present invention;
[0026] Figure 4 This is a flowchart illustrating the cloud phone multi-user management method provided in Embodiment 4 of the present invention;
[0027] Figure 5 This is a schematic diagram of the structure of the cloud phone multi-user management device provided in Embodiment 5 of the present invention;
[0028] Figure 6 This is a schematic diagram of the structure of a server provided in Embodiment Six of the present invention. Detailed Implementation
[0029] The present invention will now be described in further detail with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the invention and not intended to limit it. Furthermore, it should be noted that, for ease of description, only the parts relevant to the present invention are shown in the accompanying drawings, and not all of them.
[0030] Example 1
[0031] Figure 1 This is a flowchart illustrating the cloud phone multi-user management method provided in Embodiment 1 of the present invention. This embodiment is applicable to situations where a cloud phone platform manages cloud phones for a large number of users subscribing to cloud phone products. The method can be executed by a cloud phone multi-user management device and specifically includes the following steps:
[0032] S110, Upon receiving a cloud phone login request, obtain the login account based on the cloud phone login request.
[0033] In this embodiment, users who subscribe to cloud phones receive a corresponding account and can log in to the platform using their assigned system account to access cloud phone services. The cloud phone platform can receive users' cloud phone login requests and obtain the corresponding login account information from the requests. The login account information may include: username and password.
[0034] S120, determine at least two pre-allocated cloud phone containers based on the login account, and determine whether the two cloud phone containers are active and have been idle for a period of less than a preset time threshold.
[0035] In this embodiment, to improve the resource utilization of the cloud phone platform, multiple cloud phones with identical configurations can be associated with multiple cloud phone accounts. This allows resources to continue to be used even after a user logs out, avoiding waste of cloud platform computing resources. In this embodiment, the mapping relationship between cloud phone accounts and cloud phone containers for orders with identical configurations can be pre-defined. Each cloud phone account can correspond to multiple cloud phone containers, and correspondingly, each cloud phone container can also correspond to multiple cloud phone accounts.
[0036] Upon receiving a user's login request, it can be determined that the current user needs to use a cloud phone. The cloud phone platform needs to allocate a corresponding container for the user's use. In this embodiment, since each cloud phone account can correspond to multiple cloud phone containers, it is necessary to select a suitable cloud phone container to provide the corresponding cloud phone service.
[0037] Since each cloud phone container corresponds to multiple accounts, there is a possibility that some of the cloud phone containers associated with a particular account may be occupied by other accounts. Therefore, it is necessary to first select those that are in an active state, meaning that the cloud phone container is in a running state. Furthermore, cloud phone containers that have just been deactivated by other accounts can also be preferred.
[0038] By querying the status table of all cloud phone containers on the current cloud phone platform, it can be determined whether the cloud phone container corresponding to the cloud phone account is active and has been idle for less than a preset time threshold. The time threshold can be set according to the actual situation.
[0039] S130, when there is an active cloud phone container that has been idle for less than a preset duration threshold, the cloud phone container is used as a service cloud phone container.
[0040] If there are active cloud phone containers that have been idle for less than a preset time threshold, there is no need to load the corresponding image, allowing for a quick response and providing users with the corresponding cloud phone services.
[0041] S140, the service cloud phone container is used to switch to the latest image corresponding to the login account, and cloud phone service is provided to the login account.
[0042] Since the cloud phone service container already contains images corresponding to multiple accounts, it's equivalent to multiple account images running on the same operating system, all mounted in the background. Therefore, simply switching images allows the image corresponding to the logged-in account to be brought to the foreground, thus providing the corresponding cloud phone service to the logged-in account.
[0043] For example, switching the latest image corresponding to the login account using the service cloud phone container may include: switching the UID user using the ROOT command based on the UID identifier, and modifying the APPid and gid according to the user operation running identifier. In this embodiment, since the cloud phone container has already loaded the images of all accounts corresponding to the cloud phone container, it is equivalent to setting up multiple clone accounts in the cloud phone. Each clone account is distinguished by the user operation running identifier UID. Accordingly, since different users may use the same APP and interface, the ROOT command can be used to switch the UID user, and the APPid and gid can be modified accordingly. This enables the provision of the corresponding cloud phone service to the login account.
[0044] This embodiment obtains a login account upon receiving a cloud phone login request; determines at least two pre-allocated cloud phone containers based on the login account, and checks whether any of these containers are active and have been idle for less than a preset time threshold; if an active container exists with an idle time less than the preset time threshold, it is used as a service cloud phone container; the service cloud phone container switches to the latest image corresponding to the login account and provides cloud phone services to the login account. Leveraging the ease of copying and porting cloud phones, a single cloud phone can be "cloned" into multiple cloud phones, providing cloud phone services to multiple users based on the login status of the cloud phone account. This saves cloud phone platform performance and reduces the time required for cloud phone startup or migration, allowing users to seamlessly transition from terminal use to cloud phone use, further enhancing the user experience.
[0045] In a preferred embodiment of this example, the method may further include the following step: when there are no active cloud phone containers that have been idle for less than a preset time threshold, search for the standby cloud phone container whose login account is the first account in the order of the login account. The standby cloud phone container whose login account is the first account in the order of the login account has already loaded the latest image corresponding to the login account; and use the standby cloud phone container whose login account is the first account in the order of the login account to provide cloud phone services to the login account. If there are no active cloud phone containers that have just entered an idle state, then it is necessary to search for the cloud phone containers currently in an idle state among the cloud phone containers corresponding to the account to provide cloud phone services. In particular, the cloud phone container whose current account is the first in the order of the current account is preferred. The cloud phone container whose current account is the first in the order of the current account has already loaded the image corresponding to the account and is running in the foreground, which can realize the ability to quickly provide cloud phone services to users.
[0046] Example 2
[0047] Figure 2 This is a flowchart illustrating the multi-user cloud phone management method provided in Embodiment 2 of the present invention. In this embodiment, the method may further include the following steps: monitoring the number of idle cloud phone containers corresponding to each login account; when the number of idle cloud phone containers is less than a preset threshold, allocating a new cloud phone container and using the new cloud phone container to load the latest image corresponding to the login account.
[0048] Accordingly, the cloud phone multi-user management method provided in this embodiment of the invention includes:
[0049] S210, Monitor the number of idle cloud mobile phone containers corresponding to each login account. When the number of idle cloud mobile phone containers is less than a preset threshold, allocate a new cloud mobile phone container and use the new cloud mobile phone container to load the latest image corresponding to the login account.
[0050] Since the number of cloud phone containers corresponding to each login account is fixed, as can be seen from the above embodiments, these cloud phone containers may be occupied by other accounts. That is, the number of available cloud phone containers corresponding to each login account is constantly changing and decreasing. To avoid a situation where a login account has no available cloud phone containers, it is necessary to monitor the number of idle cloud phone containers corresponding to each login account in real time. When the number of idle cloud phone containers is less than a preset threshold, the cloud phone platform allocates a new cloud phone container and uses the new cloud phone container to load the latest image corresponding to the login account, i.e., the image saved when the account was last logged out. In addition, images of other accounts can also be loaded into new cloud phone containers. The number of cloud phone containers corresponding to these other accounts also does not meet the requirements.
[0051] S220, Upon receiving a cloud phone login request, obtain the login account based on the cloud phone login request.
[0052] S230, determine at least two pre-allocated cloud phone containers based on the login account, and determine whether the two cloud phone containers are active and have been idle for a period of less than a preset time threshold.
[0053] S240, when there is an active cloud phone container that has been idle for less than a preset duration threshold, the cloud phone container is used as a service cloud phone container.
[0054] S250, the service cloud phone container is used to switch to the latest image corresponding to the login account, and cloud phone service is provided to the login account.
[0055] This embodiment adds the following step: monitoring the number of idle cloud phone containers corresponding to each login account; when the number of idle cloud phone containers is less than a preset threshold, allocating a new cloud phone container and using the new cloud phone container to load the latest image corresponding to the login account. This avoids situations where a login account has no available cloud phone containers.
[0056] Example 3
[0057] Figure 3This is a flowchart illustrating the multi-user management method for cloud phones provided in Embodiment 3 of the present invention. This embodiment is based on the above embodiment and is optimized. Before obtaining the login account according to the cloud phone login request, the method can be further optimized as follows: allocating at least two cloud phone accounts to each cloud phone container, and correspondingly, each cloud phone account also corresponds to at least two cloud phone containers, and generating an allocation table according to the allocation relationship; and specifically optimizing the step of determining the pre-allocated at least two cloud phone containers according to the login account as: finding at least two cloud phone containers corresponding to the login account according to the allocation table.
[0058] S310 assigns at least two cloud phone accounts to each cloud phone container, and each cloud phone account corresponds to at least two cloud phone containers.
[0059] In this embodiment, the cloud phone platform sets the number of cloud phone containers based on the total number of accounts and the average daily number of active accounts, wherein the number of cloud phone containers is less than the average daily number of active accounts. The aforementioned number of cloud phone containers are then activated. For example, the number of cloud phone containers can be determined based on the number of cloud phone accounts and daily active users; after determining the number of cloud phone containers, the corresponding number of cloud phone containers are activated. Accordingly, multiple accounts are allocated to each cloud phone container, and each cloud phone account also corresponds to multiple cloud phone containers, and an allocation table is generated based on the allocation relationship.
[0060] S320: Upon receiving a cloud phone login request, obtain the login account based on the cloud phone login request.
[0061] S330, find at least two cloud phone containers corresponding to the login account according to the allocation table, and determine whether the two cloud phone containers are active and have been idle for less than a preset time threshold.
[0062] Based on the correspondence in the allocation table, find at least two cloud phone containers corresponding to the login account, and determine whether the two cloud phone containers are active and have been idle for less than a preset time threshold.
[0063] S340, when there is an active cloud phone container that has been idle for less than a preset duration threshold, the cloud phone container is used as a service cloud phone container.
[0064] S350, the service cloud phone container is used to switch to the latest image corresponding to the login account, and cloud phone service is provided to the login account.
[0065] This embodiment adds the following steps: Allocating at least two cloud phone accounts to each cloud phone container, with each cloud phone account corresponding to at least two cloud phone containers, and generating an allocation table based on the allocation relationship; the step of determining the pre-allocated at least two cloud phone containers based on the login account is specifically optimized as follows: finding at least two cloud phone containers corresponding to the login account according to the allocation table. Allocation rules can be predefined, and starting fewer cloud phone containers than the number of cloud phone accounts can effectively reduce system resource consumption. The available cloud phone containers can be determined according to the set allocation table, improving allocation efficiency.
[0066] Example 4
[0067] Figure 4 This is a flowchart illustrating the multi-user management method for cloud phones provided in Embodiment 4 of the present invention. This embodiment is based on the above embodiment and is optimized. The method may also include the following steps: each cloud phone container sequentially loads the image of the corresponding cloud phone account, and creates a corresponding UID identifier for each image according to the cloud phone account. According to the UID identifier, the APPid and gid in the corresponding loaded image are modified according to the UID.
[0068] Accordingly, the cloud phone multi-user management method provided in this embodiment of the invention includes:
[0069] S410: Upon receiving a cloud phone login request, obtain the login account based on the cloud phone login request.
[0070] S420, determine at least two pre-allocated cloud phone containers based on the login account, and determine whether the two cloud phone containers are active and have been idle for a period of less than a preset time threshold.
[0071] S430, each cloud phone container loads the image of the corresponding cloud phone account in sequence, and creates a corresponding UID identifier for each image according to the cloud phone account. Based on the UID identifier, the APPid and gid in the loaded image are modified according to the UID.
[0072] In this embodiment, multiple users can be created within the cloud phone, each corresponding to their own cloud phone image. This method eliminates the time required to load the image when providing cloud phone services to users. In this case, the image corresponding to the account that exits the cloud phone service is moved to the background. To easily distinguish the image corresponding to each account, a unique UID identifier needs to be created for each image based on the cloud phone account. Furthermore, since multiple accounts may correspond to the same app, the APPID also needs to be identified by its UID for effective differentiation. The corresponding user interface also needs to be modified accordingly.
[0073] S440, when there is an active cloud phone container that has been idle for less than a preset duration threshold, the cloud phone container is used as a service cloud phone container.
[0074] S450, based on the UID identifier, the user is switched via the ROOT command, and the APPid and gid are modified according to the user operation identifier, and cloud phone services are provided to the logged-in account.
[0075] This embodiment adds the following steps: Each cloud phone container sequentially loads the image of the corresponding cloud phone account, and creates a corresponding UID identifier for each image based on the cloud phone account. Based on the UID identifier, the APPid and gid in the loaded image are modified accordingly. This allows for differentiation of users within the cloud phone container, eliminating the need to reload the image when switching user services, reducing the time required for account switching, and further improving the user experience of cloud phones.
[0076] Example 5
[0077] Figure 5 This is a schematic diagram of the structure of the cloud phone multi-user management device provided in Embodiment 5 of the present invention, as shown below. Figure 5 As shown, the device includes:
[0078] The acquisition module 510 is used to acquire the login account according to the cloud phone login request when a cloud phone login request is received;
[0079] The judgment module 520 is used to determine at least two pre-allocated cloud phone containers based on the login account, and to determine whether the two cloud phone containers are active and have been idle for a period of less than a preset time threshold.
[0080] As module 530, it is used to treat the cloud phone container as a service cloud phone container when there is an active cloud phone container whose idle time is less than a preset time threshold.
[0081] The switching module 540 is used to switch the latest image corresponding to the login account using the service cloud phone container and provide cloud phone services to the login account.
[0082] The cloud phone multi-user management device provided in this embodiment obtains a login account based on the cloud phone login request upon receiving the request; determines at least two pre-allocated cloud phone containers based on the login account, and judges whether any of the two cloud phone containers are active and have been idle for less than a preset time threshold; if there is an active cloud phone container with an idle time of less than the preset time threshold, the cloud phone container is used as a service cloud phone container; the service cloud phone container is used to switch to the latest image corresponding to the login account and provide cloud phone services to the login account. Utilizing the ease of copying and porting of cloud phones, a single cloud phone can be "cloned" into multiple cloud phones, providing cloud phone services to multiple users based on the login status of the cloud phone account. This saves cloud phone platform performance and reduces the time required for cloud phone startup or migration, allowing users to seamlessly transition from terminal use to cloud phone use, further improving the user experience.
[0083] Based on the above embodiments, the device further includes:
[0084] The search module is used to search for the standby cloud phone container whose login account is the first account in the order when there is no active cloud phone container and the idle time is less than a preset time threshold. The standby cloud phone container whose login account is the first account has been loaded with the latest image corresponding to the login account.
[0085] A module is provided for providing cloud phone services to the logged-in account using the standby cloud phone container of the first account sequence.
[0086] Based on the above embodiments, the device further includes:
[0087] The monitoring module is used to monitor the number of idle cloud mobile phone containers corresponding to each login account. When the number of idle cloud mobile phone containers is less than a preset threshold, a new cloud mobile phone container is allocated, and the latest image corresponding to the login account is loaded using the new cloud mobile phone container.
[0088] Based on the above embodiments, the device further includes:
[0089] The allocation module is used to allocate at least two cloud phone accounts to each cloud phone container, and each cloud phone account also corresponds to at least two cloud phone containers, and generates an allocation table according to the allocation relationship;
[0090] Accordingly, the determination module includes:
[0091] The lookup unit is used to find at least two cloud phone containers corresponding to the login account according to the allocation table.
[0092] Based on the above embodiments, the device further includes:
[0093] The identifier creation module is used to load the image of the corresponding cloud phone account into each cloud phone container in sequence, and create a corresponding UID identifier for each image according to the cloud phone account. Based on the UID identifier, the APPid and gid in the loaded image are modified according to the UID.
[0094] Based on the above embodiments, the switching module includes:
[0095] The modification unit is used to switch the user by UID using the ROOT command based on the UID identifier, and to modify the APPid and gid according to the user operation identifier.
[0096] The cloud phone multi-user management device provided in this embodiment of the invention can execute the cloud phone multi-user management method provided in any embodiment of the invention, and has the corresponding functional modules and beneficial effects of executing the method.
[0097] Example 6
[0098] Figure 6 This is a schematic diagram of the structure of a server provided in Embodiment Six of the present invention. Figure 6 A block diagram of an exemplary server 12 suitable for implementing embodiments of the present invention is shown. Figure 6 The server 12 shown is merely an example and should not impose any limitations on the functionality and scope of use of the embodiments of the present invention.
[0099] like Figure 6 As shown, server 12 is presented as a general-purpose computing device. The components of server 12 may include, but are not limited to: one or more processors or processing units 16, system memory 28, and bus 18 connecting different system components (including system memory 28 and processing unit 16).
[0100] Bus 18 represents one or more of several bus architectures, including a memory bus or memory controller, a peripheral bus, a graphics acceleration port, a processor, or a local bus using any of the various bus architectures. For example, these architectures include, but are not limited to, the Industry Standard Architecture (ISA) bus, the Micro Channel Architecture (MAC) bus, the Enhanced ISA bus, the Video Electronics Standards Association (VESA) local bus, and the Peripheral Component Interconnect (PCI) bus.
[0101] Server 12 typically includes a variety of computer system readable media. These media can be any available media that can be accessed by server 12, including volatile and non-volatile media, removable and non-removable media.
[0102] System memory 28 may include computer system readable media in the form of volatile memory, such as random access memory (RAM) 30 and / or cache 32. Server 12 may further include other removable / non-removable, volatile / non-volatile computer system storage media. By way of example only, storage system 34 may be used to read and write non-removable, non-volatile magnetic media (… Figure 5 Not shown; usually referred to as a "hard drive"). Although Figure 5 Not shown, a disk drive for reading and writing to a removable non-volatile disk (e.g., a "floppy disk") and an optical disk drive for reading and writing to a removable non-volatile optical disk (e.g., a CD-ROM, DVD-ROM, or other optical media) may be provided. In these cases, each drive may be connected to bus 18 via one or more data media interfaces. System memory 28 may include at least one program product having a set (e.g., at least one) of program modules configured to perform the functions of the embodiments of the present invention.
[0103] A program / utility 40 having a set (at least one) of program modules 42 may be stored, for example, in system memory 28. Such program modules 42 include, but are not limited to, an operating system, one or more application programs, other program modules, and program data. Each or some combination of these examples may include an implementation of a network environment. Program modules 42 typically perform the functions and / or methods described in the embodiments of the present invention.
[0104] Server 12 can also communicate with one or more external devices 14 (e.g., keyboard, pointing device, display 24, etc.), and with one or more devices that enable users to interact with server 12, and / or with any device that enables server 12 to communicate with one or more other computing devices (e.g., network card, modem, etc.). This communication can be performed via input / output (I / O) interface 22. Furthermore, server 12 can also communicate with one or more networks (e.g., local area network (LAN), wide area network (WAN), and / or public networks, such as the Internet) via network adapter 20. As shown, network adapter 20 communicates with other modules of server 12 via bus 18. It should be understood that, although not shown in the figures, other hardware and / or software modules can be used in conjunction with server 12, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems.
[0105] The processing unit 16 executes various functional applications and data processing by running programs stored in the system memory 28, such as implementing the cloud phone multi-user management method provided in the embodiments of the present invention.
[0106] Example 7
[0107] Embodiment 7 of the present invention also provides a storage medium containing computer-executable instructions, which, when executed by a computer processor, are used to perform any of the cloud phone multi-user management methods provided in the above embodiments.
[0108] The computer storage medium of this invention can be any combination of one or more computer-readable media. A computer-readable medium can be a computer-readable signal medium or a computer-readable storage medium. A computer-readable storage medium can be, for example,—but not limited to—an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples (a non-exhaustive list) of computer-readable storage media include: an electrical connection having one or more wires, a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof. In this document, a computer-readable storage medium can be any tangible medium that contains or stores a program that can be used by or in conjunction with an instruction execution system, apparatus, or device.
[0109] Computer-readable signal media may include data signals propagated in baseband or as part of a carrier wave, carrying computer-readable program code. Such propagated data signals may take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. Computer-readable signal media may also be any computer-readable medium other than computer-readable storage media, capable of sending, propagating, or transmitting programs for use by or in connection with an instruction execution system, apparatus, or device.
[0110] The program code contained on a computer-readable medium may be transmitted using any suitable medium, including—but not limited to—wireless, wire, optical fiber, RF, etc., or any suitable combination thereof.
[0111] Computer program code for performing the operations of this invention can be written in one or more programming languages or a combination thereof, including object-oriented programming languages such as Java, Smalltalk, and C++, as well as conventional procedural programming languages such as "C" or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the user's computer via any type of network—including a local area network (LAN) or a wide area network (WAN)—or can be connected to an external computer (e.g., via the Internet using an Internet service provider).
[0112] Note that the above description is merely a preferred embodiment of the present invention and the technical principles employed. Those skilled in the art will understand that the present invention is not limited to the specific embodiments described herein, and various obvious changes, readjustments, and substitutions can be made without departing from the scope of protection of the present invention. Therefore, although the present invention has been described in detail through the above embodiments, the present invention is not limited to the above embodiments, and may include many other equivalent embodiments without departing from the concept of the present invention, the scope of which is determined by the scope of the appended claims.
Claims
1. A method for multi-user management of cloud phones, characterized in that, include: Upon receiving a cloud phone login request, the login account is obtained based on the cloud phone login request; Based on the login account, at least two pre-allocated cloud phone containers are determined, and it is determined whether any of the at least two cloud phone containers are active and have been idle for a period of less than a preset time threshold. When there is an active cloud phone container that has been idle for less than a preset duration threshold, the cloud phone container will be used as a service cloud phone container. The service cloud phone container is used to switch to the latest image corresponding to the login account, and cloud phone service is provided to the login account. Before obtaining the login account based on the cloud phone login request, the method further includes: Assign at least two cloud phone accounts to each cloud phone container, and each cloud phone account corresponds to at least two cloud phone containers, and generate an allocation table based on the allocation relationship; Accordingly, determining the pre-allocated at least two cloud phone containers based on the login account includes: Based on the allocation table, find at least two cloud mobile containers corresponding to the login account; Before assigning at least two cloud phone accounts to each cloud phone container, the method further includes: The number of cloud phone containers to be used is determined based on the number of cloud phone accounts and daily active users. After determining the number of cloud phone containers, start the corresponding number of cloud phone containers; Each cloud phone container loads the image of the corresponding cloud phone account in sequence, and creates a corresponding UID identifier for each image according to the cloud phone account. Based on the UID identifier, the APPid and gid in the loaded image are modified according to the UID.
2. The method according to claim 1, characterized in that, The method further includes: If there are no active cloud phone containers that have been idle for less than a preset duration threshold, the standby cloud phone container with the login account as the first account in the order is searched. The standby cloud phone container with the first account in the order has loaded the latest image corresponding to the login account. The standby cloud phone container of the first account sequence is used to provide cloud phone services to the logged-in account.
3. The method according to claim 1, characterized in that, The method further includes: Monitor the number of idle cloud mobile phone containers corresponding to each login account. When the number of idle cloud mobile phone containers is less than a preset threshold, allocate a new cloud mobile phone container and use the new cloud mobile phone container to load the latest image corresponding to the login account.
4. The method according to claim 1, characterized in that, The step of using the service cloud phone container to switch to the latest image corresponding to the login account and providing cloud phone services to the login account includes: The user is switched using the ROOT command based on the UID identifier, and the APPid and gid are modified according to the user's operation identifier.
5. A cloud phone multi-user management device, characterized in that, include: The acquisition module is used to obtain the login account based on the cloud phone login request when a cloud phone login request is received; The judgment module is used to determine at least two pre-allocated cloud phone containers based on the login account, and to determine whether the at least two cloud phone containers are active and have been idle for a period of less than a preset time threshold. As a module, it is used to treat the cloud phone container as a service cloud phone container when there is an active cloud phone container whose idle time is less than a preset time threshold. The switching module is used to switch the latest image corresponding to the login account using the service cloud phone container, and to provide cloud phone services to the login account. The allocation module is used to allocate at least two cloud phone accounts to each cloud phone container, and each cloud phone account also corresponds to at least two cloud phone containers, and generates an allocation table according to the allocation relationship; The quantity determination module is used to determine the number of cloud phone containers to be used based on the number of cloud phone accounts and daily active users. The startup module is used to start the corresponding number of cloud phone containers after the number of cloud phone containers is determined. The identifier creation module is used to load the image of the corresponding cloud phone account into each cloud phone container in sequence, and create a corresponding UID identifier for each image according to the cloud phone account. Based on the UID identifier, the APPid and gid in the corresponding loaded image are modified according to the UID. Accordingly, the determination module includes: The lookup unit is used to find at least two cloud phone containers corresponding to the login account according to the allocation table.
6. A server, characterized in that, The server includes: One or more processors; Storage device for storing one or more programs; When the one or more programs are executed by the one or more processors, the one or more processors implement the cloud phone multi-user management method as described in any one of claims 1-4.
7. A storage medium containing computer-executable instructions, which, when executed by a computer processor, are used to perform the cloud phone multi-user management method as described in any one of claims 1-4.
Citation Information
Patent Citations
Cloud mobile phone use management method and system
CN109005245A
A cloud mobile phone system based on a Docker container
CN109922106A