A method and electronic device using a remote sim module
By setting up remote SIM modules and proxy modules in the server, the problem of frequent SIM module plugging and unplugging was solved, enabling terminal support for multiple SIM modules and flexible use of network standards, improving user experience and reducing hardware costs.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2020-07-17
- Publication Date
- 2026-03-27
AI Technical Summary
Existing SIM modules require frequent plugging and unplugging, resulting in a poor user experience. Furthermore, the terminal is limited by the network standard of the modem and cannot support multiple SIM modules simultaneously.
By setting up a remote SIM module in the server and using a proxy module to establish a communication connection between the terminal and the server, remote management and modem functions of the SIM module can be realized. The terminal can use multiple SIM modules without the need for a physical SIM module and modem.
Users do not need to frequently plug and unplug SIM modules. The terminal can support multiple SIM modules, reducing hardware costs and allowing the use of any operator's network standard.
Smart Images

Figure CN114175701B_ABST
Abstract
Description
[0001] The present application claims priority to the Chinese patent application No. 201910708608.2, filed on August 1, 2019, and entitled "A Method of Using Remote SIM Module and Electronic Device", the content of which is incorporated herein by reference in its entirety. TECHNICAL FIELD
[0002] The present application relates to the field of communication technology, and in particular to a method of using remote SIM module and electronic device. BACKGROUND
[0003] With the development of technology, the use of terminals is becoming more and more rich. However, when the terminal uses the service provided by the operator network, it must access the operator network through the Subscriber Identification Module (SIM). The SIM module is an important component of terminal identity recognition, which can be used to store unique number and encryption key and other SIM module authentication and authorization information, so as to identify the identity of the user when the user communicates in the network.
[0004] Among them, the existing SIM module includes a pluggable SIM module and an unplugable SIM module (for example, an embedded-SIM (e-SIM)). At present, both of the two kinds of SIM modules need to communicate with the modem of the terminal through the card slot on the terminal, that is, they need to occupy the position of the card slot on the terminal. At present, there are dual-card dual-standby terminals, that is, a terminal can be provided with two SIM modules (pluggable SIM module or e-SIM module). However, when the user needs to use three or more than three SIM modules, the user needs to frequently replace the SIM module in the two card slots, which is cumbersome for the user to operate and the user experience is not good. SUMMARY
[0005] The method of using remote SIM module and electronic device provided by the present application can enable the user to switch SIM modules without frequently opening the card slot to take out and replace the card, thereby improving the user experience.
[0006] In order to achieve the above purpose, the embodiments of the present application provide the following technical solutions:
[0007] In a first aspect, a method for using a remote SIM module includes: receiving, by a terminal, an indication of a user input for initiating a call to another terminal using a first SIM module, wherein the first SIM module is disposed in a server; sending, by the terminal, a first call request to the server via a proxy module in the terminal, the first call request including a first identifier corresponding to the first SIM module and an identifier of the another terminal; sending, by the server, a second call request to a base station corresponding to the first SIM module according to the first call request, the second call request including a second identifier corresponding to the first SIM module and the identifier of the another terminal; the first identifier is the same as the second identifier, or the first identifier corresponds to the second identifier; establishing, by the base station, a call connection between the server and the another terminal according to the second call request; and conducting, by the terminal, a conversation with the another terminal via a communication connection between the terminal and the server and the call connection between the server and the another terminal.
[0008] It should be noted that in the prior art, the number of SIM modules that can be used by a terminal at the same time is limited, usually two. In the present application, the SIM module disposed in the server can be used through the proxy module, so that the user does not need to frequently open the card slot to take out and replace the card when switching the SIM module in the terminal. Moreover, it is beneficial to reduce the hardware cost of the terminal supporting multiple SIM modules.
[0009] In addition, in the prior art, whether it is a traditional pluggable SIM module solution or an e-SIM module solution, the SIM module communicates with the operator network through the modem of the terminal. Therefore, the SIM module of the operator used by the terminal should match the network standard supported by the modem of the terminal. In other words, the terminal can only use the SIM module supporting a specific network standard.
[0010] However, in the present application, the modem function on the terminal side can be implemented at the server. Since the server can integrate the modem functions of multiple network standards, from the terminal side, the terminal is no longer limited by the network standard supported by the modem on the terminal side. That is, the virtual card used by the terminal can use the SIM module of any operator.
[0011] In a possible implementation, the communication connection between the terminal and the server includes a short-distance communication connection or a cellular network connection, wherein the cellular network connection is a connection corresponding to a second SIM module in the terminal.
[0012] When the terminal and the server are connected by a short-distance communication connection, the terminal can not be provided with a real SIM module (a pluggable SIM module or an e-SIM module) and can not be provided with a modem, which can reduce the hardware cost of the terminal.
[0013] In a possible implementation, the proxy module is disposed in the kernel layer of the terminal.
[0014] In a possible implementation, the agent module is arranged in a radio interface layer daemon (RILD) of the terminal.
[0015] In a possible implementation, the terminal communicates with the server through the agent module in the terminal, specifically: the terminal communicates with the server through the RILD and a short-distance communication link between the terminal and the server; or the terminal communicates with the server through the RILD, a modem of the terminal, and a cellular network link between the terminal and the server.
[0016] In a possible implementation, before the terminal receives an indication input by a user to make a call to another terminal by using the first SIM module, the method further includes: displaying, by the terminal, a SIM module management interface; receiving, by the terminal, an indication input by the user to activate the first SIM module; prompting, by the terminal, to input account information of the first SIM module; receiving, by the terminal, the account information of the first SIM module input by the user or sent by the server, and sending, by the terminal, a first activation request for activating the first SIM module to the server through the agent module, the first activation request including the account information of the first SIM module.
[0017] Therefore, a method for activating a first SIM module in a server by a terminal is provided.
[0018] In a possible implementation, the SIM module management interface further includes information of an activated second SIM module, and the second SIM module is a pluggable SIM module or an e-SIM module arranged in the terminal.
[0019] In a possible implementation, the method further includes: after the server verifies the account information corresponding to the first SIM module, searching, by the server, for a second identifier corresponding to the first SIM module according to the account information corresponding to the first SIM module, and sending, by the server, a network access authentication request of the first SIM module to a base station, the network access authentication request including the second identifier corresponding to the first SIM module; wherein the account information includes an account and a password; after the base station completes authentication according to the network access authentication request of the first SIM module, notifying, by the base station, the terminal through the server; and displaying, by the terminal, a state that the first SIM module is activated.
[0020] In a possible implementation, after the first SIM module is activated, the method further includes: displaying, by the terminal, a control for calling through the first SIM module on a call interface, or displaying a control for sending through the first SIM module on a short message sending interface.
[0021] From the above, the interface of the contact application includes the option of selecting to make a call or send a message through the virtual SIM module or through the real SIM module, and the user can select the corresponding option to make a call or send a message using the virtual SIM module or the real SIM module. That is, the interface for making a call or sending a message using the virtual SIM module is consistent with the interface for making a call or sending a message using the real SIM module. That is, the operation method of the user when making a call or sending a message using the virtual SIM module and the real SIM module is the same, and no new user operation is added.
[0022] In a possible implementation, the method further includes: receiving, by the terminal, an operation of the user selecting a control for sending a message through the first SIM module on the message sending interface; sending, by the terminal, a first message to the server through the proxy module, the first message including the message content on the message sending interface, the first identifier corresponding to the first SIM module, and the identifier of the receiving terminal; sending, by the server, a second message to the base station corresponding to the first SIM module according to the first message, the second message including the message content carried in the first message, the second identifier corresponding to the first SIM module, and the identifier of the receiving terminal; and sending, by the base station, the second message to the receiving terminal.
[0023] In a possible implementation, after the first SIM module is activated, the method further includes: obtaining, by the terminal, the signal strength of the communication connection between the server and the terminal, and the signal strength of the communication connection between the server and the base station; determining, by the terminal, the signal strength corresponding to the first SIM module according to the signal strength of the communication connection between the server and the terminal, and the signal strength of the communication connection between the server and the base station, and displaying the signal strength corresponding to the first SIM module.
[0024] It can be seen that the user experience of using the SIM module in the server through the proxy module is the same as the user experience of using the SIM module (a pluggable SIM module or an e-SIM module) in the terminal.
[0025] In a possible implementation, after the first SIM module is activated, the method further includes: obtaining, by the terminal, the information of the contacts stored in the first SIM module; and displaying, by the terminal, the information of the contacts stored in the first SIM module on the contact interface.
[0026] In a possible implementation, the method further includes:
[0027] The call application module receives an indication of initiating a call to another terminal using the first SIM module input by a user, wherein the first SIM module is arranged in a server; the call application module sends the call indication to the agent module through a phone manager; the agent module sends a first call request to the server, wherein the first call request comprises a first identifier corresponding to the first SIM module and an identifier of the another terminal; after the server establishes a call connection with the another terminal through a base station according to the first call request, the call application module performs a call with the another terminal through the phone manager and the agent module, a communication connection between the terminal and the server, and a call connection between the server and the another terminal.
[0028] In a possible implementation, the communication connection between the terminal and the server comprises a short-distance communication connection or a cellular network connection, wherein the cellular network connection is a connection corresponding to a second SIM module in the terminal.
[0029] In a possible implementation, the agent module is arranged in a kernel layer of the terminal.
[0030] In a possible implementation, the agent module is arranged in a radio interface layer daemon (RILD) of the terminal.
[0031] In a possible implementation, the call application module communicates with the server through the phone manager and the agent module, specifically: the call application module communicates with the server through the phone manager and the RILD, via a short-distance communication link between the terminal and the server; or the call application module communicates with the server through the phone manager and the RILD, via a modem of the terminal and a cellular network link between the terminal and the server.
[0032] In a possible implementation, the terminal further comprises a SIM management module; before the call application module receives the indication of dialing a call to the another terminal using the first SIM module input by the user, the method further comprises: the SIM management module displays a SIM module management interface through a display of the terminal; the SIM management module receives an indication of activating the first SIM module input by the user; the SIM management module displays prompt information through the display, prompting to input account information of the first SIM module; the SIM management module receives the account information corresponding to the first SIM module input by the user, and sends a first activation request of activating the first SIM module to the server through the phone manager and the agent module, wherein the first activation request comprises the account information corresponding to the first SIM module; the agent module receives a notification that the first SIM module has been activated sent by the server, and sends the notification that the first SIM module has been activated to the SIM management module through the phone manager; and the SIM management module displays a state that the first SIM module has been activated through the display.
[0033] In a possible implementation, the SIM module management interface further includes information of the activated second SIM module, the second SIM module being a pluggable SIM module or an e-SIM module arranged in the terminal.
[0034] In a possible implementation, after the phone manager receives the notification that the first SIM module is activated sent by the agent module, the method further includes: the phone manager broadcasts the notification that the first SIM module is activated, and the notification includes a first identifier corresponding to the first SIM module.
[0035] In a possible implementation, the method further includes: after the call application module listens to the notification, the short message application module displays, in a call interface, a control for calling through the first SIM module; or, the short message application module listens to the notification in the terminal, and the short message application module displays, in a short message sending interface, a control for sending through the first SIM module.
[0036] In a possible implementation, the method further includes: the short message application module receives an operation of selecting, by a user, the control for sending through the first SIM module on the short message sending interface; and the short message application module sends, to the server, a first message through the phone manager and the agent module, the first message including short message content on the short message sending interface, a first identifier corresponding to the first SIM module, and an identifier of a receiving terminal.
[0037] In a possible implementation, the method further includes: the notification manager of the terminal listens to the notification, obtains, through the agent module, a signal strength of a communication connection between the server and the terminal, and a signal strength of a communication connection between the server and a base station; and the notification manager determines a signal strength corresponding to the first SIM module according to the signal strength of the communication connection between the server and the terminal and the signal strength of the communication connection between the server and the base station, and displays the signal strength corresponding to the first SIM module in a status bar of the terminal.
[0038] In a possible implementation, the method further includes: after the contact application module of the terminal listens to the notification, the contact application module obtains, through the agent module, information of a contact stored in the first SIM module; and the contact application module displays, in a contact interface, the information of the contact stored in the first SIM module.
[0039] In a third aspect, a terminal is provided, including: a processor, a memory, and a touch screen, the processor including an agent module, the memory and the touch screen being coupled with the processor, the memory being configured to store computer program code including computer instructions, and the computer instructions being configured to cause the terminal to perform the method in the second aspect and any possible implementation manner thereof.
[0040] In a fourth aspect, an apparatus is provided, which is included in an electronic device, and the apparatus has a function of implementing the behavior of the electronic device in any of the methods in the above aspects and possible implementation manners. The function can be implemented by hardware, or by hardware executing corresponding software. The hardware or software includes at least one module or unit corresponding to the above function. For example, a call application module or unit, a phone management module or unit, and a proxy module or unit, etc.
[0041] In a fifth aspect, a computer storage medium is provided, which includes computer instructions, when the computer instructions are run on a terminal, the terminal executes the method in the above second aspect and any of the possible implementation manners.
[0042] In a sixth aspect, a computer program product is provided, when the computer program product is run on a computer, the computer executes the method in the above second aspect and any of the possible implementation manners.
[0043] In a seventh aspect, a chip system is provided, which includes a processor, when the processor executes instructions, the processor executes the method in the above second aspect and any of the possible implementation manners. BRIEF DESCRIPTION OF DRAWINGS
[0044] Figure 1 A structural schematic diagram of a communication system provided by an embodiment of the present application;
[0045] Figure 2A A structural schematic diagram of a terminal provided by an embodiment of the present application Figure 1 ;
[0046] Figure 2B A structural schematic diagram of a terminal provided by an embodiment of the present application
[0047] Figure 3 A structural schematic diagram of a server provided by an embodiment of the present application;
[0048] Figure 4 Some graphical user interface schematic diagrams of terminals provided by an embodiment of the present application;
[0049] Figure 5 A flow schematic diagram of a newly created virtual SIM module provided by an embodiment of the present application;
[0050] Figure 6 A graphical user interface schematic diagram of a terminal provided by an embodiment of the present application;
[0051] Figure 7 A flow schematic diagram of a newly created virtual SIM module provided by an embodiment of the present application;
[0052] Figure 8A A graphical user interface diagram of some other terminals provided in the embodiments of this application;
[0053] Figure 8B A graphical user interface diagram of some other terminals provided in the embodiments of this application;
[0054] Figure 9 This is a schematic diagram of the structure of a chip system provided in an embodiment of this application;
[0055] Figure 10 This is a schematic diagram of another chip system provided in an embodiment of this application. Detailed Implementation
[0056] In the description of the embodiments of this application, unless otherwise stated, " / " means "or," for example, A / B can mean A or B; the term "and / or" in this document is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, and B existing alone. Hereinafter, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of indicated technical features. Therefore, a feature defined with "first" or "second" may explicitly or implicitly include one or more of that feature.
[0057] In the description of the embodiments of this application, unless otherwise stated, "a plurality of" means two or more. In the embodiments of this application, words such as "exemplary" or "for example" are used to indicate examples, illustrations, or explanations. Any embodiment or design that is described as "exemplary" or "for example" in the embodiments of this application should not be construed as being more preferred or advantageous than other embodiments or design options. Specifically, the use of words such as "exemplary" or "for example" is intended to present the relevant concepts in a specific manner.
[0058] like Figure 1 The diagram shown is a structural schematic of a communication system provided in an embodiment of this application. The communication system includes a terminal 100, a server 200, and a base station 300.
[0059] The number of servers 200 can be one or more. Servers 200 can centrally provide SIM module functionality and modulation / demodulation functions to a large number of terminals. These servers 200 can be servers provided by cloud service providers, or servers provided by operators, etc., and this embodiment does not limit the specific type of server.
[0060] Specifically, the server 200 can include a SIM module and a modem module. The SIM module can be inserted into one or more pluggable SIM modules, or can integrate one or more e-SIM modules. The e-SIM module needs to download card data from the operator server in advance before use to communicate. The embodiments of the present application do not make any limitation.
[0061] In the scheme provided in the present application, the terminal 100 can establish a communication connection with the server 200 through one or more networks. In this way, the terminal 100 can log in to the server 200 by using a credential (such as an account and a password), and the server 200 can implement the SIM module function and the modem function, and access the mobile communication network in which the base station 300 is located. Further, the terminal 100 can make a call, send a message, and the like.
[0062] It is easy to understand that, since the terminal 100 implements the SIM module function through the server 200, the terminal 100 can not insert a SIM module, or not preinstall a related module of a soft e-SIM module. In the present application, the terminal 100 can use the SIM module in the server 200 through a proxy module to access the mobile communication network, and implement the functions of making a call and sending a message. From the user side, it can be considered that a virtual SIM module is newly built on the terminal 100, so that the user can use the virtual SIM module on the terminal 100 to access the mobile communication network, and implement the functions of making a call and sending a message. In the present application, the virtual SIM module refers to that the terminal 100 side does not store the data (such as unique number and encryption key, and authentication and authorization information) of the SIM module, but the server 200 stores the data of the SIM module. However, the real SIM module in the present application refers to that the terminal 100 side stores the data of the SIM module, such as a pluggable SIM module and an embedded e-SIM module.
[0063] The one or more networks described above can be a local area network (LAN) or a wide area network (WAN), such as the Internet. The networks can be implemented using any known network communication protocol, which can be various wired or wireless communication protocols, such as Ethernet, universal serial bus (USB), FIREWIRE, Bluetooth, wireless fidelity (Wi-Fi), NFC, or any other suitable communication protocol. Of course, in some examples, the terminal 100 can also connect to the server 200 through a cellular network communication protocol (e.g., 3G / 4G / 5G). It should be noted that in this example, the terminal 100 needs to be installed with an additional SIM module (a pluggable SIM module or an e-SIM module) and a modem. However, the SIM module and the modem here are used for the terminal 100 to connect to the server 200 to implement the function of online surfing, rather than for the terminal 100 to connect to the operator network to implement the function of making a call or sending a message.
[0064] It can be understood that, since the terminal 100 can use the SIM module and the modem module on the server 200 to implement the corresponding functions. Therefore, in addition to the case where the terminal 100 connects to the server 200 through the mobile network of the SIM module, the terminal 100 can not necessarily be inserted with a pluggable SIM module or an integrated e-SIM module, and can not be provided with a modem. In other words, the terminal 100 can not rely on the pluggable SIM module or the e-SIM module inserted by itself, and the modem to implement the function of making a call or sending a message.
[0065] For example, the terminal 100 in the present application can be a mobile phone, a tablet computer, a personal computer (PC), a personal digital assistant (PDA), a smart watch, a netbook, a wearable electronic device, an augmented reality (AR) device, a virtual reality (VR) device, a vehicle-mounted device, a smart car, a smart speaker, a robot, etc. The specific form of the terminal 100 is not specially limited in the present application.
[0066] Figure 2A A structural schematic diagram of the terminal 100 is shown.
[0067] The terminal 100 can include a processor 110, an external memory interface 120, an internal memory 121, a universal serial bus (USB) interface 130, a charging management module 140, a power management module 141, a battery 142, an antenna 1, an antenna 2, a mobile communication module 150, a wireless communication module 160, an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, a headset jack 170D, a sensor module 180, a key 190, a motor 191, an indicator 192, a camera 193, a display screen 194, and a subscriber identification module (SIM) card interface 195, etc. The sensor module 180 can include a pressure sensor 180A, a gyroscope sensor 180B, a barometric pressure sensor 180C, a magnetic sensor 180D, an acceleration sensor 180E, a distance sensor 180F, a proximity light sensor 180G, a fingerprint sensor 180H, a temperature sensor 180J, a touch sensor 180K, an ambient light sensor 180L, a bone conduction sensor 180M, etc.
[0068] It can be understood that the structure shown in the embodiments of the present application does not constitute a specific limitation on the terminal 100. In some other embodiments of the present application, the terminal 100 can include more or fewer components than shown, or combine certain components, or split certain components, or different arrangement of components. The components shown can be implemented in hardware, software, or a combination of software and hardware.
[0069] The processor 110 can include one or more processing units, for example: the processor 110 can include an application processor (AP), a modem processor, a graphics processing unit (GPU), an image signal processor (ISP), a controller, a video codec, a digital signal processor (DSP), a baseband processor, and / or a neural-network processing unit (NPU), etc. Different processing units can be independent devices, or can be integrated in one or more processors.
[0070] As explained above, in some embodiments of the present application, the terminal 100 can not be provided with a modem processor, or not provided with part of the functions in the modem processor. Alternatively, the terminal 100 can also not be provided with a baseband processor.
[0071] The controller can generate operation control signals according to the instruction operation code and the timing signal, complete the control of fetching and executing instructions.
[0072] 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, thereby improving the efficiency of the system.
[0073] In some embodiments, the processor 110 can include one or more interfaces. The interface 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.
[0074] 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 limitation on the structure of the terminal 100. In some other embodiments of the present application, the terminal 100 can also use different interface connection methods or a combination of multiple interface connection methods in the above embodiments.
[0075] The charging management module 140 is configured to receive charging input from a charger. The charger can be a wireless charger or a wired charger. In some wired charging embodiments, the charging management module 140 can receive charging input from a wired charger through the USB interface 130. In some wireless charging embodiments, the charging management module 140 can receive wireless charging input through the wireless charging coil of the terminal 100. The charging management module 140 can charge the battery 142 while also supplying power to the electronic device through the power management module 141.
[0076] The power management module 141 is configured to connect the battery 142 and the charging management module 140 to the processor 110. The power management module 141 receives input from the battery 142 and / or the charging management module 140 to power the processor 110, the internal memory 121, the display 194, the camera 193, the wireless communication module 160, and the like. The power management module 141 can also be configured to monitor parameters such as battery capacity, battery cycle count, battery health status (leakage, impedance), and the like. In some embodiments, the power management module 141 can also be disposed in the processor 110. In some other embodiments, the power management module 141 and the charging management module 140 can be disposed in the same device.
[0077] The wireless communication function of the terminal 100 can be implemented by the antenna 1, the antenna 2, the mobile communication module 150, the wireless communication module 160, the modem processor, and the baseband processor, and the like.
[0078] The antenna 1 and the antenna 2 are configured to transmit and receive electromagnetic wave signals. Each antenna in the terminal 100 can be configured to cover a single or multiple communication frequency bands. Different antennas can also be multiplexed to improve the utilization of the antennas. For example, the antenna 1 can be multiplexed as a diversity antenna for a wireless local area network. In some other embodiments, the antennas can be used in combination with a tuning switch.
[0079] The mobile communication module 150 can provide a solution for wireless communication including 2G / 3G / 4G / 5G and the like applied to the terminal 100. The mobile communication module 150 can include at least one filter, a switch, a power amplifier, a low noise amplifier (LNA), and the like. The mobile communication module 150 can receive electromagnetic waves from the antenna 1, filter, amplify, and the like the received electromagnetic waves, and transmit the processed signals to the modem processor for demodulation. The mobile communication module 150 can also amplify signals modulated by the modem processor and radiate the signals as electromagnetic waves through the antenna 1. In some embodiments, at least part of the functional modules of the mobile communication module 150 can be disposed in the processor 110. In some embodiments, at least part of the functional modules of the mobile communication module 150 and at least part of the modules of the processor 110 can be disposed in the same device.
[0080] The modem processor can include a modulator and a demodulator. The modulator is configured to modulate a low-frequency baseband signal to be transmitted into a medium-high frequency signal. The demodulator is configured to demodulate a received electromagnetic wave signal into a low-frequency baseband signal. The demodulator then transmits the demodulated low-frequency baseband signal to the baseband processor for processing. The low-frequency baseband signal processed by the baseband processor is transmitted to the application processor. The application processor outputs a sound signal through an audio device (not limited to a speaker 170A, a microphone 170B, etc.), or displays an image or a video through a display screen 194. In some embodiments, the modem processor can be a separate device. In other embodiments, the modem processor can be independent of the processor 110, and can be disposed in the same device as the mobile communication module 150 or other functional modules.
[0081] In some embodiments of the present application, the terminal 100 can also log in to the server 200 through the wireless communication module 160 and the antenna 2, and the server 200 can implement corresponding SIM module functions and modem functions, and access to a mobile communication network to implement the functions of making a call, sending a message, etc. Therefore, in some examples, the terminal 100 can also not be provided with the mobile communication module 150 and the antenna 1, or not be provided with part of the functions in the mobile communication module 150.
[0082] The wireless communication module 160 can provide wireless communication solutions applied to the terminal 100, including wireless local area networks (WLAN) (such as wireless fidelity (Wi-Fi) networks), Bluetooth (BT), global navigation satellite system (GNSS), frequency modulation (FM), near field communication (NFC), infrared technology (IR), etc. 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 electromagnetic waves via the antenna 2, performs frequency modulation and filtering processing 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, and convert it into electromagnetic wave radiation via the antenna 2.
[0083] In some embodiments, antenna 1 and mobile communication module 150 of terminal 100 are coupled, and antenna 2 and wireless communication module 160 are coupled, so that terminal 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 global positioning system (GPS), global navigation satellite system (GLONASS), beidou navigation satellite system (BDS), quasi-zenith satellite system (QZSS), and / or satellite based augmentation systems (SBAS).
[0084] Terminal 100 implements a display function through a GPU, display screen 194, and an application processor, etc. The GPU is a microprocessor for image processing, connected to display screen 194 and the application processor. The GPU is used to perform mathematical and geometric calculations, for graphics rendering. Processor 110 can include one or more GPUs that execute program instructions to generate or change display information.
[0085] 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 terminal 100 can include one or N display screens 194, where N is a positive integer greater than 1.
[0086] The terminal 100 can implement the photographing function through the ISP, the camera 193, the video codec, the GPU, the display screen 194, and the application processor.
[0087] The ISP is configured to process the data fed back by the camera 193. For example, when taking a photo, the shutter is opened, the light is transmitted to the camera photosensitive element through the lens, the light signal is converted into an electrical signal, and the camera photosensitive element transmits the electrical signal to the ISP for processing to convert it into an image visible to the naked eye. The ISP can also perform algorithm optimization on the noise, brightness, and skin color of the image. The ISP can also optimize the exposure, color temperature, and other parameters of the shooting scene. In some embodiments, the ISP can be arranged in the camera 193.
[0088] The camera 193 is configured to capture still images or videos. An object generates an optical image through a lens and projects it onto a photosensitive element. The photosensitive element can be a charge coupled device (CCD) or a complementary metal-oxide-semiconductor (CMOS) phototransistor. The photosensitive element converts the light signal into an electrical signal, which is then transmitted to the ISP to convert it into a digital image signal. The ISP outputs the digital image signal to the DSP for processing. The DSP converts the digital image signal into an image signal in a standard RGB, YUV, or the like format. In some embodiments, the terminal 100 can include one or N cameras 193, where N is a positive integer greater than 1.
[0089] The digital signal processor is used to process digital signals, in addition to being able to process digital image signals, it can also process other digital signals. For example, when the terminal 100 selects a frequency point, the digital signal processor is used to perform Fourier transform on the frequency point energy, etc.
[0090] The video codec is used to compress or decompress digital video. The terminal 100 can support one or more video codecs. In this way, the terminal 100 can play or record videos in multiple encoding formats, such as: moving picture experts group (MPEG) 1, MPEG 2, MPEG 3, MPEG 4, etc.
[0091] The NPU is a neural-network (NN) calculation processor, which can quickly process input information by drawing on the structure of a biological neural network, such as drawing on the transmission mode between human brain neurons, and can also constantly self-learn. Through the NPU, intelligent cognitive applications of the terminal 100 can be realized, such as: image recognition, face recognition, voice recognition, text understanding, etc.
[0092] The external memory interface 120 can be used to connect an external memory card, such as a Micro SD card, to expand the storage capacity of the terminal 100. The external memory card communicates with the processor 110 through the external memory interface 120 to realize data storage functions. For example, music, video, etc. Files are saved in the external memory card.
[0093] The internal memory 121 can be used to store computer executable program codes, which include 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 program required by a function (such as a sound playing function, an image playing function, etc.), etc. The data storage area can store data created during the use of the terminal 100 (such as audio data, a phone book, etc.), etc. In addition, the internal memory 121 can include a high-speed random access memory, and can also include a non-volatile memory, such as at least one magnetic disk storage device, a flash memory device, a universal flash storage (UFS), etc. The processor 110 executes various function applications and data processing of the terminal 100 by running instructions stored in the internal memory 121 and / or instructions stored in the memory arranged in the processor.
[0094] The terminal 100 can realize audio functions through the audio module 170, the speaker 170A, the receiver 170B, the microphone 170C, the earphone interface 170D, and the application processor, etc. For example, music playing, recording, etc.
[0095] The audio module 170 is configured to convert digital audio information into an analog audio signal output, and to convert an analog audio input into a digital audio signal. The audio module 170 can also be configured to encode and decode audio signals. In some embodiments, the audio module 170 can be disposed in the processor 110, or some of the functions of the audio module 170 can be disposed in the processor 110.
[0096] The speaker 170A, also referred to as a "loudspeaker", is configured to convert an audio electrical signal into a sound signal. The terminal 100 can listen to music or listen to a hands-free call through the speaker 170A.
[0097] The receiver 170B, also referred to as a "earpiece", is configured to convert an audio electrical signal into a sound signal. When the terminal 100 receives a call or a voice message, the user can listen to the voice by holding the receiver 170B close to the ear.
[0098] The microphone 170C, also referred to as a "microphone", "transducer", is configured to convert a sound signal into an electrical signal. When making a call or sending a voice message, the user can speak into the microphone 170C by holding the mouth close to the microphone 170C, and input the sound signal into the microphone 170C. The terminal 100 can be provided with at least one microphone 170C. In other embodiments, the terminal 100 can be provided with two microphones 170C, in addition to collecting sound signals, noise reduction functions can also be achieved. In other embodiments, the terminal 100 can also be provided with three, four or more microphones 170C, in addition to collecting sound signals, noise reduction, and can also identify the source of the sound, and achieve directional recording functions, etc.
[0099] The earphone interface 170D is configured to connect a wired earphone. The earphone interface 170D can be a USB interface 130, or a 3.5mm open mobile terminal platform (OMTP) standard interface, a cellular telecommunications industry association of the USA (CTIA) standard interface.
[0100] The touch sensor 180K, also referred to as a "touch device". The touch sensor 180K can be disposed on the display screen 194, and the touch sensor 180K and the display screen 194 form a touch screen, also referred to as a "touch screen". The touch sensor 180K is configured to detect a touch operation acting on or near it. The touch sensor can pass the detected touch operation to the application processor to determine the touch event type. The display screen 194 can provide visual output related to the touch operation. In other embodiments, the touch sensor 180K can also be disposed on the surface of the terminal 100, which is different from the position of the display screen 194.
[0101] The keys 190 include a power key, a volume key, and the like. The keys 190 can be mechanical keys. Alternatively, the keys 190 can be touch keys. The terminal 100 can receive key input and generate key signal input related to user settings and function control of the terminal 100.
[0102] The motor 191 can generate a vibration prompt. The motor 191 can be used for incoming call vibration prompt, and can also be used for touch vibration feedback. For example, touch operations applied to different applications (e.g., photographing, audio playing, and the like) can correspond to different vibration feedback effects. Touch operations applied to different regions of the display screen 194 can also correspond to different vibration feedback effects. Different application scenarios (e.g., time reminders, received messages, alarms, games, and the like) can also correspond to different vibration feedback effects. The touch vibration feedback effect can also be customized.
[0103] The indicator 192 can be an indicator light, which can be used to indicate a charging state, a power change, and can also be used to indicate a message, a missed call, a notification, and the like.
[0104] The SIM module interface 195 is used to connect a SIM module. The SIM module can be inserted into or pulled out of the SIM module interface 195 to realize contact and separation with the terminal 100. The terminal 100 can support one or N SIM module interfaces, where N is a positive integer greater than 1. The SIM module interface 195 can support a Nano SIM module, a Micro SIM module, a SIM module, and the like. The same SIM module interface 195 can simultaneously insert multiple cards. The types of the multiple cards can be the same or different. The SIM module interface 195 can also be compatible with different types of SIM modules. The SIM module interface 195 can also be compatible with external storage cards. The terminal 100 interacts with a network through the SIM module to realize functions such as call and data communication. In some embodiments, the terminal 100 uses an eSIM, i.e., an embedded SIM module. The eSIM module can be embedded in the terminal 100 and cannot be separated from the terminal 100.
[0105] In some embodiments of the present application, it has been described above that the terminal 100 can also not be provided with the SIM module interface 195.
[0106] The software system of the terminal 100 can use a layered architecture, an event-driven architecture, a microkernel architecture, a microservice architecture, or a cloud architecture. Embodiments of the present application exemplarily illustrate the software structure of the terminal 100 by taking an Android system with a layered architecture as an example.
[0107] Figure 2B is a software structure block diagram of the terminal 100 of embodiments of the present application.
[0108] A layered architecture divides software into several layers, each with a clear role and division of labor. Layers communicate with each other through software interfaces. In some embodiments, the Android system is divided into four layers, from top to bottom, the application layer, the application framework layer, the Android runtime and system library, and the kernel layer.
[0109] The application layer can include a series of application packages.
[0110] As shown in Figure 2B , the application packages can include camera, gallery, calendar, call, map, navigation, WLAN, Bluetooth, music, video, short message, etc.
[0111] In some embodiments of the present application, the application package of the terminal can also include a first application, such as a SIM application or a system setting application including a multi-card management module, etc., for providing an interface for the user to create a virtual SIM module, and to activate and deactivate the virtual SIM module. The activation of the virtual SIM module is to establish a channel for transmitting data between the terminal 100 and the server 200. The deactivation of the virtual SIM module is to disconnect the channel for transmitting data between the terminal 100 and the server.
[0112] The application framework layer provides application programming interfaces (APIs) and programming frameworks for the applications of the application layer. The application framework layer includes a number of pre-defined functions.
[0113] As shown in Figure 2B , the application framework layer can include a window manager, a content provider, a view system, a phone manager, a resource manager, a notification manager, etc.
[0114] The window manager is used to manage window programs. The window manager can obtain the size of the display screen, determine whether there is a status bar, lock the screen, and capture the screen, etc.
[0115] The content provider is used to store and obtain data, and make the data accessible to the application. The data can include video, image, audio, dialed and received calls, browsing history and bookmarks, phonebook, etc.
[0116] The view system includes visual controls, such as controls for displaying text, controls for displaying pictures, etc. The view system can be used to build an application. A display interface can be composed of one or more views. For example, a display interface including a short message notification icon can include a view for displaying text and a view for displaying pictures.
[0117] The telephony manager is used to provide the communication function of the terminal 100. For example, the management of the call state (including call connection, call hang-up, etc.).
[0118] In some embodiments of the present application, the telephony manager is also used to broadcast the status of the SIM module, etc., for example, the addition of a virtual SIM module, so that other systems of the application framework layer or applications of the application layer can listen to the added message and perform corresponding operations.
[0119] The resource manager provides various resources for applications, such as localized strings, icons, pictures, layout files, video files, etc.
[0120] The notification manager enables applications to display notification information in the status bar, which can be used to convey messages of the notification type and can automatically disappear after a short stay without user interaction. For example, the notification manager is used to notify the completion of the download, message reminders, etc. The notification manager can also be a notification in the form of a chart or a scroll bar text appearing in the top status bar of the system, such as the notification of the application running in the background, and can also be a notification in the form of a dialog window appearing on the screen. For example, the text information is prompted in the status bar, a prompt sound is emitted, the electronic device is vibrated, the indicator light flashes, etc.
[0121] The Android Runtime includes the core library and the virtual machine. The Android runtime is responsible for the scheduling and management of the Android system.
[0122] The core library contains two parts: one part is the function function called by the java language, and the other part is the core library of Android.
[0123] The application layer and the application framework layer run in the virtual machine. The virtual machine executes the java file of the application layer and the application framework layer into a binary file. The virtual machine is used to manage the object lifecycle, stack management, thread management, security and exception management, and garbage collection, etc.
[0124] The system library can include multiple functional modules. For example: surface manager, media library, three-dimensional graphics processing library (for example: OpenGL ES), 2D graphics engine (for example: SGL), etc.
[0125] The surface manager is used to manage the display subsystem and provides the fusion of 2D and 3D layers for multiple applications.
[0126] The media library supports multiple commonly used audio, video format playback and recording, and static image files, etc. The media library can support multiple audio and video coding formats, such as: MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, etc.
[0127] The three-dimensional graphics processing library is used to implement three-dimensional graphics drawing, image rendering, synthesis, and layer processing, etc.
[0128] The 2D graphics engine is a drawing engine for 2D drawing.
[0129] The kernel layer is a layer between hardware and software. The kernel layer at least contains display drivers, camera drivers, audio drivers, and sensor drivers.
[0130] In some embodiments of the present application, the kernel layer further includes a first module, i.e., a proxy module, for transmitting data of an upper layer application (such as a call application, a short message application, a first application, etc.) of the terminal 100 to the server 200. For example, the first module transmits data to the server 200 through a WiFi link or a link established by a modem. The first module can be a newly added module, can receive data of the upper layer application from a radio interface layer daemon (RILD) of the kernel layer, and can upload data received from the server 200 to the upper layer application through the RILD. Of course, the first module can also be a newly added functional module in an existing module, such as a newly added functional module in the RILD, and the embodiments of the present application do not limit this.
[0131] As can be seen, in the prior art, the terminal 100 can directly call the modem through the RILD to interact with the operator network. In some embodiments of the present application, the terminal 100 can interact with the server 200 through the RILD and a WIFI link. Alternatively, the terminal can interact with the server 200 through the RILD and a cellular network, i.e., the terminal can interact with the server 200 through the RILD, a modem, and an operator network.
[0132] RILD is a bridge between the terminal 100 system and the modem. Specifically, the upper layer application interfaces with the RILD through a socket, and the RILD interfaces with the modem through a serial port. Because even the hardware and software of modems supporting the same network mode are different, the difference between modems supporting different network modes is even greater. In order to eliminate these differences, Android makes an abstraction in the framework layer, using a concept of a phone manager. That is, when calling the modem, the upper layer application does not need to be concerned about the difference between different modems, but can directly use the function protocol provided by the phone manager, and requires that the lower layer support environment have a unified description. This unified description is implemented by the RILD.
[0133] Figure 3 A structure schematic diagram of a server 200 provided by an embodiment of the present application is shown in FIG. 2. The server 200 includes at least one processor 210, at least one memory 220, and at least one communication interface 230.
[0134] The processor 210, the memory 220, and the communication interface 230 are connected through a bus. The processor 210 can include a general central processing unit (CPU), a microprocessor, an application-specific integrated circuit (ASIC), or one or more integrated circuits for controlling program execution of the solution of the present application. The processor 210 can also include multiple CPUs, and the processor 210 can be a single-CPU processor or a multi-CPU processor. The processor herein can refer to one or more devices, circuits, or processing cores for processing data (for example, computer program instructions).
[0135] The memory 220 can be a Read-Only Memory (ROM) or other type of static storage device that can store static information and instructions, a Random Access Memory (RAM) or other type of dynamic storage device that can store information and instructions, an Electrically Erasable Programmable Read-Only Memory (EEPROM), a Compact Disc Read-Only Memory (CD-ROM) or other optical disk storage, a magneto-optical disk storage, a magnetic disk storage or other magnetic storage devices, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a computer, but is not limited to this. The memory 220 can exist independently and be connected to the processor 210 through a bus. The memory 220 can also be integrated with the processor 210. The memory 220 is used to store application program code for implementing the scheme of the present application, and the processor 210 controls the execution. The processor 210 is used to execute the computer program code stored in the memory 220, so as to realize the method of Bluetooth lost object search in the embodiments of the present application.
[0136] The communication interface 230 can be used to communicate with other devices or communication networks, such as Ethernet, wireless local area networks (WLAN), etc. In the embodiments of the present application, the communication interface 230 can be specifically used to establish a communication connection with the terminal 100, etc.
[0137] In the embodiments of the present application, the processor 210 can also include a modem module and a baseband processor. The modem module can include a modulator and a demodulator. The modulator is used to modulate the low-frequency baseband signal to be sent into a medium-high frequency signal. The demodulator is used to demodulate the received electromagnetic wave signal into a low-frequency baseband signal. Then the demodulator transmits the demodulated low-frequency baseband signal to the baseband processor for processing. After the low-frequency baseband signal is processed by the baseband processor, it is sent to the terminal 100 through the communication interface 230, etc.
[0138] The server 200 further includes at least one SIM module 240. The SIM module 240 can be provided with a plurality of card slots for inserting a pluggable SIM module to provide a SIM module function. Alternatively, the SIM module 240 can also integrate a plurality of e-SIM module modules. Alternatively, the SIM module 240 is provided with a plurality of card slots and integrates a plurality of e-SIM module modules, and the embodiments of the present application are not limited.
[0139] It can be understood that the server 200 can provide the SIM module function and the modem function for a large number of terminal users. Therefore, the server 200 can purchase more SIM modules (including the pluggable SIM module and the e-SIM module) from the operator. And, the server 200 can integrate the modem module supporting multiple network modes. In this way, the terminal user can not have to consider the network mode supported by the modem module when using, and can use the SIM module of any operator.
[0140] In some embodiments of the present application, the server 200 can further include a mobile communication module 250 and at least one antenna, which is not shown in the figure.
[0141] The mobile communication module 250 can be applied to provide a solution on the server 200 including 2G / 3G / 4G / 5G wireless communication and the like. The mobile communication module 250 can include at least one filter, switch, power amplifier, low noise amplifier and the like. The mobile communication module 250 can receive electromagnetic waves by the antenna, and perform filtering, amplification and the like on the received electromagnetic waves, and transmit to the modem module for demodulation. The mobile communication module 250 can also amplify the signal modulated by the modem module, and convert it into electromagnetic waves radiated by the antenna. In some examples, at least part of the functional modules of the mobile communication module 250 can be arranged in the processor 210. In other examples, at least part of the functional modules of the mobile communication module 250 can be arranged in the same device as at least part of the modules of the processor 210.
[0142] That is, the server 200 can access the operator network through the antenna, the mobile communication module, the modem module and the baseband processor, and realize the communication function such as making a call or sending a message by using the operator network.
[0143] In other embodiments of the present application, the server 200 can be part of the operator network, that is, the server 200 is a server in the operator network, and the server 200 can also interact with the device (such as the base station, the core network device and the like) in the operator network through the communication interface 230 to realize the communication function such as making a call or sending a message.
[0144] Optionally, the server 200 can further include an output device and an input device, which are not shown in the figure.
[0145] The output device and the processor communicate, and the information can be displayed in various ways. For example, the output device can be a liquid crystal display (LCD), a light emitting diode (LED) display device, a cathode ray tube (CRT) display device, or a projector, etc. The input device and the processor communicate, and the input of the user can be received in various ways. For example, the input device can be a mouse, a keyboard, a touch screen device, or a sensor device, etc.
[0146] It can be understood that the structure of the embodiment of the present application does not constitute a specific limitation of the server 200. In other embodiments of the present application, the server 200 can include more or fewer components than the illustration, or combine some components, or split some components, or different component arrangement. The illustrated components can be implemented in hardware, software, or a combination of software and hardware.
[0147] The technical solutions involved in the following embodiments can be implemented in the terminal 100 as shown in Figure 2A or Figure 2B and the server 200 as shown in Figure 3 .
[0148] The following will be described in detail in combination with the technical solutions provided by the embodiments of the present application.
[0149] First, the user uses the terminal 100 to newly create a virtual SIM module, and can subsequently use the newly created virtual module to make and receive calls, send and receive messages, etc.
[0150] It should be noted that the manager of the server 200 can purchase at least one SIM module from the operator in advance. In some examples, the purchased SIM module is a pluggable SIM module, which needs to be inserted into the card slot of the server 200. In other examples, the purchased SIM module is an e-SIM module, and the server 200 needs to download the corresponding card data from the server of the operator. That is, the server 200 can implement the function of the SIM module.
[0151] Then, the user of the terminal 100 applies for opening the virtual SIM module from the server 200. That is, the terminal 100 applies to use the existing SIM module of the server 200 to communicate with the network of the operator. For example, the user of the terminal 100 can log in to the server 200 to open the virtual SIM module online by using the APP on the terminal 100 or by logging in through a webpage, or in other ways, which are not limited here. After the virtual SIM module is successfully opened, the terminal 100 obtains the credentials for using the existing SIM module of the server 200, for example, the account and password corresponding to the virtual SIM module. The account can be a mobile phone number, a username, a login name, a user identity, a terminal identifier, etc. The password can be a string of numbers, characters, symbols, etc., or a face, a fingerprint, an iris, etc. The specific form of the above credentials is not limited in the embodiments of the application.
[0152] It should be noted that the server 200 needs to associate the above credentials with the existing SIM module on the server 200. That is, the user of the terminal 100 activates the SIM module on the server 200 corresponding to the credentials by using the credentials, and then the terminal 100 can communicate with the network of the operator through the corresponding SIM module on the server 200 to realize the functions of making a call and sending a message, etc. That is, the terminal 100 can use the SIM module on the server 200 through the proxy module to communicate with the network of the operator. From the user side, it can be considered that a new virtual SIM module is created on the terminal 100, and the card data corresponding to the virtual SIM module is actually the card data of the corresponding SIM module in the server 200. That is, the operator and the card number corresponding to the virtual SIM module are the same as those of the corresponding SIM module in the server 200.
[0153] It can be understood that the user of the terminal 100 can apply for opening multiple virtual SIM modules, and each virtual SIM module corresponds to a SIM module on the server 200.
[0154] Since from the user side, the user uses the virtual SIM module to achieve the same experience as using the existing SIM module to realize the functions of making a call and sending a message, etc., in order to facilitate description, the virtual SIM module newly created by the technical solution of the application will be referred to as a virtual card hereinafter.
[0155] Subsequently, the user can create a virtual card through the interface provided by the first application. Here, the first application is taken as an example of a system containing a multi-card management module.
[0156] For example, the user can open the system settings to enter, for example, Figure 4The multi-SIM management interface 401 shown in Figure (1) displays information about the SIM modules installed on the terminal 100. For example, if a SIM module 1 (abbreviated as card 1 in the figure) is installed in one of the card slots on the terminal 100, the multi-SIM management interface 401 displays the phone number, operator, and other information of the SIM module 1. The multi-SIM management interface 401 also displays information about another card slot on the terminal 100 where no SIM card is installed. Of course, if the terminal 100 also supports e-SIM, the multi-SIM management interface 401 can also display information about the e-SIM module. It should be noted that the e-SIM will occupy a card slot. However, the virtual card created using the method provided in this embodiment can create a virtual card without occupying a card slot and without using the terminal's own modem. In other words, when there is no empty card slot on the terminal, the method provided in this embodiment can also be used to create a virtual card.
[0157] The multi-card management interface 401 also displays a control 402 for adding virtual cards. In response to the user clicking this control 402, terminal 100 enters... Figure 4 The virtual card creation interface 403 shown in (2) allows users to create a new virtual card using pre-obtained credentials. Specifically, users can enter the account and password corresponding to the virtual card. Of course, users can also choose other password methods, such as face recognition, fingerprint recognition, iris recognition, etc. After the user enters the credentials, the user can confirm the creation of the new virtual card by clicking the confirmation control 404. In response to the user clicking the confirmation control 404, the terminal 100 sends the credentials (such as account and password) entered by the user to the server 200 for authentication.
[0158] For a specific implementation, please refer to Figure 5 Upon detecting that the user enters credentials (such as virtual card account and password) on the virtual card creation interface of the first application and clicks the "OK" control, the first application sends the credential information entered by the user to the server 200 through the phone manager, RILD, and the first module to request the creation (or activation) of the virtual card. The terminal 100 can establish a connection with the server 200 via WIFI or cellular network.
[0159] The server 200 compares the received user inputted credential with the credential stored on the server 200. If the comparison is successful, on one hand, a secure channel for transmitting data is established between the terminal 100 and the server 200. Subsequently, the terminal 100 can access the operator network using the SIM module on the server 200 through the secure channel, and use the operator network to make a call, send a message, etc. On the other hand, the server 200 starts to interact with the operator network to load the information of the SIM module (a pluggable SIM card or an e-SIM card) corresponding to the virtual card. Here, the method for the server 200 to load the SIM card is the same as the method for a mobile phone to load a SIM card in the prior art, and thus will not be described herein.
[0160] The process of establishing the secure channel between the terminal 100 and the server 200 includes the process of negotiating the encryption method between the terminal 100 and the server 200, etc. The encryption method can be, for example, asymmetric encryption (such as the RSA algorithm) or the Digital Signature Algorithm (DSA), etc. The encryption related content can refer to the related technology in the encryption field, and thus will not be described herein.
[0161] After the secure channel between the terminal 100 and the server 200 is successfully established, the server 200 sends a message of successful creation of the virtual card to the terminal 100. Optionally, the server 200 sends the information of the SIM module corresponding to the virtual card to the terminal 100, such as the operator and the card number, etc.
[0162] When the first module receives the message of successful creation of the virtual card, the first module sends the message to the phone manager through the RILD. The phone manager broadcasts the message of successful addition of the virtual card, which can include the identification of the virtual card. The identification of the virtual card can be the card number of the SIM module corresponding to the virtual card at the server 200, or the identification (such as the SIM module 3) allocated by the terminal 100 for the virtual card, used to distinguish the existing pluggable SIM module or e-SIM module, etc. on the terminal 100. Other applications (such as the first application, the call application, the contact application, the short message application, etc.) in the application layer or other system modules (such as the notification manager) in the application program framework layer can listen to the message of successful addition of the virtual card, and then perform corresponding operations, such as recording the identification of the added virtual card, updating the interface, etc.
[0163] 1. Update the interface of the multi-card management of the first application
[0164] As Figure 4The multi-card management interface 405 shown in FIG. 3 is an example of the updated multi-card management interface. As can be seen, the updated multi-card management interface 405 displays information of the newly added virtual card (i.e., SIM module 3, denoted as card 3 in the figure), such as the operator and phone number of the SIM module 3. In an example, the terminal 100 can mark the icon of the virtual card and the card information to distinguish the virtual card from the existing pluggable SIM module or e-SIM module on the terminal 100.
[0165] The SIM module 3 also corresponds to a switch control 407. The user can turn on (i.e., activate) or turn off (i.e., deactivate) the SIM module 3 through the switch control 407.
[0166] It can be understood that the process of the user creating a virtual card can be considered as the process of the user activating the virtual card for the first time. Subsequently, when the user does not want to use the virtual card, the user can deactivate the virtual card through the switch control 407, i.e., set the virtual card to be in an inactive state. When it is detected that the user turns off the SIM module 3 through the switch control 407, the terminal 100 disconnects the security channel established between the terminal 100 and the server 200. Then, the user can no longer use the SIM module 3 through the terminal 100. In some examples, the icon and card information of the SIM module 3 on the multi-card management interface 405 can be set to be in gray to prompt the user that the SIM module 3 is not available.
[0167] After deactivating the virtual card, the user can still activate the virtual card again through the switch control 407, i.e., set the virtual card to be in an active state. That is, the terminal 100 and the server 200 establish the security channel again. Then, the user can continue to use the SIM module 3.
[0168] It should be noted that when the terminal 100 newly creates a virtual card or activates a virtual card, the terminal 100 needs to maintain a communication connection with the server 200. In one example, the terminal 100 is connected to the server 200 through WIFI. In this scheme, the terminal 100 can not be provided with a SIM module and a modem module, etc. In another example, the terminal 100 is connected to the server 200 through a cellular data network. In this scheme, the terminal 100 still needs to be provided with a SIM module and a modem module to realize the connection of the terminal 100 to the server 200. However, when the terminal 100 realizes the functions such as making a call and sending a message, the terminal 100 realizes the functions of the SIM module and the modem function through the server 200. For example, the terminal 100 realizes the connection with the server 200 using the SIM module 1 installed thereon. However, the terminal 100 can realize the functions of making a call and sending a message using other SIM modules installed on the server 200. It should be noted that in this scheme, when the terminal 100 uses the SIM module 1 to communicate data with the server 200, the corresponding traffic fee needs to be paid. Moreover, when the terminal 100 makes a call and sends a message through other SIM modules installed on the server 200, the corresponding call fee also needs to be paid. In this case, the total fee can be relatively high. Alternatively, when the user selects this scheme, the terminal 100 can prompt the user to avoid the user from paying a high fee without knowing or being confused about the fee to be paid.
[0169] In some embodiments, when a virtual card is newly created, for example, after the user clicks the add virtual card control 402 on the multi-card management interface 401 as shown in (1) of FIG. 6, the terminal 100 can detect whether the terminal 100 can access the network. If the terminal 100 cannot access the network, the terminal 100 prompts the user to turn on the network connection or directly jumps to the setting interface of the network connection to facilitate the user to directly set the network connection. Figure 4
[0170] In some embodiments, when a virtual card is newly created, for example, after the user clicks the add virtual card control 402 on the multi-card management interface 401 as shown in (1) of FIG. 6, the terminal 100 can detect whether the terminal 100 can access the network. If the terminal 100 cannot access the network, the terminal 100 prompts the user to turn on the network connection or directly jumps to the setting interface of the network connection to facilitate the user to directly set the network connection. Figure 4
[0171] In some embodiments, when a virtual card is newly created, for example, after the user clicks the add virtual card control 402 on the multi-card management interface 401 as shown in (1) of FIG. 6, the terminal 100 can detect whether the terminal 100 can access the network. If the terminal 100 cannot access the network, the terminal 100 prompts the user to turn on the network connection or directly jumps to the setting interface of the network connection to facilitate the user to directly set the network connection. Figure 4
[0172] In some embodiments, when the virtual card is in the activated state, the terminal 100 can detect whether the communication connection with the server 200 is maintained all the time. For example, the terminal 100 can send a heartbeat packet to the server 200 at intervals when the virtual card is in the activated state, to detect whether the secure channel between the terminal 100 and the server 200 is disconnected. If it is detected that the secure channel between the terminal 100 and the server 200 is disconnected, the terminal 100 can prompt the user to select to reactivate the virtual card, or automatically initiate the process of activating the virtual card.
[0173] After the terminal 100 fails to reactivate the virtual card for a preset number of times, the terminal 100 can also prompt the user to reselect the network or reselect the network connection mode (switching the WIFI connection to the cellular data network), or the terminal 100 automatically switches the network (or automatically switches the network connection mode) to initiate the process of activating the virtual card again. After the preset number of times of reactivating the virtual card all fail, it is determined that the virtual card is in the inactivated state. In one example, the terminal 100 can display a notification prompting that the network connection is disconnected or the virtual card is unavailable, etc. In another example, the terminal 100 directly grays out the icon and the card information corresponding to the virtual card in the multi-card management interface 405, indicating that the virtual card is unavailable.
[0174] In some embodiments, when the virtual card is in the activated state, the terminal 100 can also detect the signal quality of the network connection in real time, and when the signal quality of the network connection is lower than a threshold, the terminal 100 can prompt the user to switch the network connection mode or automatically switch the network connection mode. In this way, the secure channel between the terminal 100 and the server 200 can be kept open for a long time, the duration of the virtual card in the activated state can be prolonged, and the user experience can be improved.
[0175] As can be seen from the above, when the virtual SIM module is activated successfully, the management interface of the virtual SIM module in the first application is consistent with the management interface of the real SIM module (the pluggable SIM module and the e-SIM module). That is, after the virtual SIM module is activated, the user manages the virtual SIM module and the real SIM module in the same way, without adding new user operations.
[0176] 2. Update the information of the SIM module in the status bar
[0177] In a specific implementation, after the notification manager listens to the broadcast of adding a virtual card sent by the phone manager, the notification manager can display the information of the SIM module corresponding to the added virtual card in the status bar, such as the name of the operator, the signal strength, etc. In one example, the identifier of the virtual card can be distinguished from the identifiers of the pluggable SIM module and the e-SIM module, and the specific way of distinguishing is not limited in the present application.
[0178] As shown in Figure 6 , a schematic diagram of a desktop displayed for the terminal 100. The status bar of the desktop displays information of two SIM modules. One is the name of the operator (China Mobile) and the signal strength information corresponding to the original SIM module 1. The other is the name of the operator (China Unicom) and the signal strength information corresponding to the newly added virtual card (SIM module 3).
[0179] It should be noted that at this time, the terminal 100 actually only has one real SIM module installed, which is the SIM module 1. The SIM module 3 is a virtual card provided according to the scheme of the embodiments of the present application. The real SIM module corresponding to the virtual card is installed on the server 200.
[0180] In some embodiments, referring to Figure 1 the communication system, the signal strength information corresponding to the virtual card can be determined by the terminal 100 according to the network connection quality M1 between the terminal 100 and the server 200, and the signal quality M2 between the server 200 and the base station 300. For example, the signal strength corresponding to the virtual card is the weighted value of M1 and M2. For another example, the signal strength value corresponding to the virtual card can be the minimum value of M1 and M2. The method of the present application for the signal strength corresponding to the virtual card is not limited. Wherein, the terminal 100 can obtain the network connection quality M1 between the terminal 100 and the server 200 through the ping packet, and the specific method can refer to the prior art. The method of the server 200 to obtain the signal quality M2 between the server 200 and the base station 300 can also refer to the prior art. The server 200 can periodically send the obtained M2 to the terminal 100, so that the terminal 100 can determine the signal strength corresponding to the virtual card according to M1 and M2.
[0181] 3, update the interface of the contact application
[0182] As shown in Figure 7The diagram illustrates the process of updating contact information in the Contacts application. As shown, after the first module of terminal 200 receives the message from server 200 indicating successful creation (or activation) of the virtual card, it sends it to the phone manager via RILD. The phone manager broadcasts the message of successful creation (or activation) of the virtual card. This message carries the identifier of the virtual card (e.g., SIM module 3). After listening to this message, the Contacts application requests the contact information corresponding to the virtual card on the SIM module of server 200 (which can be considered as the contact information on the virtual card) via the phone manager, RILD, and the first module. After querying the contact information on the virtual card, server 200 returns it to the Contacts application via the first module, RILD, and phone manager, allowing the Contacts application to update its contact interface. Updating the contact interface means that the contact information on the virtual card is displayed on the contact interface of terminal 100. It should be noted that the contact information on the virtual card can initially be empty. Users can add contacts later by creating new ones. Alternatively, users can add corresponding contact information online by logging into the relevant webpage on server 200.
[0183] In one example, terminal 100 may merge the existing contact information on terminal 100 with the contact information on the virtual card. That is, terminal 100 stores both the existing contact information on terminal 100 and all contact information on the virtual card. Optionally, the contact information on the virtual card can be marked to distinguish it from the existing contact information on terminal 100. It should be noted that the display order of the existing contact information on terminal 100 and the newly added contact information on the virtual card can be arranged in any manner readily conceived by those skilled in the art. This application does not impose any limitations.
[0184] In another example, terminal 100 can continuously display the contact information on the virtual card. That is, even when the virtual card is deactivated, the contact information on the virtual card can still be viewed on the contact interface of terminal 100.
[0185] In another example, when the virtual card is deactivated, the contact information for the virtual card is no longer displayed on the contact interface of terminal 100. This way, when a user temporarily borrows another user's terminal to activate the virtual card, they can use the contact information on the virtual card. When the user deactivates the virtual card, the other user's terminal does not save the contact information from the virtual card, which helps protect user privacy.
[0186] For example: Figure 8A The contact list 801 shown in (1) is the interface before creating a new virtual card. It can be seen that the status bar only displays information for one SIM module. For example... Figure 8AThe interface after the virtual card is newly created in the contact list 802 in (2). It can be seen that the information of two SIM modules is displayed in the status bar. One of them is the information of the virtual SIM module (for example, the SIM module of "China Unicom"). By comparing the contact list 801 and the contact list 802, it can be seen that some contact information is newly added in the contact list 802, and the newly added contact information is the contact on the virtual card. The contacts on the virtual card are marked 803 in the figure.
[0187] In response to the user clicking the contact "Andy", the terminal 100 displays the detailed information interface 805 of the contact "Andy" as shown in (1). Figure 8B The detailed information interface 805 can display the telephone control 806, the message control 807, the video control, and the detailed information of the contact "Andy". Among them, the detailed information of the contact "Andy" can include the user's avatar, number, group, number storage location (stored on the SIM module 3), etc.
[0188] Optionally, the detailed information interface 805 can also display the collection control, the editing control, and the menu control 808. Among them, the collection control can be used to collect the contact. The editing control can be used to edit the information of the contact. The menu control 808 can be used to perform other more operations on the contact.
[0189] For example, in response to the user clicking the menu control 808 on the detailed information interface 805 of the contact "Andy" as shown in (1), the terminal 100 pops up the menu 809 as shown in (2). Figure 8B Figure 8B The menu 809 displays multiple operations that can be performed on the contact "Andy". For example: copy to the mobile phone. Since the information of the contact "Andy" is saved on the virtual card, the information of the contact "Andy" can be saved to the terminal 100 through the control. It can be understood that the contact "Andy" on the virtual card is taken as an example for illustration. If the contact is the original contact on the terminal 100, the menu here can correspond to the control of copying to the SIM module. Of course, if the terminal is installed with multiple SIM modules (including the virtual SIM module), the user can also select to copy to which specific SIM module. In this way, the user can also copy the contact information on the terminal 100 to the virtual card, which is convenient for the user to download the information of the contact from the virtual card on other terminals.
[0190] Back to Figure 8B On the detailed information interface 805 of the contact "Andy" shown in (1), if the user clicks the phone control 806, since multiple SIM modules (SIM module 1 and SIM module 3) can be used in the terminal 100 to make phone calls, the terminal 100 will pop up a window as shown in (1). Figure 8B Menu 810, shown in (3), allows the user to select which SIM module to use for the call with Andy. If the user selects SIM module 3 (i.e., SIM card 3 in the figure), i.e., using a virtual card, the terminal 100 displays a call interface, indicating that the user is calling Andy. On the other hand, the terminal 100 sends a call request (including Andy's phone number, the virtual card identifier, and other data) to the server 200 through the established secure channel. After receiving the call request, the server 200 uses the real SIM card corresponding to the virtual card identifier to interact with the operator's network to enable the call with the contact Andy.
[0191] In one specific implementation, terminal 100 receives an instruction from a user to initiate a call to another terminal using a virtual SIM module, which corresponds to a first SIM module in server 200. The terminal's calling application sends a first call request to server 200 via a phone manager and proxy module. This first call request carries the identifier of the virtual SIM module (or a first identifier corresponding to the first SIM module) and the identifier of the other terminal. Server 200 sends a second call request to the base station corresponding to the first SIM module based on the first call request. The second call request includes a second identifier of the first SIM module. The base station establishes a call connection between terminal 100 and the other terminal based on the second call request. Subsequently, the calling application of terminal 100 conducts a call via the phone manager and proxy module, through the connection between terminal 100 and the server, and the call connection between the base station and the other terminal.
[0192] Wherein, the second identifier is the same as the first identifier, or the second identifier corresponds to the first identifier. For example, both the first and second identifiers are any one or more of the following: the mobile phone number, International Mobile Subscriber Identity (IMSI), International Mobile Equipment Identity (IMEI), or other information identifying the SIM module from a mobile communication network, corresponding to the first SIM module. Another example: the first identifier is the account of the virtual SIM module, and the second identifier is any one or more of the following: the mobile phone number, IMSI, IMEI, or other information identifying the SIM module from a mobile communication network, corresponding to the first SIM module.
[0193] Accordingly, when a user answers a call using a virtual card, the other party first sends a call request to server 200 via the operator's network, and then forwards it to terminal 100 through the aforementioned secure channel, where the user can choose whether to answer the call. Once the user chooses to answer, data between terminal 100 and the caller is transmitted through this secure channel.
[0194] Back to Figure 8B On the detailed information interface 805 of the contact "Andy" shown in (1), if the user clicks the SMS control 807, since multiple SIM modules (SIM module 1 and SIM module 3) can be used in the terminal 100 to implement the function of sending SMS, the terminal 100 displays as shown in (1). Figure 8B The SMS editing interface 811 shown in Figure (4) includes a multi-SIM icon 812. Users can switch the SIM module they are using via the multi-SIM module icon 812, or a multi-SIM module option will pop up via the multi-SIM module icon 812, allowing users to select the SIM module to use. In other words, users can select the option corresponding to the virtual card (SIM module 3), causing the edited SMS message to be sent to the server 200 via the aforementioned secure channel, and then the server 200 will send it to the recipient via the operator's network.
[0195] In one specific implementation, terminal 100 receives an instruction from a user on the SMS sending interface to select a virtual SIM module to send an SMS to another terminal (i.e., the receiving terminal). This virtual SIM module corresponds to the first SIM module in server 200. The terminal's SMS application sends a first message to server 200 through a phone manager and a proxy module. The first message includes the SMS content from the SMS sending interface, the identifier of the virtual SIM module (or the first identifier corresponding to the first SIM module), and the identifier of the other terminal. Server 200 sends a second message to the base station corresponding to the first SIM module based on the first message. The second message includes the SMS content carried in the first message, the second identifier of the first SIM module, and the identifier of the other terminal. The base station sends the second message to the other terminal based on the identifier of the other terminal carried in the second message. The descriptions of the first and second identifiers can be found above.
[0196] When the other party replies the SMS, the SMS also reaches the server 200 first, and then is sent to the terminal 100 by the server 200 through the above-mentioned secure channel. It can be understood that the server 200 stores the SMS of the virtual card, including the SMS sent by the terminal 100 using the virtual card, and the SMS sent by other users to the terminal 100 through the virtual card and received by the terminal 100. It should be noted that the secure channel between the terminal 100 and the server 200 is established only when the virtual card (SIM module 3) in the terminal 100 is in the activated state. If the virtual card (SIM module 3) in the terminal 100 is in the inactivated state, the server 200 cannot immediately transmit the SMS received from other users to the terminal 100. Therefore, the server 200 can save the received SMS. When the virtual card in the terminal 100 is activated again, the server 200 can send the SMS to the terminal 100. In some examples, if the server 200 receives the SMS sent by other users, and at this time the receiving terminal does not activate the virtual card, the server 200 can also return a message to the sender to prompt that the receiving terminal does not activate the virtual card, so as to avoid the sender continuously sending information to the inactivated virtual card.
[0197] In one example, the terminal 100 can also mark the SMS of the virtual card (i.e. the SMS sent by the user using the virtual card and the received SMS) to distinguish from the SMS of other SIM modules.
[0198] In another example, the terminal 100 can always save the SMS of the virtual card, i.e. when the virtual card is deactivated, the user can still view the SMS of the virtual card through the terminal 100.
[0199] In yet another example, the terminal 100 can view the SMS of the virtual card only when the virtual card is activated. When the virtual card is deactivated, the SMS of the virtual card cannot be viewed.
[0200] Similar to the contact information on the virtual card, the user can also save the SMS on the virtual card to the terminal 100, and can also save the SMS on the terminal 100 to the virtual card. Details are not described herein.
[0201] As can be seen from the above, the interface of the contact application includes the option of selecting to make a call or send an SMS through the virtual SIM module or through the real SIM module, and the user can select the corresponding option to realize the function of making a call or sending an SMS through the virtual SIM module or the real SIM module. That is, the interface provided by the present application for making a call or sending an SMS through the virtual SIM module is consistent with the interface for making a call or sending an SMS through the real SIM module. That is, the operation method of the user when making a call or sending an SMS through the virtual SIM module is the same as that when making a call or sending an SMS through the real SIM module, and no new user operation is added.
[0202] 4. Update the interface of the call application
[0203] When the user makes a call, the user will be prompted to select the SIM module to be used. The user can select the SIM module option corresponding to the virtual card, and the terminal 100 will use the virtual card to make a call. Other content can refer to the related content of making a call and receiving a call in the contact application, which will not be described here.
[0204] 5. Update the interface of the SMS application
[0205] When the user sends an SMS, the user will be prompted to select the SIM module to be used. The user can select the SIM module option corresponding to the virtual card, and the terminal 100 will use the virtual card to send an SMS. Other content can refer to the related content of sending an SMS and receiving an SMS in the contact application, which will not be described here.
[0206] It should be noted that when other applications in the terminal 100 involve selecting a SIM module, the corresponding update will also be made, which will not be described here.
[0207] In summary, the original SIM function and modem function on the terminal side in the present application are handed over to the server 200 for processing, and the remaining processing is still handled by the terminal. In other words, the communication between the original terminal (such as a mobile phone) and the operator network in the present application is split into two parts, one part is the interaction between the terminal 100 and the server 200, and the other part is the interaction between the server 200 and the operator network. In this way, the terminal 100 can not need to insert a pluggable SIM module, or can not need to be pre-integrated with an e-SIM module, and can directly use the credentials of the virtual card to use call and SMS functions. For example: when the user changes the terminal or temporarily borrows the terminal of another user, the user can also use the phone and SMS applications by only using the credentials of the virtual card.
[0208] It should be noted that in the prior art, the number of SIM modules that can be used by a terminal at the same time is limited, usually two. In the present application, multiple virtual cards can be used through the credentials of multiple virtual cards, which is also conducive to reducing the hardware cost of supporting multiple SIM modules in the terminal.
[0209] In addition, when the user switches between multiple virtual SIM modules and between a virtual SIM module and a SIM module, the user can directly select the virtual SIM module to be used in each application, without having to frequently open the card slot and replace the card.
[0210] Furthermore, in the present application, the user can also store contact information, SMS, etc. at the server 200. In this way, when the user changes the terminal or temporarily borrows the terminal of another user, the user can also conveniently download the corresponding data from the server 200, improving the user experience.
[0211] It's also important to note that in existing technologies, whether using traditional pluggable SIM modules or e-SIM modules, the SIM module communicates with the operator's network through the terminal's modem. Therefore, the operator's SIM module used by the terminal must be compatible with the network standards supported by the terminal's modem. In other words, the terminal can only use SIM modules that support specific network standards.
[0212] However, in this application, the modulation and demodulation functions on the terminal side can be implemented at the server 200. Since the server 200 can integrate modulation and demodulation functions for multiple network standards, from the terminal side's perspective, the terminal is no longer limited by the network standards supported by the terminal's modem. In other words, the virtual card used by the terminal can use a SIM module from any operator.
[0213] In addition, the user interface for using the virtual SIM module is the same as that for using the real SIM module, preserving the user's operating habits.
[0214] This application also provides a chip system, such as... Figure 9 As shown, the chip system includes at least one processor 1101 and at least one interface circuit 1102. The processor 1101 and the interface circuit 1102 are interconnected via lines. For example, the interface circuit 1102 can be used to receive signals from other devices (e.g., the memory of terminal 100). As another example, the interface circuit 1102 can be used to send signals to other devices (e.g., the processor 1101). Exemplarily, the interface circuit 1102 can read instructions stored in the memory and send those instructions to the processor 1101. When the instructions are executed by the processor 1101, the electronic device can perform the various steps performed by the terminal 100 (e.g., a mobile phone) in the above embodiments. Of course, the chip system may also include other discrete components, which are not specifically limited in this application embodiment.
[0215] This application also provides a chip system, such as... Figure 10As shown, the chip system includes at least one processor 1201 and at least one interface circuit 1202. The processor 1201 and the interface circuit 1202 can be interconnected by a line. For example, the interface circuit 1202 can be used to receive signals from other devices (e.g., the memory of the server 200). For another example, the interface circuit 1202 can be used to send signals to other devices (e.g., the processor 1201). Illustratively, the interface circuit 1202 can read instructions stored in the memory and send the instructions to the processor 1201. When the instructions are executed by the processor 1201, the electronic device can be caused to perform various steps performed by the server 200 in the above-described embodiments. Of course, the chip system can also include other discrete devices, which are not limited in the embodiments of the present application.
[0216] It can be understood that, in order to implement the above functions, the terminal and the like described above include hardware structures and / or software modules corresponding to the functions. Those skilled in the art should easily understand that, in combination with the embodiments disclosed in the present application, the units and algorithm steps of each example described above can be implemented in the form of hardware or a combination of hardware and computer software. Whether a certain function is implemented in the form of hardware or computer software driving hardware depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of the embodiments of the present application.
[0217] The embodiments of the present application can divide the functions of the terminal and the like described above according to the above method examples. For example, each function module can be divided according to each function, or two or more functions can be integrated into one processing module. The integrated module can be implemented in the form of hardware or software function module. It should be noted that the division of the modules in the embodiments of the present application is illustrative, and is only a logical function division. In actual implementation, another division method can be used.
[0218] Through the above description of the embodiments, those skilled in the art can clearly understand that, for the convenience and brevity of description, only the above division of the functional modules is exemplified. In actual application, the above functions can be completed by different functional modules according to needs, that is, the internal structure of the device is divided into different functional modules to complete all or part of the functions described above. The specific working process of the system, device and unit described above can refer to the corresponding process in the foregoing method embodiments, which will not be described here.
[0219] Each function unit in each embodiment of the embodiments of the present application can be integrated in one processing unit, or each unit can exist independently physically, or two or more units can be integrated in one unit. The integrated unit can be realized in the form of hardware, or in the form of a software function unit.
[0220] When the integrated unit is realized in the form of a software function unit and sold or used as an independent product, it can be stored in a computer readable storage medium. Based on such an understanding, the technical solutions of the embodiments of the present application essentially, or the part that contributes to the prior art, or all or a part of the technical solutions 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.) or a processor to execute all or part of the steps of the methods described in the embodiments of the present application. The foregoing storage medium includes: a flash memory, a mobile hard disk, a read-only memory, a random access memory, a magnetic disk, or an optical disk, and various other media that can store program codes.
[0221] The above is only a specific implementation of the present application, but the protection scope of the present application is not limited to this. Any change or replacement within the technical scope disclosed in the present application should be covered in the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the protection scope of the claims.
Claims
1. A method for using a remote SIM module, characterized in that, include: The terminal receives a user input instruction to initiate a call to another terminal using a first SIM module, wherein the first SIM module is located in a server; The terminal sends a first call request to the server through the proxy module in the terminal. The first call request includes a first identifier corresponding to the first SIM module and an identifier of the other terminal. The server sends a second call request to the base station corresponding to the first SIM module according to the first call request. The second call request includes a second identifier corresponding to the first SIM module and an identifier of the other terminal. The first identifier is the same as the second identifier, or the first identifier corresponds to the second identifier. The base station establishes a call connection between the server and the other terminal based on the second call request; The terminal communicates with the other terminal through a communication connection between the terminal and the server, and a call connection between the server and the other terminal. The communication connection between the terminal and the server includes a short-range communication connection or a cellular network connection, wherein the cellular network connection is the connection corresponding to the second SIM module in the terminal. The proxy module is located in the kernel layer of the terminal; the proxy module is located in the wireless interface layer daemon process RILD of the terminal. The terminal communicates with the server through a proxy module within the terminal, specifically as follows: The terminal communicates with the server via the RILD and a short-range communication link between the terminal and the server. Alternatively, the terminal communicates with the server via the RILD, through the terminal's modem, and via the cellular network link between the terminal and the server.
2. The method as described in claim 1, characterized in that, Before the terminal receives an instruction from the user to make a call to another terminal using the first SIM module, the method further includes: The terminal displays the SIM module management interface; The terminal receives a user's input instruction to activate the first SIM module; The terminal prompts the user to enter the account information of the first SIM module; The terminal receives account information corresponding to the first SIM module input by the user or sent by the server, and sends a first activation request to the server through the proxy module to activate the first SIM module. The first activation request includes the account information corresponding to the first SIM module.
3. The method as described in claim 2, characterized in that, The SIM module management interface also includes information about an activated second SIM module, which is a pluggable SIM module or an e-SIM module installed in the terminal.
4. The method as described in claim 3, characterized in that, The method further includes: After the server verifies the account information corresponding to the first SIM module, it looks up the second identifier corresponding to the first SIM module based on the account information and sends a network access authentication request for the first SIM module to the base station. The network access authentication request includes the second identifier corresponding to the first SIM module. The account information includes an account and a password. After the base station completes the authentication based on the network access authentication request of the first SIM module, it notifies the terminal through the server. The terminal displays a status indicating that the first SIM module is activated.
5. The method as described in claim 4, characterized in that, After the first SIM module has been activated, the method further includes: The terminal displays controls for calls made through the first SIM module on the call interface, or displays controls for messages sent through the first SIM module on the SMS sending interface.
6. The method as described in claim 5, characterized in that, The method further includes: The terminal receives the user's operation of selecting the control sent through the first SIM module on the SMS sending interface; The terminal sends a first message to the server through the proxy module. The first message includes the SMS content on the SMS sending interface, the first identifier corresponding to the first SIM module, and the identifier of the receiving terminal. The server sends a second message to the base station corresponding to the first SIM module according to the first message. The second message includes the SMS content carried in the first message, the second identifier corresponding to the first SIM module, and the identifier of the receiving terminal. The base station sends the second message to the receiving terminal.
7. The method as described in claim 4, characterized in that, After the first SIM module has been activated, the method further includes: The terminal acquires the signal strength of the communication connection between the server and the terminal, and the signal strength of the communication connection between the server and the base station; The terminal determines the signal strength corresponding to the first SIM module based on the signal strength of the communication connection between the server and the terminal, and the signal strength of the communication connection between the server and the base station, and displays the signal strength corresponding to the first SIM module. The method further includes: When the virtual card in the terminal is active, the terminal monitors the signal quality of the network connection in real time. When the signal quality of the network connection is lower than the threshold, the user is prompted to switch the network connection mode or the network connection mode is switched automatically.
8. The method as described in claim 4, characterized in that, After the first SIM module has been activated, the method further includes: The terminal obtains contact information stored in the first SIM module; The terminal displays the contact information stored in the first SIM module on the contacts interface.
9. A method for using a remote SIM module, characterized in that, The method, applied to a terminal including a call application module, a call manager, and a proxy module, includes: The call application module receives a user input instruction to initiate a call to another terminal using the first SIM module, wherein the first SIM module is set in the server; The call application module sends the call instruction to the agent module through the call manager; The proxy module sends a first call request to the server, the first call request including a first identifier corresponding to the first SIM module and an identifier of the other terminal; After the server establishes a call connection with the other terminal via a base station according to the first call request, the call application module, through the phone manager and the proxy module, conducts a call with the other terminal via the communication connection between the terminal and the server, and the call connection between the server and the other terminal. The communication connection between the terminal and the server includes a short-range communication connection or a cellular network connection, wherein the cellular network connection is the connection corresponding to the second SIM module in the terminal; the proxy module is set in the kernel layer of the terminal; the proxy module is set in the wireless interface layer daemon RILD of the terminal; The call application module communicates with the server through the phone manager and the proxy module, specifically as follows: The call application module communicates with the server via the phone manager and the RILD, through a short-range communication link between the terminal and the server; Alternatively, the call application module communicates with the server via the phone manager and the RILD, through the terminal's modem and the cellular network link between the terminal and the server.
10. The method as described in claim 9, characterized in that, The terminal also includes a SIM management module; Before the call application module receives an instruction from the user to make a call to another terminal using the first SIM module, the method further includes: The SIM management module displays the SIM module management interface through the terminal's display. The SIM management module receives a user's instruction to activate the first SIM module; The SIM management module displays a prompt message on the display, prompting the user to enter the account information of the first SIM module; The SIM management module receives the account information corresponding to the first SIM module input by the user, and sends a first activation request to the server through the phone manager and the proxy module to activate the first SIM module. The first activation request includes the account information corresponding to the first SIM module. The proxy module receives a notification from the server that the first SIM module has been activated, and sends the notification to the SIM management module through the phone manager. The SIM management module displays the activated status of the first SIM module via the display.
11. The method as described in claim 10, characterized in that, The SIM module management interface also includes information about an activated second SIM module, which is a pluggable SIM module or an e-SIM module installed in the terminal.
12. The method as described in claim 11, characterized in that, After the phone manager receives a notification from the agent module that the first SIM module has been activated, the method further includes: The phone manager broadcasts a notification that the first SIM module has been activated, and the notification includes the first identifier corresponding to the first SIM module.
13. The method as described in claim 12, characterized in that, The method further includes: After the call application module hears the notification, the call application module displays a control for calling through the first SIM module in the call interface; Alternatively, the SMS application module in the terminal listens to the notification, and the SMS application module displays the control sent through the first SIM module in the SMS sending interface.
14. The method as described in claim 13, characterized in that, The method further includes: The SMS application module receives the user's operation of selecting the control sent through the first SIM module on the SMS sending interface; The SMS application module sends a first message to the server through the phone manager and the proxy module. The first message includes the SMS content on the SMS sending interface, the first identifier corresponding to the first SIM module, and the identifier of the receiving terminal.
15. The method as described in claim 12, characterized in that, The method further includes: The terminal's notification manager listens to the notification and obtains the signal strength of the communication connection between the server and the terminal, as well as the signal strength of the communication connection between the server and the base station, through the proxy module. The notification manager determines the signal strength corresponding to the first SIM module based on the signal strength of the communication connection between the server and the terminal, and the signal strength of the communication connection between the server and the base station, and displays the signal strength corresponding to the first SIM module in the status bar of the terminal. The method further includes: When the virtual card in the terminal is active, the terminal monitors the signal quality of the network connection in real time. When the signal quality of the network connection is lower than the threshold, the user is prompted to switch the network connection mode or the network connection mode is switched automatically.
16. The method as described in claim 12, characterized in that, The method further includes: After the terminal's contact application module hears the notification, it obtains the contact information stored in the first SIM module through the proxy module; The contacts application module displays the contact information stored in the first SIM module on the contacts interface.
17. A terminal, characterized in that, include: The processor, memory, and touchscreen, the processor including an agent module, the memory and the touchscreen coupled to the processor, the memory for storing computer program code including computer instructions, wherein when the processor reads the computer instructions from the memory, the terminal causes the terminal to perform the method of using a remote SIM module as described in any one of claims 9-16.
18. A computer storage medium, characterized in that, Includes computer instructions that, when executed on a terminal, cause the terminal to perform the method of using a remote SIM module as described in any one of claims 9-16.
19. A chip system, characterized in that, It includes one or more processors, which, when executing instructions, perform the method of using a remote SIM module as described in any one of claims 9-16.
Citation Information
Patent Citations
System and method based on intercommunication between internet and communication terminal
CN105024917A
Method for using remote SIM module and electronic equipment
CN110602686A