US10587728B2 - Method, apparatus and non-transitory computer storage medium for migrating application data between terminals - Google Patents

Method, apparatus and non-transitory computer storage medium for migrating application data between terminals Download PDF

Info

Publication number
US10587728B2
US10587728B2 US15/498,271 US201715498271A US10587728B2 US 10587728 B2 US10587728 B2 US 10587728B2 US 201715498271 A US201715498271 A US 201715498271A US 10587728 B2 US10587728 B2 US 10587728B2
Authority
US
United States
Prior art keywords
terminal device
application
resource data
game application
instruction
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active, expires
Application number
US15/498,271
Other versions
US20170230481A1 (en
Inventor
Jianghong WU
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Assigned to TENCENT TECHNOLOGY (SHENZHEN) COMPANY LIMITED reassignment TENCENT TECHNOLOGY (SHENZHEN) COMPANY LIMITED ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: WU, Jianghong
Assigned to TENCENT TECHNOLOGY (SHENZHEN) COMPANY LIMITED reassignment TENCENT TECHNOLOGY (SHENZHEN) COMPANY LIMITED CORRECTIVE ASSIGNMENT TO CORRECT THE EXECUTION DATE PREVIOUSLY RECORDED AT REEL: 042156 FRAME: 0395. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT . Assignors: WU, Jianghong
Publication of US20170230481A1 publication Critical patent/US20170230481A1/en
Application granted granted Critical
Publication of US10587728B2 publication Critical patent/US10587728B2/en
Active legal-status Critical Current
Adjusted expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • G06F9/4856Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration
    • H04L61/1582
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/457Network directories; Name-to-address mapping containing identifiers of data entities on a computer, e.g. file names
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/50Service provisioning or reconfiguring

Definitions

  • the present disclosure relates to the fields of computer and Internet, and in particular, to a method, an apparatus and a system for migrating application data between terminals.
  • a social application is a platform that provides instant interaction for users. For example, for two terminals configured with the same application, after two users log in with login accounts on their terminals respectively, the two users can operate the applications on their terminals respectively.
  • an application installed on mobile terminals is an interactive application
  • a user of one mobile terminal needs help from a friend when the interactive application of the mobile terminal reaches a level during the operation of the interactive application
  • the friend sends a strategy to the above mobile terminal.
  • the user of the mobile terminal needs to first open the strategy to read, and then continue to run the interactive application based on the read content of the strategy. Consequently, the efficiency and effect of the interaction are poor.
  • a method, an apparatus and a system for migrating application data between terminals are provided according to an embodiment of the present disclosure, so as to solve a technical problem in the conventional technology that the efficiency of collaboration between terminal devices is poor when sharing application resources between the terminal devices.
  • a method for migrating application data between terminals includes: running an application on a first terminal device; receiving by the first terminal a migration instruction, and obtaining resource data of a first state of the application running on the first terminal device, where the first state is a state of the application during a period from startup to an instant when the migration instruction is received; storing the resource data at a predetermined storage address; determining a second terminal device as a destination for migration of the resource data, where the second terminal device is configured with the application; and transmitting the storage address of the resource data to the second terminal device, where the second terminal device obtains the resource data by accessing the storage address and loads the resource data.
  • An apparatus for migrating application data between terminals is further provided according to another aspect of the embodiment of the present disclosure, which is applied to a first terminal device.
  • the apparatus includes: a processor and one or more modules stored on a memory and executable by the processor.
  • the one or more modules includes: a running module, configured to run an application on the first terminal device; a first obtaining module, configured to receive a migration instruction, and obtain resource data of a first state of the application running on the first terminal device, where the first state is a state of the application during a period from startup to an instant when the migration instruction is received; a first storing module, configured to store the resource data at a predetermined storage address; a determining module, configure to determine a second terminal device as a destination for migration of the resource data, where the second terminal device is configured with the application; and a first migrating module, configured to transmit the storage address of the resource data to the second terminal device, where the second terminal device obtains the resource data by accessing the storage address and loads the resource data.
  • a non-transitory computer storage medium is further provided according to another aspect of the embodiment of the present disclosure, including a computer executable instruction adapted to perform a method for migrating application data between terminals.
  • the method for migrating application data between terminals includes: running an application on a first terminal device; receiving by the first terminal a migration instruction, and obtaining resource data of a first state of the application running on the first terminal device, where the first state is a state of the application during a period from startup to an instant when the migration instruction is received; storing the resource data at a predetermined storage address; determining a second terminal device as a destination for migration of the resource data, where the second terminal device is configured with the application; and transmitting the storage address of the resource data to the second terminal device, where the second terminal device obtains the resource data by accessing the storage address and loads the resource data.
  • resource data of an application running on a terminal device of a user may be transmitted to a terminal device of a friend of the user, by using the first terminal device to obtain the resource data of operation of the application running on the first terminal device during a period from startup to an instant when the migration instruction is received after the migration instruction is received in the process of running the application; store the resource data at the predetermined storage address; determine the second terminal device as the destination for migration of the resource data; and transmit the storage address of the resource data to the second terminal device, such that the second terminal device obtains the resource data of the application based on the storage address and completes loading of the resource data. Then the terminal device of the friend of the user can run the application based on the above resource data. In this way, the application is shared, and the technical problem in the conventional technology that the efficiency of collaboration between terminal devices is poor when sharing application resources between the terminal devices is solved.
  • FIG. 1 is a structural block diagram of hardware of a computer terminal for performing a method for migrating application data between terminals according to an embodiment of the present disclosure
  • FIG. 2 is a flow chart of a method for migrating application data between terminals according to a first embodiment of the present disclosure
  • FIG. 3 is a flow chart of a method for migrating application data between terminals according to a first embodiment of the present disclosure
  • FIG. 4 is a flow chart of a method for migrating application data between terminals according to a first embodiment of the present disclosure
  • FIG. 5 is a schematic diagram of a method for migrating application data between terminals according to a first embodiment of the present disclosure
  • FIG. 6 is a flow chart of a method for migrating application data between terminals according to a first embodiment of the present disclosure
  • FIG. 7 is a schematic diagram of a method for migrating application data between terminals according to a first embodiment of the present disclosure
  • FIG. 8 is a schematic structural diagram of an apparatus for migrating application data between terminals according to a second embodiment of the present disclosure
  • FIG. 9 is a schematic structural diagram of an apparatus for migrating application data between terminals according to a second embodiment of the present disclosure.
  • FIG. 10 is a schematic structural diagram of an apparatus for migrating application data between terminals according to a second embodiment of the present disclosure.
  • FIG. 11 is a schematic structural diagram of an apparatus for migrating application data between terminals according to a second embodiment of the present disclosure.
  • FIG. 12 is a schematic structural diagram of a system for migrating application data between terminals according to a third embodiment of the present disclosure.
  • FIG. 13 is a flow chart of a method for migrating application data between terminals according to a fourth embodiment of the present disclosure.
  • FIG. 14 is a schematic structural diagram of an apparatus for migrating application data between terminals according to a fifth embodiment of the present disclosure.
  • FIG. 15 is a schematic structural diagram of an apparatus for migrating application data between terminals according to a fifth embodiment of the present disclosure.
  • FIG. 16 is a schematic structural diagram of an apparatus for migrating application data between terminals according to a fifth embodiment of the present disclosure.
  • FIG. 17 is a schematic structural diagram of an apparatus for migrating application data between terminals according to a fifth embodiment of the present disclosure.
  • a method embodiment for migrating application data between terminals is provided according to an embodiment of the present disclosure. It should be noted that, steps shown in the flow charts in the drawings may be executed in a computer system such as a set of computer executable instructions. In addition, although logical sequences are shown in the flow charts, the shown or described steps may be performed in other sequences different from those described herein in some situations.
  • FIG. 1 is a structural block diagram of hardware of a computer terminal for performing a method for migrating application data between terminals according to an embodiment of the present disclosure.
  • the computer terminal 10 acting as a first terminal device includes one or more (only one is shown in the figure) processors 102 , a memory 104 configured to store data and a transmission device 106 for performing a communication function.
  • the processors 102 may include but not limited to a micro controller unit MCU or a field programmable gate Array FPGA.
  • FIG. 1 is for illustration only, and the structure of the above electronic device is not limited hereto.
  • the computer terminal 10 may include more or less components than the components illustrated in FIG. 1 , or have a different configuration from FIG. 1 .
  • the memory 104 may be configured to store software programs and modules of applications, such as program instructions/modules corresponding to the method for migrating application data between terminals according to the embodiment of the present disclosure.
  • the processors 102 perform various functional applications and data processing, i.e., implementing the above method for migrating application data between terminals, by running the software programs and modules stored in the memory 104 .
  • the memory 104 may include a high speed random access memory, and may also include a non-volatile memory such as one or more magnetic storage devices, a flash memory, or other non-volatile solid-state memory.
  • the memory 104 may further include memories which are arranged remotely to the processors 102 , and the remote memories may be connected to the computer terminal 10 via a network. Examples of the network include but not limited to Internet, intranet, local area network, mobile communication network and combinations thereof.
  • the transmission device 106 is configured to receive or transmit data via a network.
  • An example of the network may include a wireless network provided by a communication provider of the computer terminal 10 .
  • the transmission device 106 includes a network interface controller (NIC), which may be connected with other network devices via a base station and thereby communicate with the Internet.
  • the transmission device 106 may be a radio frequency (RF) module configured to communicate with the Internet in a wireless mode.
  • NIC network interface controller
  • RF radio frequency
  • FIG. 2 is a flow chart of the method for migrating application data between terminals according to the first embodiment of the present disclosure.
  • the method for migrating application data between terminals may include steps S 20 to S 28 .
  • step S 20 an application is run on a first terminal device.
  • the application in the above solution includes but not limited to a game-type application such as Super MarioTM or Plane Wars.
  • the first terminal device includes but not limited to an intelligent terminal device such as a smart phone or a tablet computer.
  • step S 22 the first terminal device receives a migration instruction, and obtains resource data of a first state of the application running on the first terminal.
  • the first state is a state of the application during a period from startup to an instant when the migration instruction is received.
  • the first terminal device in process of running the application on the first terminal device, after receiving the migration instruction at a first instant, the first terminal device may obtain the resource data of operation of the application during a period from an instant when the first terminal device starts the application to the first instant.
  • a user may send the migration instruction to the first terminal device at the first instant.
  • the migration instruction may be an instruction generated after a button control displayed on the first terminal device is triggered by the user, or may be an instruction transmitted by a third-party device to the first terminal device.
  • the first terminal device After receiving the migration instruction, the first terminal device obtains the resource data of operation of the application during a period from starting the application to the first instant in response to the migration instruction.
  • the resource data may be scenario data of the application during a period from startup to the first instant.
  • a user runs the Super MarioTM game on a terminal device.
  • the user has a poor game experience.
  • the user feels that the game is too difficult, and wants to ask a friend for help or wants the friend to experience the game.
  • the user may trigger a button control on the terminal device to generate a migration instruction.
  • the terminal device Upon receiving the migration instruction, the terminal device immediately obtains resource data of the Super MarioTM during a period from startup to the first instant.
  • the first instant may be a time point at which the Super MarioTM game reaches a stage or a game level. Because of some operations performed by the user in the game, the Super MarioTM game reaches to a progress or a stage.
  • the resource data may be more than one of the following pieces of data: application of the game itself, scenario data of an n-th level of the Super MarioTM game at the first instant (such as a water scenario or a land scenario) and features of a character controlled by the user (such as a size of the character, with or without an amulet, and with or without a function of firing bullets).
  • step S 24 the resource data is stored at a predetermined storage address.
  • the above step S 24 according to the present disclosure may be implemented by storing the resource data to a predetermined magnetic disk at the predetermined storage address.
  • the predetermined magnetic disk may be a magnetic disk of the first terminal device itself, or may be a database disk provided by a third-party server.
  • the first terminal device may store a resource program of the application in a file format, such as a context file format. It can be seen that the resource data may be stored locally, or stored in the cloud, or stored in a background via a network, or stored in other manners.
  • a second terminal device is determined as a destination for migration of the resource data.
  • the second terminal device is configured with the application.
  • a communication relation between the two terminal devices may be established when the migration instruction is received by the first terminal device or before the migration instruction is received by the first terminal device, such that the two terminal devices have the migration relation.
  • the second terminal device in the above step S 24 may be a target terminal device to which the user wants to migrate the application. Still taking the case in which a user runs the Super MarioTM game on a terminal device as an example, in the process of operating the Super MarioTM game, the user feels that the game is too difficult, and wants to ask a friend for help, that is, the user wants the friend to experience the Super MarioTM game and provide a game strategy. While sending a migration instruction to the first terminal device running the Super MarioTM game, the user determines to migrate the Super MarioTM game to the friend of the user, i.e., the second terminal device.
  • step S 28 the storage address of the resource data is transmitted to the second terminal device, where the second terminal device obtains the resource data by accessing the storage address and loads the resource data.
  • the second terminal device may obtain the resource data from the predetermined magnetic disk.
  • the second terminal device in the above step S 28 may load the resource data to its local application. That is, the second terminal runs the same application as the first terminal device.
  • the user transmits application data of the Super MarioTM game and resource data of the Super MarioTM game at a first instant, such as scenario data of an n-th level of the Super MarioTM game (such as a water scenario or a land scenario) and features of a character controlled by the user (such as a size of the character, with or without an amulet, and with or without a function of firing bullets), to a predetermined magnetic disk via the terminal device.
  • scenario data of an n-th level of the Super MarioTM game such as a water scenario or a land scenario
  • features of a character controlled by the user such as a size of the character, with or without an amulet, and with or without a function of firing bullets
  • the friend of the user i.e., the second terminal device, may obtain the resource data and load the resource data to its own terminal device.
  • the first terminal device in the process of running the application on the first terminal device, after receiving the migration instruction at the first instant, the first terminal device obtains the resource data of operation of the application during a period from an instant when the first terminal device starts the application to the first instant and stores the resource data at the predetermined storage address.
  • the second terminal device having the migration relation with the first terminal device may be determined, such that the second terminal device obtains the resource data based on the storage address of the resource data.
  • resource data of an application running on a terminal device of a user may be transmitted to a terminal device of a friend of the user, and the terminal device of the friend of the user may run the application based on the above resource data.
  • the application is shared, and a technical problem in the conventional technology that the efficiency of collaboration between terminal devices is poor when sharing application resources between the terminal devices is solved.
  • step S 22 may further include steps S 221 to S 223 .
  • step S 221 the first terminal device receives the migration instruction at the first instant, and forwards the migration instruction to an application kernel module.
  • step S 222 the first terminal device receives a breakpoint instruction generated by the application kernel module in response to the migration instruction.
  • the breakpoint instruction in the above step S 222 may be an instruction generated by the application kernel module in a background of the first terminal device in response to the migration instruction after the migration instruction is received by the first terminal device.
  • the application kernel module provides a port for generating the breakpoint instruction.
  • the breakpoint instruction is generated by invoking a breakpoint function in a BLCR database LIB via the port, and the breakpoint instruction is returned to the first terminal device.
  • step S 223 the first terminal device suspends the application in response to the breakpoint instruction and obtains the resource data of the first state of the application.
  • the breakpoint instruction controls the first terminal device to suspend the currently running application.
  • the suspending time is the first instant. That is, the background is informed that resource data to be synchronized to the second terminal device is the resource data during a period from starting the application by the first terminal device to the first instant.
  • the resource data described herein at least includes: an operating environment, function names of various functions for running the application and names and content of various objects for running the application. The resource data ensures that scenarios and content on the second terminal device are exactly the same as those on the first terminal device after the resource data is loaded by the second terminal.
  • the terminal device of the user suspends the running Super MarioTM game in response to a received breakpoint instruction from an application kernel, and further performs a step of obtaining resource data of operation of the Super MarioTM game during a period from an instant when the terminal device of the user starts the Super MarioTM game to the first instant, such as scenario data of an n-th level of the Super MarioTM game (such as a water scenario or a land scenario) and features of a character controlled by the user (such as a size of the character, with or without an amulet, and with or without a function of firing bullets).
  • scenario data of an n-th level of the Super MarioTM game such as a water scenario or a land scenario
  • features of a character controlled by the user such as a size of the character, with or without an amulet, and with or without a function of firing bullets.
  • the method for migrating application data between terminals may further include the following steps S 30 and S 32 .
  • step S 30 an application kernel module transmits a restart instruction to the second terminal device via a restart interface.
  • the restart interface is provided by the application kernel module.
  • the restart instruction in the above step S 30 may be an instruction provided by the application kernel module in a background of the second terminal device after the resource data is obtained by the second terminal device from the predetermined storage address.
  • the restart instruction is used to control the second terminal device to start the application and load the obtained resource data to the currently running application.
  • the application kernel module provides a port for generating the restart instruction. After a restart instruction is received, the restart instruction is generated by invoking a restart function and a load function in a database LIB via the port.
  • a terminal device of a friend of the user receives the restart instruction transmitted by an application kernel module, via a restart interface provided by the application kernel module, after receiving data of the game at a first instant which is obtained by the terminal device of the user by operating the Super MarioTM game.
  • step S 32 the second terminal device starts the application in response to the restart instruction, such that the second terminal device and the first terminal device run the application in the first state synchronously.
  • a terminal device of a friend of a user may start the obtained Super MarioTM game in response to the restart instruction.
  • the resource data of operation of the Super MarioTM game during a period from an instant when the terminal device of the user starts the Super MarioTM game to a first instant such as scenario data of an n-th level of the Super MarioTM game (such as a water scenario or a land scenario) and features of a character controlled by the user (such as a size of the character, with or without an amulet, and with or without a function of firing bullets)
  • scenario data of an n-th level of the Super MarioTM game such as a water scenario or a land scenario
  • features of a character controlled by the user such as a size of the character, with or without an amulet, and with or without a function of firing bullets
  • the step S 28 further includes steps S 281 to S 282 .
  • step S 281 the storage address of the resource data is transmitted to the second terminal device.
  • the storage address of the resource data in the above step S 281 may be an address of a predetermined magnetic disk.
  • the address of the predetermined magnetic disk may be an address of a local disk of the first terminal device or an address of a database disk provided by a third-party server.
  • step S 282 the second terminal device accesses the predetermined magnetic disk based on the storage address of the resource data, and obtains the stored resource data from the predetermined magnetic disk.
  • the second terminal device may be a terminal device of a friend of the user.
  • the resource data obtained by the terminal device of the friend of the user from the predetermined magnetic disk may be data generated by the terminal device of the user, i.e., the first terminal device, in a stage of running the Super MarioTM game.
  • the resource data may be the data generated at the first instant, such as scenario data of an n-th level of the Super MarioTM game at the first instant (such as a water scenario or a land scenario) and features of a character controlled by the user (such as a size of the character, with or without an amulet, and with or without a function of firing bullets).
  • scenario data of an n-th level of the Super MarioTM game at the first instant such as a water scenario or a land scenario
  • features of a character controlled by the user such as a size of the character, with or without an amulet, and with or without a function of firing bullets.
  • the address of the predetermined magnetic disk may be transmitted to the second terminal device in at least one of the following transmission: a network communication, a Bluetooth® communication, a near field communication payment and a short message.
  • an address of the predetermined magnetic disk may be transmitted to the terminal device of the friend of the user in the following transmission: a network communication, a Bluetooth® communication, a near field communication payment and a short message.
  • the terminal device of the friend of the user may obtain the resource data based on the address of the predetermined magnetic disk.
  • the first terminal device may obtain an access address of the second terminal device by querying via WIFI, and transmit the address of the predetermined magnetic disk for storing the resource data to the second terminal device based on the access address of the second terminal device.
  • the application according to the first embodiment of the present disclosure may be a client application of a game such as Super MarioTM or Plane Wars.
  • the first terminal device and the second terminal device each may be a mobile terminal such as a smart phone or a tablet computer. Functions realized by applying the solution in the present disclosure to three optional application scenarios are described in detail hereinafter.
  • step A a graphics application APP migration technology is applied to a first mobile terminal and a second mobile terminal.
  • the graphics application APP migration is started by triggering a migration button on the first mobile terminal, i.e., the game is switched to the second mobile terminal (a mobile phone of a friend) in a process of running on the first mobile terminal, so as to allow the friend to continue to operate the running application.
  • step B after the migration button on the first mobile terminal is triggered at a first instant, an application kernel module in a background of the first mobile terminal sends a suspending instruction, to suspend the game running on the first mobile terminal at the first instant, and resource data of the game before the first instant is stored to a memory at a predetermined address.
  • step C the first mobile terminal transmits the predetermined address of the memory to the second mobile terminal in a communication mode.
  • step D the second mobile terminal obtains the resource data of the game on the first mobile terminal, which is before the first instant, based on the predetermined address of the memory.
  • step E after receiving a restart instruction, the second mobile terminal starts the local game application and loads the obtained resource data of the game to the currently running game application, thereby taking over the game from the first mobile terminal.
  • steps A to E in the present disclosure may be applied to the following application scenarios, to achieve effective and efficient interaction between terminals.
  • a user A may, with the above solution, instantly switch the APP to the second mobile terminal, such as a mobile phone of a user B, to continue to operate the APP from the scenario on the first mobile terminal before switching, thereby taking over an APP on a terminal by the same APP on another terminal.
  • the second mobile terminal such as a mobile phone of a user B
  • the graphics application APP migration technology is applied to a social game.
  • a user A of the first mobile terminal runs a game APP to a game level
  • a user B of the second terminal device such as a mobile phone, may join the game application of the user A of the first mobile terminal instantly with the solution, so that the scenario of the game may continue from the scenario before the time of switching.
  • a user B can take over a game level of a user A and continue the game.
  • the method may further include: creating by the second terminal device a new object in the application, such that the second terminal device and the first terminal device run the application in the first state synchronously, where the created new object is controlled by the user of the second terminal device.
  • the game can be shared between the two terminals. That is, the second terminal device can not only continue the game of the user B of the first mobile terminal but also feedback a game resource of a user B to the user A in the same manner, thereby playing the game by two game users together. In this way, the user A and the user B can play against each other in a game.
  • the graphics application APP migration technology may also be applied to home devices. Specifically, in a case that a user A of the first mobile terminal experiences an application, such as a game, on a mobile phone, and then wants to switch to a PC machine in the house or a television in the house to continue the game, migration can be completed instantly with the above solution according to the present disclosure.
  • the method according to the above embodiment may be implemented by software and a general hardware platform which is necessary, or by hardware. In most situations, the former is a preferred implementation.
  • the essence of the technical solutions or the part of the technical solutions which contributes to the conventional technology, of the present disclosure may be implemented in a form of software product, which is stored in a storage medium (such as a ROM/RAM, a magnetic disk or an optical disk) and includes several instructions to control a terminal device (which may be a mobile phone, a computer, a server or a network device, etc.) to execute the method according to the embodiments of the present disclosure.
  • a storage medium such as a ROM/RAM, a magnetic disk or an optical disk
  • a terminal device which may be a mobile phone, a computer, a server or a network device, etc.
  • a device embodiment for implementing the above method embodiment is further provided according to an embodiment of the present disclosure.
  • the apparatus according to the embodiment of the present disclosure may operate in a computer terminal.
  • FIG. 8 is a schematic structural diagram of an apparatus for migrating application data between terminals according to the second embodiment of the present disclosure.
  • the apparatus for migrating application data between terminals may include: a running module 80 , a first obtaining module 82 , a first storing module 84 , a determining module 86 and a first migrating module 88 .
  • the running module 80 is configured to run an application on a first terminal device.
  • the first obtaining module 82 is configured to receive a migration instruction, and obtain resource data of a first state of the application running on the first terminal device, where the first state is a state of the application during a period from startup to an instant when the migration instruction is received.
  • the first storing module 84 is configured to store the resource data at a predetermined storage address.
  • the determining module 86 is configure to determine a second terminal device as a destination for migration of the resource data, where the second terminal device is configured with the application.
  • the first migrating module 88 is configured to transmit the storage address of the resource data to the second terminal device, where the second terminal device obtains the resource data by accessing the storage address and loads the resource data.
  • the first terminal device in the process of running the application on the first terminal device, after receiving the migration instruction at the first instant, the first terminal device obtains the resource data of operation of the application during a period from an instant when the first terminal device starts the application to the first instant and stores the resource data at the predetermined storage address.
  • the second terminal device having a migration relation with the first terminal device may be determined, such that the second terminal device obtains the resource data based on a storage path of the resource data.
  • resource data of an application running on a terminal device of a user may be transmitted to a terminal device of a friend of the user, and the terminal device of the friend of the user may run the application based on the above resource data.
  • the application is shared, and a technical problem in the conventional technology that the efficiency of collaboration between terminal devices is poor when sharing application resources between the terminal devices is solved.
  • the running module 80 , the first obtaining module 82 , the first storing module 84 , the determining module 86 and the first migrating module 88 correspond to the steps S 20 to S 28 in the first embodiment. Examples and application scenarios of the modules are the same as those of the corresponding steps, but are not limited to the content disclosed in the first embodiment. It should be noted that the modules as a part of the apparatus may operate in the computer terminal 10 according to the first embodiment, and may be implemented by software or by hardware.
  • the first obtaining module 82 may further include a first transmitting unit 821 , a breakpoint instruction generating unit 822 and an obtaining unit 823 .
  • the transmitting unit 821 is configured to receive the migration instruction at the first instant and forward the migration instruction to an application kernel module.
  • the breakpoint instruction generating unit 822 is configured to receive by the first terminal device a breakpoint instruction generated by the application kernel module in response to the migration instruction.
  • the obtaining unit 823 is configured to suspend the application in response to the breakpoint instruction and obtain the resource data of the first state of the application.
  • the first transmitting unit 821 , the breakpoint instruction generating unit 822 and the obtaining unit 823 correspond to the steps S 221 to S 223 in the first embodiment.
  • Examples and application scenarios of the modules are the same as those of the corresponding steps, but are not limited to the content disclosed in the first embodiment.
  • the modules as a part of the apparatus may operate in the computer terminal 10 according to the first embodiment, and may be implemented by software or by hardware.
  • the apparatus for migrating application data between terminals may further include a second transmitting module 90 .
  • the second transmitting module 90 is configured to transmit a restart instruction to the second terminal device via a restart interface provided by the application kernel module, and start the application by the second terminal device in response to the restart instruction and load the resource data, such that the second terminal device and the first terminal device run the application in the first state synchronously.
  • the second transmitting module 90 corresponds to the steps S 30 to S 32 in the first embodiment. Examples and application scenarios of the module are the same as those of the corresponding steps, but are not limited to the content disclosed in the first embodiment. It should be noted that the module as a part of the apparatus may operate in the computer terminal 10 according to the first embodiment, and may be implemented by software or by hardware.
  • the first migrating module 88 may further include a third transmitting unit 881 and a first access unit 882 .
  • the third transmitting unit 881 is configured to transmit the predetermined storage address to the second terminal device.
  • the first access unit 882 is configured to access a predetermined magnetic disk based on the predetermined storage address, and obtain the stored resource data from the predetermined magnetic disk.
  • the third transmitting unit 881 and the first access unit 882 correspond to the steps S 281 to S 282 in the first embodiment. Examples and application scenarios of the two modules are the same as those of the corresponding steps, but are not limited to the content disclosed in the first embodiment. It should be noted that the modules as a part of the apparatus may operate in the computer terminal 10 according to the first embodiment, and may be implemented by software or by hardware.
  • the address of the predetermined magnetic disk may be transmitted to the second terminal device in one or more of the following transmission: a network communication, a Bluetooth® communication, a near field communication payment and a short message.
  • a user A may, with the above solution, instantly switch the APP to the second mobile terminal, such as a mobile phone, of a user B, to continue to operate the scenario of the APP from the scenario on the first mobile terminal before switching, thereby taking over an APP on a terminal by the same APP on another terminal.
  • the second mobile terminal such as a mobile phone
  • a graphics application APP migration technology is applied to a social game. Specifically, when a user A of a first mobile terminal runs a game APP to a game level, a user B of a second terminal device, such as a mobile phone, may join the game application of the user A of the first mobile terminal instantly with the solution, so that the scenario of the game may continue from the scenario before the time of switching.
  • a game level of a user A may be taken over to continue the game.
  • the second terminal device after loading the resource data, creates a new object in the application, such that the second terminal device and the first terminal device run the application in the first state synchronously.
  • the created new object is controlled by the user of the second terminal device.
  • the game can be shared between the two terminals. That is, the second terminal device can not only continue the game of the user A of the first mobile terminal but also feedback a game resource of a user B to the user A in the same manner, thereby playing the game by two game users together. In this way, the user A and the user B can play against each other in a game.
  • the graphics application APP migration technology may also be applied to home devices. Specifically, in a case that a user A of a first mobile terminal experiences an application, such as a game, on a mobile phone, and then wants to switch to a PC machine in the house or a television in the house to continue the game, migration can be completed instantly with the above solution according to the present disclosure.
  • FIG. 12 is a schematic structural diagram of a system for migrating application data between terminals according to the third embodiment of the present disclosure.
  • the system for migrating application data between terminals may include a first terminal device 90 and a second terminal device 92 .
  • the first terminal device 90 is configured to run an application; receive a migration instruction, and obtain resource data of a first state of the application running on the first terminal device, where the first state is a state of the application during a period from startup to an instant when the migration instruction is received; store the resource data at a predetermined storage address; determine the second terminal device as a destination for migration of the resource data; and transmit the storage address of the resource data to the second terminal device.
  • the second terminal device 92 is configured with the application and has a communication relation with the first terminal device, and is configured to obtain the resource data by accessing the storage address of the resource data and load the resource data. That is, the second terminal device obtains the resource data based on the storage address of the resource data and loads the resource data to its local application.
  • the first terminal device in the process of running the application on the first terminal device, after receiving the migration instruction at the first instant, the first terminal device obtains the resource data of operation of the application during a period from an instant when the first terminal device starts the application to the first instant and stores the resource data to a predetermined magnetic disk at a predetermined path.
  • the second terminal device having a migration relation with the first terminal device is determined, such that the second terminal device obtains the resource data from the predetermined magnetic disk.
  • resource data of an application running on a terminal device of a user may be transmitted to a terminal device of a friend of the user, and the terminal device of the friend of the user may run the application based on the above resource data.
  • the application is shared, and a technical problem in the conventional technology that the efficiency of collaboration between terminal devices is poor when sharing application resources between the terminal devices is solved.
  • the application in the system embodiment is not limited to a game-type application such as Super MarioTM or Plane Wars.
  • the first terminal device is not limited to an intelligent terminal device such as a smart phone or a tablet computer.
  • a user may send the migration instruction to the first terminal device at the first instant.
  • the migration instruction may be an instruction generated after a button control displayed on the first terminal device is triggered by the user, or may be an instruction transmitted by a third-party device to the first terminal device.
  • the first terminal device obtains the resource data of operation of the application during a period from starting the application by the first terminal device to the first instant in response to the migration instruction.
  • the resource data may be scenario data of the application during a period from startup to the first instant.
  • the predetermined magnetic disk may be a magnetic disk of the first terminal device itself, or may be a database disk provided by a third-party server.
  • the first terminal device may store a resource program of the application in a file format, such as a context file format.
  • the second terminal device may be a target terminal device to which the user wants to migrate the application. After obtaining the resource data of the application, the second terminal device may load the resource data to its local application, that is, the second terminal runs the same application as the first terminal device.
  • the system further includes: a memory and a third-party server having a function of an application kernel.
  • the memory may be used to store the resource data.
  • the application kernel may be provided by the first terminal device or the second terminal device, or may be provided by a third-party server.
  • the preferred or optional embodiments of this system may have the same implementations or application scenarios as the first embodiment of method, but are not limited to the disclosure of the first embodiment.
  • the first terminal device may receive a breakpoint instruction generated by an application kernel module in a case that it is detected that the migration instruction is received by the first terminal device.
  • the terminal device may suspend the application in response to the breakpoint instruction and perform the step of obtaining the resource data of operation of the application during a period from an instant when the first terminal device starts the application to the first instant.
  • the breakpoint instruction may be an instruction generated by the application kernel module in a background of the first terminal device in response to the migration instruction after the migration instruction is received by the first terminal device.
  • the application kernel module provides a port for generating the breakpoint instruction.
  • the breakpoint instruction is generated by invoking a breakpoint function in a database LIB via the port, and the breakpoint instruction is returned to the first terminal device.
  • the breakpoint instruction controls the first terminal device to suspend the currently running application.
  • the suspending time is the first instant. That is, the background is informed that resource data to be synchronized to the second terminal device is the resource data on the first terminal device during a period from starting the application to the first instant.
  • the resource data described herein at least includes: an operating environment, function names of various functions for running the application and names and content of various objects for running the application. The resource data ensures that scenarios and content on the second terminal device are exactly the same as those on the first terminal device after the resource data is loaded by the second terminal.
  • a restart instruction may be transmitted to the second terminal device via the application kernel module.
  • the second terminal device obtains the restart instruction via a restart interface provided by the application kernel module. Then, the second terminal device starts the application loaded with the resource data, in response to the restart instruction, such that the second terminal device and the first terminal device run the application from the first instant synchronously.
  • the restart instruction may be an instruction provided by an application kernel module in a background of the second terminal device after the resource data is obtained by the second terminal device from the predetermined magnetic disk.
  • the restart instruction is used to control the second terminal device to start the application and load the obtained resource data to the currently running application.
  • the application kernel module provides a port for generating the restart instruction. After a restart instruction is received, the restart instruction is generated by invoking a restart function and a load function in a database LIB via the port.
  • resource data of operation of the application during a period from an instant when the terminal device of the user starts the application to a first instant such as scenario data of an n-th level of the Super MarioTM game (such as a water scenario or a land scenario) and features of a character controlled by the user (such as a size of the character, with or without an amulet, and with or without a function of firing bullets)
  • scenario data of an n-th level of the Super MarioTM game such as a water scenario or a land scenario
  • features of a character controlled by the user such as a size of the character, with or without an amulet, and with or without a function of firing bullets
  • the address of the predetermined magnetic disk may be transmitted to the second terminal device. Then the second terminal device accesses the predetermined magnetic disk based on the address of the predetermined magnetic disk, and obtains the stored resource data from the predetermined magnetic disk.
  • the system may transmit the address of the predetermined magnetic disk to the second terminal device in at least one of the following transmission: a network communication, a Bluetooth® communication, a near field communication payment and a short message.
  • a network communication For example, in a case that a WIFI communication is adopted, the first terminal device may obtain an access address of the second terminal device by querying via WIFI, and transmit the address of the predetermined magnetic disk for storing the resource data to the second terminal device based on the access address of the second terminal device.
  • a method embodiment for migrating application data between terminals is provided according to an embodiment of the present disclosure. It should be noted that, steps shown in the flow charts in the drawings may be executed in a computer system such as a set of computer executable instructions. In addition, although logical sequences are shown in the flow charts, the shown or described steps may be performed in other sequences different from those described herein in some situations.
  • the method embodiment according to the fourth embodiment of the present disclosure may be implemented on an arithmetical device such as a mobile terminal, a computer terminal or the like. It should be noted that the method embodiment according to the fourth embodiment of the present disclosure may be implemented on the computer terminal shown in FIG. 1 .
  • FIG. 13 is a flow chart of the method for migrating application data between terminals according to the fourth embodiment of the present disclosure.
  • the method for migrating application data between terminals may include steps S 120 to S 130 .
  • a second terminal device transmits a migration request to the first terminal device to establish a migration relation between the first terminal device and the second terminal device.
  • a communication relation between the two terminal devices may be established when a migration instruction is received by the first terminal device or before the migration instruction is received by the first terminal device, to build the migration relation between the two terminal devices.
  • the application in the above step S 120 according to the present disclosure is not limited to a game-type application such as Super MarioTM or Plane Wars.
  • the first terminal device or the second terminal device is not limited to an intelligent terminal device such as a smart phone or a tablet computer.
  • the second terminal device may transmit the migration request to the first terminal device, such that the first terminal device and the second terminal device have the migration relation.
  • a user runs the Super MarioTM game on a terminal device.
  • a friend of the user wants to experience the game, or the user feels that the game is too difficult and wants the friend to experience the game and provide a game strategy.
  • a terminal device of the friend of the user i.e., the second terminal device, may transmit a migration request to the terminal device of the user, i.e., the first terminal device. In this way, a migration relation is established between the terminal device of the user and the terminal device of the friend of the user.
  • step S 122 after confirming the migration request, the first terminal device obtains resource data of a first state of the application running on the first terminal device.
  • the first state is a state of the application during a period from startup to an instant when the migration instruction is received.
  • the first terminal device may obtain the resource data of the first terminal device during a period from starting the application to an instant when the migration request is received, in response to the migration request.
  • the resource data may be scenario data in the first state.
  • the terminal device of the user may immediately obtain resource data of the Super MarioTM during a period from startup to an instant when the migration request is received by the terminal device of the user. It should be noted that, for the period from starting the Super MarioTM game to the instant when the migration request is received by the terminal device of the user, the instant when the migration request is received by the terminal device of the user may be a time point at which the Super MarioTM game reaches a stage or a game level. Because of some operations performed by the user in the game, the Super MarioTM game reaches to a progress or a stage.
  • the resource data may be more than one of the following pieces of data: application of the game itself, scenario data of an n-th level of the Super MarioTM game at the instant when the migration request is received by the terminal device of the user (such as a water scenario or a land scenario) and features of a character controlled by the user (such as a size of the character, with or without an amulet, and with or without a function of firing bullets).
  • step S 124 the first terminal device stores the resource data at a predetermined storage address.
  • the above step S 124 may be implemented as storing the resource data to a predetermined magnetic disk at the predetermined storage address.
  • the predetermined magnetic disk may be a magnetic disk of the first terminal device itself, or may be a database disk provided by a third-party server.
  • the first terminal device may store a resource program of the application in a file format, such as a context file format. It can be seen that the resource data may be stored locally, or stored in the cloud, or stored in a background via a network, or stored in other manners.
  • step S 126 after confirming the migration request, the first terminal device transmits the storage address of the resource data to the second terminal device.
  • the second terminal device in the above step S 126 may load the resource data to its local application. That is, the second terminal also has the first state of the application.
  • a friend of the user may also want to experience the Super MarioTM game, or the user feels the game is too difficult and wants the friend to experience the Super MarioTM game and provide a game strategy.
  • the user transmits application data of the Super MarioTM game and resource data of the Super MarioTM game at an instant when a migration request transmitted by a terminal device of the friend of the user is received, such as scenario data of an n-th level of the Super MarioTM game (such as a water scenario or a land scenario) and features of a character controlled by the user (such as a size of the character, with or without an amulet, and with or without a function of firing bullets), to a predetermined magnetic disk via the terminal device.
  • the friend of the user i.e., the second terminal device, may obtain the resource data and load the resource data to its own terminal device.
  • step S 128 the second terminal device obtains the resource data of the application by accessing the storage address and loads the resource data. That is, after obtaining the resource data, the second terminal device may load the resource data to its local application. Preferably, the second terminal device may obtain the resource data from the predetermined magnetic disk.
  • the second terminal device transmits the migration request to the first terminal device, such that the first terminal device and the second terminal device has the migration relation.
  • the resource data of operation of the application during a period from starting the application to an instant when the migration request is received is obtained and the resource data is stored at a predetermined storage path.
  • the storage address of the resource data is transmitted to the second terminal device, such that the second terminal device obtains the resource data. Then the second terminal device loads the resource data to its local application.
  • resource data of an application running on a terminal device of a user may be transmitted to a terminal device of a friend of the user, and the terminal device of the friend of the user may run the application based on the above resource data.
  • the application is shared, and a technical problem in the conventional technology that the efficiency of collaboration between terminal devices is poor when sharing application resources between the terminal devices is solved.
  • step S 122 may further include the following steps.
  • the first terminal device receives the migration instruction at a first instant, and forwards the migration instruction to an application kernel module.
  • the first terminal device receives a breakpoint instruction generated by the application kernel module in response to the migration instruction.
  • the first terminal device suspends the application in response to the breakpoint instruction and obtains the resource data of the first state of the application.
  • the breakpoint instruction may be an instruction generated by the application kernel module in a background of the first terminal device in response to the migration request after the migration request is received by the first terminal device.
  • the application kernel module provides a port for generating the breakpoint instruction.
  • the breakpoint instruction is generated by invoking a breakpoint function in a database LIB via the port, and the breakpoint instruction is returned to the first terminal device.
  • the breakpoint instruction controls the first terminal device to suspend the currently running application.
  • the suspending time is an instant when the migration request transmitted by the second terminal device is received by the first terminal device. That is, the background is informed that resource data to be synchronized to the second terminal device is the resource data during a period from starting the application by the first terminal device to an instant when the migration request is received.
  • the resource data described herein at least includes: an operating environment, function names of various functions for running the application and names and content of various objects for running the application. The resource data ensures that scenarios and content on the second terminal device are exactly the same as those on the first terminal device after the resource data is loaded by the second terminal.
  • the terminal device of the user suspends the running Super MarioTM game in response to a received breakpoint instruction from an application kernel, and further performs a step of obtaining resource data of operation of the Super MarioTM game during a period from an instant when the terminal device of the user starts the Super MarioTM game to an instant when the migration request is received by the terminal device of the user, such as scenario data of an n-th level of the Super MarioTM game (such as a water scenario or a land scenario) and features of a character controlled by the user (such as a size of the character, with or without an amulet, and with or without a function of firing bullets).
  • scenario data of an n-th level of the Super MarioTM game such as a water scenario or a land scenario
  • features of a character controlled by the user such as a size of the character, with or without an amulet, and with or without a function of firing bullets.
  • the method for migrating application data between terminals may further perform the following steps.
  • step S 128 the application kernel module transmits a restart instruction to the second terminal device.
  • the second terminal device obtains the restart instruction via a restart interface provided by the application kernel module.
  • the restart instruction in the above step S 128 may be an instruction provided by an application kernel module in a background of the second terminal device after the resource data is obtained by the second terminal device from the predetermined storage address.
  • the restart instruction is used to control the second terminal device to start the application and load the obtained resource data to the currently running application.
  • the application kernel module provides a port for generating the restart instruction. After a restart instruction is received, the restart instruction is generated by invoking a restart function and a load function in a database LIB via the port.
  • a terminal device of a friend of a user receives a restart instruction transmitted by an application kernel module, via a restart interface provided by the application kernel module, after receiving data of the game at an instant when the migration request is received by the terminal device of the user, which is obtained by the terminal device of the user by operating the Super MarioTM game.
  • step S 130 the second terminal device starts the application in response to the restart instruction, such that the second terminal device and the first terminal device run the application in the first state synchronously.
  • a terminal device of a friend of a user i.e., the second terminal device described above, may start the obtained Super MarioTM game in response to the restart instruction.
  • resource data of operation of the Super MarioTM game during a period from an instant when the terminal device of the user starts the Super MarioTM game to an instant when the migration request is received such as scenario data of an n-th level of the Super MarioTM game at an instant when the migration request is received (such as a water scenario or a land scenario) and features of a character controlled by the user (such as a size of the character, with or without an amulet, and with or without a function of firing bullets)
  • scenario data of an n-th level of the Super MarioTM game at an instant when the migration request is received such as a water scenario or a land scenario
  • features of a character controlled by the user such as a size of the character, with or without an amulet, and with or without a function of firing bullets
  • step S 126 may further include the following steps.
  • the storage address of the resource data is transmitted to the second terminal device, where the storage address may be an address of a predetermined magnetic disk.
  • the second terminal device accesses the predetermined magnetic disk based on the storage address of the resource data, and obtains the stored resource data from the predetermined magnetic disk.
  • the address of the predetermined magnetic disk may be an address of a local disk of the first terminal device or an address of a database disk provided by a third-party server.
  • the second terminal device may be a terminal device of a friend of the user.
  • the resource data obtained by the terminal device of the friend of the user from the predetermined magnetic disk may be data generated by the terminal device of the user, i.e., the first terminal device, in a stage of running the Super MarioTM game.
  • the resource data may be the data at an instant when the migration request is received by the terminal device of the user, such as scenario data of an n-th level of the Super MarioTM game at an instant when the migration request is received by the terminal device of the user (such as a water scenario or a land scenario) and features of a character controlled by the user (such as a size of the character, with or without an amulet, and with or without a function of firing bullets)
  • the address of the predetermined magnetic disk may be transmitted to the second terminal device in at least one of the following transmission: a network communication, a Bluetooth® communication, a near field communication payment and a short message.
  • an address of the predetermined magnetic disk may be transmitted to a terminal device of a friend of the user in the following transmission: a network communication, a Bluetooth® communication, a near field communication payment and a short message.
  • the terminal device of the friend of the user may obtain the resource data based on the address of the predetermined magnetic disk.
  • the first terminal device may obtain an access address of the second terminal device by querying via WIFI, and transmit the address of the predetermined magnetic disk for storing the resource data to the second terminal device based on the access address of the second terminal device.
  • the application according to the fourth embodiment of the present disclosure may be a client application of a game such as Super MarioTM or Plane Wars.
  • the first terminal device and the second terminal device each may be a mobile terminal such as a smart phone or a tablet computer. Functions realized by applying the solution in the present disclosure to three optional application scenarios are described in detail hereinafter.
  • step A a graphics application APP migration technology is applied to a first mobile terminal and a second mobile terminal.
  • the graphics application APP migration is started by triggering a migration button on the first mobile terminal, i.e., the game is switched to the second mobile terminal (a mobile phone of a friend) in a process of running on the first mobile terminal, so as to allow the friend to continue to operate the running application.
  • step B after a migration request is received, the migration button on the first mobile terminal may be triggered.
  • An application kernel module in a background of the first mobile terminal sends a suspending instruction, to suspend the game running on the first mobile terminal, and resource data of the game before the migration request is received is stored to a memory at a predetermined address.
  • step C the first mobile terminal transmits the predetermined address of the memory to the second mobile terminal in a communication mode.
  • step D the second mobile terminal obtains the resource data of the game on the first mobile terminal, which is before the migration request is received, based on the predetermined address of the memory.
  • step E after receiving a restart instruction, the second mobile terminal starts the local game application and loads the obtained resource data of the game to the currently running game application, thereby taking over the game from the first mobile terminal.
  • steps A to E in the present disclosure may be applied to the following application scenarios, to achieve effective and efficient interaction between terminals.
  • a user A may, with the above solution, instantly switch the APP to the second mobile terminal, such as a mobile phone, of a user B, to continue to operate the APP from the scenario on the first mobile terminal before switching, thereby taking over an APP on a terminal by the same APP on another terminal.
  • the second mobile terminal such as a mobile phone
  • the graphics application APP migration technology is applied to a social game.
  • a user A of the first mobile terminal runs a game APP to a game level
  • a user B of the second terminal device such as a mobile phone, may join the game application of the user A of the first mobile terminal instantly with the solution, so that the scenario of the game may continue from the scenario before the time of switching.
  • a game level of a user A may be taken over to continue the game.
  • the method may further include: creating by the second terminal device a new object in the application, such that the second terminal device and the first terminal device run the application in the first state synchronously, where the created new object is controlled by the user of the second terminal device.
  • the game can be shared between the two terminals. That is, the second terminal device can not only continue the game of the user B of the first mobile terminal but also feedback a game resource of a user B to the user A in the same manner, thereby playing the game by two game users together. In this way, the user A and the user B can play against each other in a game.
  • the graphics application APP migration technology may also be applied to home devices. Specifically, in a case that a user A of the first mobile terminal experiences an application, such as a game, on a mobile phone, and then wants to switch to a PC machine in the house or a television in the house to continue the game, migration can be completed instantly with the above solution according to the present disclosure.
  • the method according to the above embodiment may be implemented by software and a general hardware platform which is necessary, or by hardware. In most situations, the former is a preferred implementation.
  • the essence of the technical solutions or the part of the technical solutions which contributes to the conventional technology, of the present disclosure may be implemented in a form of software product, which is stored in a storage medium (such as a ROM/RAM, a magnetic disk or an optical disk) and includes several instructions to control a terminal device (which may be a mobile phone, a computer, a server or a network device, etc.) to execute the method according to the embodiments of the present disclosure.
  • a storage medium such as a ROM/RAM, a magnetic disk or an optical disk
  • a terminal device which may be a mobile phone, a computer, a server or a network device, etc.
  • a device embodiment for implementing the above method embodiment is further provided according to an embodiment of the present disclosure.
  • the apparatus according to the embodiment of the present disclosure may operate in a computer terminal.
  • FIG. 14 is a schematic structural diagram of an apparatus for migrating application data between terminals according to the fifth embodiment of the present disclosure.
  • the apparatus for migrating application data between terminals may include: a second obtaining module 110 , a second storing module 112 and a migrating module 114 .
  • the second obtaining module 110 is configured to obtain resource data of a first state of an application running on a first terminal device after a migration request transmitted by a second terminal device is received and confirmed by the first terminal device, in the process of running the application on the first terminal device.
  • the first state is a state of the application during a period from startup to an instant when the migration instruction is received.
  • the second storing module 112 is configured to store the resource data at a predetermined storage address.
  • the migrating module 114 is configured to transmit the storage address of the resource data to the second terminal device after the migration request is confirmed by the first terminal device, such that the second terminal device obtains the resource data of the application by accessing the storage address and loads the resource data.
  • the second obtaining module 110 , the second storing module 112 and the migrating module 114 correspond to the steps S 120 to S 126 in the fourth embodiment.
  • Examples and application scenarios of the modules are the same as those of the corresponding steps, but are not limited to the content disclosed in the fourth embodiment.
  • the modules as a part of the apparatus may operate in the computer terminal 10 according to the fourth embodiment, and may be implemented by software or by hardware.
  • the second obtaining module 110 may further include: a fourth transmitting module 1101 .
  • the fourth transmitting module 1101 is configured to transmit a breakpoint instruction generated by an application kernel module to the first terminal device in a case that it is detected that the migration request is confirmed by the first terminal device.
  • the first terminal device suspends the application in response to the breakpoint instruction and performs the step of obtaining the resource data of operation of the application during a period from an instant when the first terminal device starts the application to the first instant.
  • the fourth transmitting module 1101 corresponds to specific steps in the fourth embodiment. Examples and application scenarios of the module are the same as those of the corresponding steps, but are not limited to the content disclosed in the fourth embodiment. It should be noted that the module as a part of the apparatus may operate in the computer terminal 10 according to the fourth embodiment, and may be implemented by software or by hardware.
  • the apparatus for migrating application data between terminals may further include: a fifth transmitting module 118 and a loading module 120 .
  • the fifth transmitting module 118 is configured to transmit a restart instruction to the second terminal device.
  • the second terminal device obtains the restart instruction via a restart interface provided by the application kernel module.
  • the loading module 120 is configured to load the resource data to the application in response to the restart instruction, such that the second terminal device and the first terminal device run the application in the first state synchronously.
  • the fifth transmitting module 118 and the loading module 120 correspond to the steps S 128 to S 130 in the fourth embodiment. Examples and application scenarios of the modules are the same as those of the corresponding steps, but are not limited to the content disclosed in the fourth embodiment. It should be noted that the modules as a part of the apparatus may operate in the computer terminal 10 according to the fourth embodiment, and may be implemented by software or by hardware.
  • the migrating module 114 in the apparatus for migrating application data between terminals may further include: a sixth transmitting module 122 and a second access module 124 .
  • the sixth transmitting module 122 is configured to transmit the predetermined storage address to the second terminal device.
  • the second access module 124 is configured to access a predetermined magnetic disk based on the predetermined storage address, and obtain the stored resource data from the predetermined magnetic disk.
  • the sixth transmitting module 122 and the second access module 124 correspond to specific steps in the fourth embodiment. Examples and application scenarios of the modules are the same as those of the corresponding steps, but are not limited to the content disclosed in the fourth embodiment. It should be noted that the modules as a part of the apparatus may operate in the computer terminal 10 according to the fourth embodiment, and may be implemented by software or by hardware.
  • the address of the predetermined magnetic disk may be transmitted to the second terminal device in one or more of the following transmission: a network communication, a Bluetooth® communication, a near field communication payment and a short message.
  • a user A may, with the above solution, instantly switch the APP to the second mobile terminal, such as a mobile phone, of a user B, to continue to operate the scenario of the APP from the scenario on the first mobile terminal before switching, thereby taking over an APP on a terminal by the same APP on another terminal.
  • the second mobile terminal such as a mobile phone
  • a graphics application APP migration technology is applied to a social game. Specifically, when a user A of a first mobile terminal runs a game APP to a game level, a user B of a second terminal device, such as a mobile phone, may join the game application of the user A of the first mobile terminal instantly with the solution, so that the scenario of the game may continue from the scenario before the time of switching.
  • a game level of a user A may be taken over to continue the game.
  • the second terminal device after loading the resource data, creates a new object in the application, such that the second terminal device and the first terminal device run the application in the first state synchronously.
  • the created new object is controlled by the user of the second terminal device.
  • the game can be shared between the two terminals. That is, the second terminal device can not only continue the game of a user B of the first mobile terminal but also feedback a game resource of a user B to the user A in the same manner, thereby playing the game by two game users together. In this way, the user A and the user B can play against each other in a game.
  • the graphics application APP migration technology may also be applied to home devices. Specifically, in a case that a user A of a first mobile terminal experiences an application, such as a game, on a mobile phone, and then wants to switch to a PC machine in the house or a television in the house to continue the game, migration can be completed instantly with the above solution according to the present disclosure.
  • a system embodiment for implementing the above device embodiment is further provided according to an embodiment of the present disclosure.
  • the device according to the embodiment of the present disclosure may operate in a computer terminal.
  • the system for migrating application data between terminals may include a first terminal device 90 and a second terminal device 91 .
  • the first terminal device 90 is configured to run an application, and obtain resource data of a first state of the application running on the first terminal device, where the first state is a state of the application during a period from startup to an instant when a migration instruction is received; store the resource data at a predetermined storage address, and transmit the storage address of the resource data to a second terminal device.
  • the second terminal device 91 is configured with the application and has a communication relation with the first terminal device, and is configured to obtain the resource data by accessing the storage address of the resource data and load the resource data.
  • the first terminal device is configured to run the application.
  • the second terminal device has the communication relation with the first terminal device and is configured to transmit a migration request to the first terminal device and load the resource data on the first terminal device to its local application, in the process of running the application on the first terminal device.
  • the resource data of operation of the application during a period from starting the application to an instant when the migration request is received is stored at a predetermined path.
  • the storage address of the resource data is transmitted to the second terminal device, such that the second terminal device obtains the resource data.
  • resource data of an application running on a terminal device of a user may be transmitted to a terminal device of a friend of the user, and the terminal device of the friend of the user may run the application based on the above resource data.
  • the application is shared, and a technical problem in the conventional technology that the efficiency of collaboration between terminal devices is poor when sharing application resources between the terminal devices is solved.
  • the application in the system embodiment is not limited to a game-type application such as Super MarioTM or Plane Wars.
  • the first terminal device or the second terminal device is not limited to an intelligent terminal device such as a smart phone or a tablet computer.
  • the second terminal device may transmit the migration request to the first terminal device, such that the first terminal device and the second terminal device have the migration relation.
  • the first terminal device in the system embodiment may obtain the resource data of operation of the application during a period from starting the application by the first terminal device to an instant when the migration request is received in response to the migration request.
  • the resource data may be scenario data of the application during a period from startup to an instant when the migration request is received by the first terminal.
  • the second terminal device may load the resource data to its local application. That is, the second terminal runs the same application as the first terminal device.
  • the first terminal device may receive a breakpoint instruction generated by an application kernel module in a case that it is detected that the migration request is confirmed by the first terminal device.
  • the terminal device suspends the application in response to the breakpoint instruction and performs the step of obtaining the resource data of operation of the application during a period from an instant when the first terminal device starts the application to an instant when the migration request is received.
  • the breakpoint instruction in the system embodiment of the present disclosure may be an instruction generated by the application kernel module in a background of the first terminal device in response to the migration request after the migration request is received by the first terminal device.
  • the application kernel module provides a port for generating the breakpoint instruction.
  • the breakpoint instruction is generated by invoking a breakpoint function in a database LIB via the port, and the breakpoint instruction is returned to the first terminal device.
  • the breakpoint instruction controls the first terminal device to suspend the currently running application.
  • the suspending time is an instant when the migration request transmitted by the second terminal device is received by the first terminal device. That is, the background is informed that resource data to be synchronized to the second terminal device is the resource data on the first terminal device during a period from starting the application to an instant when the migration request is received.
  • the resource data described herein at least includes: an operating environment, function names of various functions for running the application and names and content of various objects for running the application. The resource data ensures that scenarios and content on the second terminal device are exactly the same as those on the first terminal device after the resource data is loaded by the second terminal.
  • a restart instruction may be transmitted to the second terminal device via the application kernel module.
  • the second terminal device obtains the restart instruction via a restart interface provided by the application kernel module. Then, the second terminal device starts the application which is loaded with the resource data, in response to the restart instruction, such that the second terminal device and the first terminal device run the application synchronously from an instant when the migration request is received.
  • the restart instruction may be an instruction provided by an application kernel module in a background of the second terminal device after the resource data is obtained by the second terminal device from the predetermined magnetic disk.
  • the restart instruction is used to control the second terminal device to start the application and load the obtained resource data to the currently running application.
  • the application kernel module provides a port for generating the restart instruction. After a restart instruction is received, the restart instruction is generated by invoking a restart function and a load function in a database LIB via the port.
  • the system may transmit the address of the predetermined magnetic disk to the second terminal device. Then the second terminal device accesses the predetermined magnetic disk based on the address of the predetermined magnetic disk, and obtains the stored resource data from the predetermined magnetic disk.
  • the system may transmit the address of the predetermined magnetic disk to the second terminal device in at least one of the following transmission: a network communication, a Bluetooth® communication, a near field communication payment and a short message.
  • a network communication For example, in a case that a WIFI communication is adopted, the first terminal device may obtain an access address of the second terminal device by querying via WIFI, and transmit the address of the predetermined magnetic disk for storing the resource data to the second terminal device based on the access address of the second terminal device.
  • a storage medium is further provided according to an embodiment of the present disclosure.
  • the storage medium may be configured to store program codes for implementing the method for migrating application data between terminals according to the first embodiment.
  • the storage medium may be located in any server of a group of computer terminals in a computer network.
  • the storage medium is configured to store program codes for performing the following steps S 20 to S 27 .
  • step S 20 an application is run on a first terminal device.
  • step S 22 a migration instruction is received by the first terminal device, and resource data of a first state of the application running on the first terminal device is obtained.
  • the first state is a state of the application during a period from startup to an instant when the migration instruction is received.
  • step S 24 the resource data is stored at a predetermined storage address.
  • step S 26 a second terminal device is determined as a destination for migration of the resource data, where the second terminal device is configured with the application.
  • step S 17 the storage address of the resource data is transmitted to the second terminal device, where the second terminal device obtains the resource data by accessing the storage address and loads the resource data.
  • the storage medium is further configured to store program codes for performing the following steps: the first terminal device receives the migration instruction at the first instant, and forwards the migration instruction to an application kernel module; the first terminal device receives a breakpoint instruction generated by the application kernel module in response to the migration instruction; and the first terminal device suspends the application in response to the breakpoint instruction and obtains the resource data of the first state of the application.
  • the storage medium is further configured to store program codes for performing the following steps: the application kernel module transmits a restart instruction to the second terminal device via a restart interface, where the restart interface is provided by the application kernel module; and the second terminal device starts the application in response to the restart instruction, such that the second terminal device and the first terminal device run the application in the first state synchronously.
  • the storage medium is further configured to store program codes for performing the following steps: the predetermined storage address of the resource data is transmitted to the second terminal device; and the second terminal device accesses a predetermined magnetic disk based on the address of the predetermined magnetic disk, and obtains the stored resource data from the predetermined magnetic disk.
  • the storage medium is further configured to store program codes for performing the following steps: the address of the predetermined magnetic disk is transmitted to the second terminal device in one or more of the following transmission: a network communication, a Bluetooth® communication, a near field communication payment and a short message.
  • the storage medium may include but not limited to a medium that can store program codes, such as a USB flash disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a mobile hard disk, a magnetic disk or an optical disk.
  • a medium that can store program codes such as a USB flash disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a mobile hard disk, a magnetic disk or an optical disk.
  • a storage medium is further provided according to an embodiment of the present disclosure.
  • the storage medium may be configured to store program codes for implementing the method for migrating application data between terminals according to the first embodiment.
  • the storage medium may be located in any server of a group of computer terminals in a computer network.
  • the storage medium is configured to store program codes for performing the following steps S 120 to S 128 .
  • step S 120 in the process of running an application on a first terminal device, a second terminal device transmits a migration request to the first terminal device to establish a migration relation between the first terminal device and the second terminal device.
  • step S 122 after confirming the migration request, the first terminal device obtains resource data of a first state of the application running on the first terminal device, where the first state is a state of the application during a period from startup to an instant when a migration instruction is received.
  • step S 124 the first terminal device stores the resource data at a predetermined storage address.
  • step S 126 after confirming the migration request, the first terminal device transmits the storage address of the resource data to the second terminal device.
  • step S 128 the second terminal device obtains the resource data of the application by accessing the storage address and loads the resource data.
  • the storage medium is further configured to store program codes for performing the following steps: the first terminal device receives the migration instruction at a first instant, and forwards the migration instruction to an application kernel module; the first terminal device receives a breakpoint instruction generated by the application kernel module in response to the migration instruction; and the first terminal device suspends the application in response to the breakpoint instruction and obtains the resource data of the first state of the application.
  • the storage medium is further configured to store program codes for performing the following steps: the application kernel module transmits a restart instruction to the second terminal device, where the second terminal device obtains the restart instruction via a restart interface provided by the application kernel module; and the second terminal device starts the application in response to the restart instruction, such that the second terminal device and the first terminal device run the application in the first state synchronously.
  • the storage medium is further configured to store program codes for performing the steps of transmitting the address of the predetermined magnetic disk to the second terminal device in one or more of the following transmission: a network communication, a Bluetooth® communication, a near field communication payment and a short message.
  • the storage medium may include but not limited to a medium that can store program codes, such as a USB flash disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a mobile hard disk, a magnetic disk or an optical disk.
  • program codes such as a USB flash disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a mobile hard disk, a magnetic disk or an optical disk.
  • the integrated unit in the above embodiments is implemented in software functional unit and is sold or used as a separate product, it may be stored in a computer readable storage medium.
  • the essence of the technical solutions, the part of the technical solutions which contributes to the conventional technology, or, all or part of the technical solutions of the present disclosure may be implemented in a form of software product, which is stored in a storage medium and includes several instructions to control one or more computer devices (which may be personal computers, servers or network devices, etc.) to execute all or some of the steps in the methods according to the embodiments of the present disclosure.
  • the disclosed client apparatus may be implemented in other ways.
  • the device embodiments described above are illustrative only.
  • the units are divided merely in logical function, which may be divided by another way in actual implementation.
  • multiple units or components may be combined or integrated into another system, or some features may be ignored or not performed.
  • the disclosed or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, units or modules, which may be implemented in electrical or other forms.
  • a component displayed as a unit may or may not be a physical unit, which may be located in one position or distributed on multiple network units. A part or all of the components may be selected to achieve the object of solutions in the embodiments based on practical requirements.
  • the functional units in the embodiments of the present disclosure may be integrated into a process unit or physically separated, or two or more units may be integrated into a unit.
  • the integrated unit described above may be implemented in hardware or in software functional unit.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

A method, an apparatus and a system for migrating application data between terminals are provided. The method includes steps that: the application runs on a first terminal device; a first terminal receives a migration instruction, and acquires resource data of a first state of the application running on the first terminal device, where the first state is a state of the application from starting to receiving the migration instruction; the resource data is stored according to a predetermined storage address; a second terminal device is determined as a migration destination of the resource data, where the second terminal device is provided with the application; and the storage address of the resource data is sent to the second terminal device, so that the second terminal device acquires the resource data by visiting the storage address, and loads the resource data.

Description

The present application is a continuation of International Patent Application No. PCT/CN2015/093325 filled on Oct. 30, 2015, which claims priority to Chinese Patent Application No. 201410608206.2, titled “METHOD, APPARATUS AND SYSTEM FOR MIGRATING APPLICATION DATA BETWEEN TERMINALS”, filed on Oct. 31, 2014 with the State Intellectual Property Office of the People's Republic of China, both of which are incorporated by reference in their entireties herein.
TECHNICAL FIELD
The present disclosure relates to the fields of computer and Internet, and in particular, to a method, an apparatus and a system for migrating application data between terminals.
BACKGROUND
With the rapid development of computer and Internet technologies, Internet-based social applications have emerged, such as interactive games, micro-blogs, WeChat, Weishi and Paint. A social application is a platform that provides instant interaction for users. For example, for two terminals configured with the same application, after two users log in with login accounts on their terminals respectively, the two users can operate the applications on their terminals respectively.
In view of this, the demand for interaction between terminals increases with the development of mobile Internet at present. In most situations, if a terminal needs collaboration with a user of another terminal while running an application, a request is usually transmitted to the other terminal manually. And then the other terminal transmits data obtained after the collaboration to the terminal, thereby achieving interaction between the two terminals running the same application.
For example, in a case that an application installed on mobile terminals is an interactive application, and a user of one mobile terminal needs help from a friend when the interactive application of the mobile terminal reaches a level during the operation of the interactive application, in a conventional method the friend sends a strategy to the above mobile terminal. The user of the mobile terminal needs to first open the strategy to read, and then continue to run the interactive application based on the read content of the strategy. Apparently, the efficiency and effect of the interaction are poor.
At present, there is no effective solution to the above problem in the conventional technology that the efficiency of collaboration between terminal devices is poor when sharing application resource between the terminal devices.
SUMMARY
A method, an apparatus and a system for migrating application data between terminals are provided according to an embodiment of the present disclosure, so as to solve a technical problem in the conventional technology that the efficiency of collaboration between terminal devices is poor when sharing application resources between the terminal devices.
A method for migrating application data between terminals is provided according to an aspect of an embodiment of the present disclosure, which includes: running an application on a first terminal device; receiving by the first terminal a migration instruction, and obtaining resource data of a first state of the application running on the first terminal device, where the first state is a state of the application during a period from startup to an instant when the migration instruction is received; storing the resource data at a predetermined storage address; determining a second terminal device as a destination for migration of the resource data, where the second terminal device is configured with the application; and transmitting the storage address of the resource data to the second terminal device, where the second terminal device obtains the resource data by accessing the storage address and loads the resource data.
An apparatus for migrating application data between terminals is further provided according to another aspect of the embodiment of the present disclosure, which is applied to a first terminal device. The apparatus includes: a processor and one or more modules stored on a memory and executable by the processor. The one or more modules includes: a running module, configured to run an application on the first terminal device; a first obtaining module, configured to receive a migration instruction, and obtain resource data of a first state of the application running on the first terminal device, where the first state is a state of the application during a period from startup to an instant when the migration instruction is received; a first storing module, configured to store the resource data at a predetermined storage address; a determining module, configure to determine a second terminal device as a destination for migration of the resource data, where the second terminal device is configured with the application; and a first migrating module, configured to transmit the storage address of the resource data to the second terminal device, where the second terminal device obtains the resource data by accessing the storage address and loads the resource data.
A non-transitory computer storage medium is further provided according to another aspect of the embodiment of the present disclosure, including a computer executable instruction adapted to perform a method for migrating application data between terminals. The method for migrating application data between terminals includes: running an application on a first terminal device; receiving by the first terminal a migration instruction, and obtaining resource data of a first state of the application running on the first terminal device, where the first state is a state of the application during a period from startup to an instant when the migration instruction is received; storing the resource data at a predetermined storage address; determining a second terminal device as a destination for migration of the resource data, where the second terminal device is configured with the application; and transmitting the storage address of the resource data to the second terminal device, where the second terminal device obtains the resource data by accessing the storage address and loads the resource data.
In the embodiment of the present disclosure, resource data of an application running on a terminal device of a user may be transmitted to a terminal device of a friend of the user, by using the first terminal device to obtain the resource data of operation of the application running on the first terminal device during a period from startup to an instant when the migration instruction is received after the migration instruction is received in the process of running the application; store the resource data at the predetermined storage address; determine the second terminal device as the destination for migration of the resource data; and transmit the storage address of the resource data to the second terminal device, such that the second terminal device obtains the resource data of the application based on the storage address and completes loading of the resource data. Then the terminal device of the friend of the user can run the application based on the above resource data. In this way, the application is shared, and the technical problem in the conventional technology that the efficiency of collaboration between terminal devices is poor when sharing application resources between the terminal devices is solved.
BRIEF DESCRIPTION OF THE DRAWINGS
In order to more clearly illustrate technical solutions in embodiments of the present disclosure, drawings used in the description of the embodiments are introduced briefly hereinafter. Apparently, the drawings described hereinafter only illustrate some embodiments of the present disclosure, and other drawings may be obtained by those skilled in the art based on these drawings without any creative efforts.
FIG. 1 is a structural block diagram of hardware of a computer terminal for performing a method for migrating application data between terminals according to an embodiment of the present disclosure;
FIG. 2 is a flow chart of a method for migrating application data between terminals according to a first embodiment of the present disclosure;
FIG. 3 is a flow chart of a method for migrating application data between terminals according to a first embodiment of the present disclosure;
FIG. 4 is a flow chart of a method for migrating application data between terminals according to a first embodiment of the present disclosure;
FIG. 5 is a schematic diagram of a method for migrating application data between terminals according to a first embodiment of the present disclosure;
FIG. 6 is a flow chart of a method for migrating application data between terminals according to a first embodiment of the present disclosure;
FIG. 7 is a schematic diagram of a method for migrating application data between terminals according to a first embodiment of the present disclosure;
FIG. 8 is a schematic structural diagram of an apparatus for migrating application data between terminals according to a second embodiment of the present disclosure;
FIG. 9 is a schematic structural diagram of an apparatus for migrating application data between terminals according to a second embodiment of the present disclosure;
FIG. 10 is a schematic structural diagram of an apparatus for migrating application data between terminals according to a second embodiment of the present disclosure;
FIG. 11 is a schematic structural diagram of an apparatus for migrating application data between terminals according to a second embodiment of the present disclosure;
FIG. 12 is a schematic structural diagram of a system for migrating application data between terminals according to a third embodiment of the present disclosure;
FIG. 13 is a flow chart of a method for migrating application data between terminals according to a fourth embodiment of the present disclosure;
FIG. 14 is a schematic structural diagram of an apparatus for migrating application data between terminals according to a fifth embodiment of the present disclosure;
FIG. 15 is a schematic structural diagram of an apparatus for migrating application data between terminals according to a fifth embodiment of the present disclosure;
FIG. 16 is a schematic structural diagram of an apparatus for migrating application data between terminals according to a fifth embodiment of the present disclosure; and
FIG. 17 is a schematic structural diagram of an apparatus for migrating application data between terminals according to a fifth embodiment of the present disclosure.
DETAILED DESCRIPTION OF THE EMBODIMENTS
In order to facilitate those skilled in the art to better understand the solutions in the present disclosure, the technical solutions in the embodiments of the present disclosure are described clearly and completely hereinafter in conjunction with the drawings in the embodiments of the present disclosure. Apparently, the described embodiments are only a few of the embodiments of the present disclosure. All other embodiments obtained by those skilled in the art based on the embodiments of the present disclosure without any creative efforts fall within the protection scope of the present disclosure.
It should be noted that terms “first”, “second” and the like in the specification, claims and the drawings of the present disclosure are used to differentiate similar objects rather than to describe specific sequences or orders. It should be understood that the terms used in this way are interchangeable under appropriate circumstances such that the embodiments of the present disclosure described herein can be implemented in other sequences in addition to those illustrated or described herein. Moreover, terms such as “include”, “have” and any other variants thereof are meant to cover non-exclusive enclosure. For example, process, method, system, product or device including a series of steps or units is not limited to the steps or units that are clearly listed, and optionally includes other steps or units that are not listed or that are inherent in the process, method, product or device.
First Embodiment
A method embodiment for migrating application data between terminals is provided according to an embodiment of the present disclosure. It should be noted that, steps shown in the flow charts in the drawings may be executed in a computer system such as a set of computer executable instructions. In addition, although logical sequences are shown in the flow charts, the shown or described steps may be performed in other sequences different from those described herein in some situations.
The method embodiment according to the first embodiment of the present disclosure may be implemented on an arithmetical device such as a mobile terminal, a computer terminal or the like. Taking operating on a computer terminal device as an example, FIG. 1 is a structural block diagram of hardware of a computer terminal for performing a method for migrating application data between terminals according to an embodiment of the present disclosure. As shown in FIG. 1, the computer terminal 10 acting as a first terminal device includes one or more (only one is shown in the figure) processors 102, a memory 104 configured to store data and a transmission device 106 for performing a communication function. The processors 102 may include but not limited to a micro controller unit MCU or a field programmable gate Array FPGA. Those skilled in the art can understand that the structure shown in FIG. 1 is for illustration only, and the structure of the above electronic device is not limited hereto. For example, the computer terminal 10 may include more or less components than the components illustrated in FIG. 1, or have a different configuration from FIG. 1.
The memory 104 may be configured to store software programs and modules of applications, such as program instructions/modules corresponding to the method for migrating application data between terminals according to the embodiment of the present disclosure. The processors 102 perform various functional applications and data processing, i.e., implementing the above method for migrating application data between terminals, by running the software programs and modules stored in the memory 104. The memory 104 may include a high speed random access memory, and may also include a non-volatile memory such as one or more magnetic storage devices, a flash memory, or other non-volatile solid-state memory. In some embodiments, the memory 104 may further include memories which are arranged remotely to the processors 102, and the remote memories may be connected to the computer terminal 10 via a network. Examples of the network include but not limited to Internet, intranet, local area network, mobile communication network and combinations thereof.
The transmission device 106 is configured to receive or transmit data via a network. An example of the network may include a wireless network provided by a communication provider of the computer terminal 10. In an example, the transmission device 106 includes a network interface controller (NIC), which may be connected with other network devices via a base station and thereby communicate with the Internet. In an example, the transmission device 106 may be a radio frequency (RF) module configured to communicate with the Internet in a wireless mode.
In the above operating environment, a method for migrating application data between terminals is provided according to the present disclosure, as shown in FIG. 2. FIG. 2 is a flow chart of the method for migrating application data between terminals according to the first embodiment of the present disclosure.
As shown in FIG. 2, the method for migrating application data between terminals may include steps S20 to S28.
In step S20, an application is run on a first terminal device.
It should be noted that, the application in the above solution includes but not limited to a game-type application such as Super Mario™ or Plane Wars. The first terminal device includes but not limited to an intelligent terminal device such as a smart phone or a tablet computer.
In step S22, the first terminal device receives a migration instruction, and obtains resource data of a first state of the application running on the first terminal. The first state is a state of the application during a period from startup to an instant when the migration instruction is received.
In an optional implementation of the above step S22, in process of running the application on the first terminal device, after receiving the migration instruction at a first instant, the first terminal device may obtain the resource data of operation of the application during a period from an instant when the first terminal device starts the application to the first instant.
In the above process of running the application on the first terminal device, a user may send the migration instruction to the first terminal device at the first instant. It should be noted that, the migration instruction may be an instruction generated after a button control displayed on the first terminal device is triggered by the user, or may be an instruction transmitted by a third-party device to the first terminal device. After receiving the migration instruction, the first terminal device obtains the resource data of operation of the application during a period from starting the application to the first instant in response to the migration instruction. The resource data may be scenario data of the application during a period from startup to the first instant.
For example, a user runs the Super Mario™ game on a terminal device. In the process of running the Super Mario™ on the terminal device, the user has a poor game experience. For example, the user feels that the game is too difficult, and wants to ask a friend for help or wants the friend to experience the game. At a first instant, the user may trigger a button control on the terminal device to generate a migration instruction. Upon receiving the migration instruction, the terminal device immediately obtains resource data of the Super Mario™ during a period from startup to the first instant. It should be noted that, the first instant may be a time point at which the Super Mario™ game reaches a stage or a game level. Because of some operations performed by the user in the game, the Super Mario™ game reaches to a progress or a stage. Hence, the resource data may be more than one of the following pieces of data: application of the game itself, scenario data of an n-th level of the Super Mario™ game at the first instant (such as a water scenario or a land scenario) and features of a character controlled by the user (such as a size of the character, with or without an amulet, and with or without a function of firing bullets).
In step S24, the resource data is stored at a predetermined storage address.
The above step S24 according to the present disclosure may be implemented by storing the resource data to a predetermined magnetic disk at the predetermined storage address. The predetermined magnetic disk may be a magnetic disk of the first terminal device itself, or may be a database disk provided by a third-party server. After receiving the migration instruction, the first terminal device may store a resource program of the application in a file format, such as a context file format. It can be seen that the resource data may be stored locally, or stored in the cloud, or stored in a background via a network, or stored in other manners.
In step S26, a second terminal device is determined as a destination for migration of the resource data. The second terminal device is configured with the application. Preferably, a communication relation between the two terminal devices may be established when the migration instruction is received by the first terminal device or before the migration instruction is received by the first terminal device, such that the two terminal devices have the migration relation.
The second terminal device in the above step S24 may be a target terminal device to which the user wants to migrate the application. Still taking the case in which a user runs the Super Mario™ game on a terminal device as an example, in the process of operating the Super Mario™ game, the user feels that the game is too difficult, and wants to ask a friend for help, that is, the user wants the friend to experience the Super Mario™ game and provide a game strategy. While sending a migration instruction to the first terminal device running the Super Mario™ game, the user determines to migrate the Super Mario™ game to the friend of the user, i.e., the second terminal device.
In step S28, the storage address of the resource data is transmitted to the second terminal device, where the second terminal device obtains the resource data by accessing the storage address and loads the resource data. Preferably, the second terminal device may obtain the resource data from the predetermined magnetic disk.
After obtaining the resource data of the application, the second terminal device in the above step S28 may load the resource data to its local application. That is, the second terminal runs the same application as the first terminal device.
Still taking the case in which a user runs the Super Mario™ game on a terminal device as an example, in the process of operating the Super Mario™, the user feels that the game is too difficult, and wants to ask a friend for help, that is, the user wants the friend to experience the Super Mario™ game and provide a game strategy. The user transmits application data of the Super Mario™ game and resource data of the Super Mario™ game at a first instant, such as scenario data of an n-th level of the Super Mario™ game (such as a water scenario or a land scenario) and features of a character controlled by the user (such as a size of the character, with or without an amulet, and with or without a function of firing bullets), to a predetermined magnetic disk via the terminal device. Then the friend of the user, i.e., the second terminal device, may obtain the resource data and load the resource data to its own terminal device.
It can be seen from the above that in the solution according to the first embodiment of the present disclosure, in the process of running the application on the first terminal device, after receiving the migration instruction at the first instant, the first terminal device obtains the resource data of operation of the application during a period from an instant when the first terminal device starts the application to the first instant and stores the resource data at the predetermined storage address. When the migration instruction is received by the first terminal device, the second terminal device having the migration relation with the first terminal device may be determined, such that the second terminal device obtains the resource data based on the storage address of the resource data. With the above solution, resource data of an application running on a terminal device of a user may be transmitted to a terminal device of a friend of the user, and the terminal device of the friend of the user may run the application based on the above resource data. In this way, the application is shared, and a technical problem in the conventional technology that the efficiency of collaboration between terminal devices is poor when sharing application resources between the terminal devices is solved.
As shown in FIG. 3, according to an optional solution in the present disclosure, the above step S22 may further include steps S221 to S223.
In step S221, the first terminal device receives the migration instruction at the first instant, and forwards the migration instruction to an application kernel module.
In step S222, the first terminal device receives a breakpoint instruction generated by the application kernel module in response to the migration instruction.
Referring to FIG. 5, the breakpoint instruction in the above step S222 according to the present disclosure may be an instruction generated by the application kernel module in a background of the first terminal device in response to the migration instruction after the migration instruction is received by the first terminal device. Specifically, the application kernel module provides a port for generating the breakpoint instruction. After the migration instruction is received, the breakpoint instruction is generated by invoking a breakpoint function in a BLCR database LIB via the port, and the breakpoint instruction is returned to the first terminal device.
In step S223, the first terminal device suspends the application in response to the breakpoint instruction and obtains the resource data of the first state of the application.
Through the above step S223 according to the present disclosure, after the breakpoint instruction generated by the application kernel module is received by the first terminal device, the breakpoint instruction controls the first terminal device to suspend the currently running application. The suspending time is the first instant. That is, the background is informed that resource data to be synchronized to the second terminal device is the resource data during a period from starting the application by the first terminal device to the first instant. The resource data described herein at least includes: an operating environment, function names of various functions for running the application and names and content of various objects for running the application. The resource data ensures that scenarios and content on the second terminal device are exactly the same as those on the first terminal device after the resource data is loaded by the second terminal.
Still taking the case in which a user runs the Super Mario™ game on a terminal device as an example, the terminal device of the user suspends the running Super Mario™ game in response to a received breakpoint instruction from an application kernel, and further performs a step of obtaining resource data of operation of the Super Mario™ game during a period from an instant when the terminal device of the user starts the Super Mario™ game to the first instant, such as scenario data of an n-th level of the Super Mario™ game (such as a water scenario or a land scenario) and features of a character controlled by the user (such as a size of the character, with or without an amulet, and with or without a function of firing bullets).
As shown in FIG. 4, according to another optional solution in the present disclosure, after the step S28, the method for migrating application data between terminals may further include the following steps S30 and S32.
In step S30, an application kernel module transmits a restart instruction to the second terminal device via a restart interface. The restart interface is provided by the application kernel module.
Referring to FIG. 5, the restart instruction in the above step S30 according to the present disclosure may be an instruction provided by the application kernel module in a background of the second terminal device after the resource data is obtained by the second terminal device from the predetermined storage address. The restart instruction is used to control the second terminal device to start the application and load the obtained resource data to the currently running application. Specifically, the application kernel module provides a port for generating the restart instruction. After a restart instruction is received, the restart instruction is generated by invoking a restart function and a load function in a database LIB via the port.
Taking the case in which a user runs the Super Mario™ game on a terminal device as an example, a terminal device of a friend of the user, i.e., the second terminal device described above, receives the restart instruction transmitted by an application kernel module, via a restart interface provided by the application kernel module, after receiving data of the game at a first instant which is obtained by the terminal device of the user by operating the Super Mario™ game.
In step S32, the second terminal device starts the application in response to the restart instruction, such that the second terminal device and the first terminal device run the application in the first state synchronously.
Still taking the case in which a user runs the Super Mario™ game on a terminal device as an example, a terminal device of a friend of a user, i.e., the second terminal device described above, may start the obtained Super Mario™ game in response to the restart instruction. It should be noted that, since the resource data of operation of the Super Mario™ game during a period from an instant when the terminal device of the user starts the Super Mario™ game to a first instant, such as scenario data of an n-th level of the Super Mario™ game (such as a water scenario or a land scenario) and features of a character controlled by the user (such as a size of the character, with or without an amulet, and with or without a function of firing bullets), is obtained by the second terminal device, the second terminal device and the first terminal device may run the Super Mario™ game synchronously from the first instant. That is, when the Super Mario™ game runs on the second terminal device, data such as the game process, scenarios and features of the game character, is exactly the same as that in the Super Mario™ game running on the first terminal device, thereby achieving game synchronization.
As shown in FIG. 6, according to another optional solution in the present disclosure, the step S28 further includes steps S281 to S282.
In step S281, the storage address of the resource data is transmitted to the second terminal device.
The storage address of the resource data in the above step S281 may be an address of a predetermined magnetic disk. The address of the predetermined magnetic disk may be an address of a local disk of the first terminal device or an address of a database disk provided by a third-party server.
In step S282, the second terminal device accesses the predetermined magnetic disk based on the storage address of the resource data, and obtains the stored resource data from the predetermined magnetic disk.
Taking the case in which a user runs the Super Mario™ game on a terminal device as an example, the second terminal device may be a terminal device of a friend of the user. It should be noted that the resource data obtained by the terminal device of the friend of the user from the predetermined magnetic disk may be data generated by the terminal device of the user, i.e., the first terminal device, in a stage of running the Super Mario™ game. That is, the resource data may be the data generated at the first instant, such as scenario data of an n-th level of the Super Mario™ game at the first instant (such as a water scenario or a land scenario) and features of a character controlled by the user (such as a size of the character, with or without an amulet, and with or without a function of firing bullets).
Preferably, in the above steps according to the present disclosure, the address of the predetermined magnetic disk may be transmitted to the second terminal device in at least one of the following transmission: a network communication, a Bluetooth® communication, a near field communication payment and a short message.
Taking the case in which a user runs the Super Mario™ game on a terminal device as an example, after resource data of the Super Mario™ game running on the terminal device of the user is stored to a predetermined magnetic disk, an address of the predetermined magnetic disk may be transmitted to the terminal device of the friend of the user in the following transmission: a network communication, a Bluetooth® communication, a near field communication payment and a short message. The terminal device of the friend of the user may obtain the resource data based on the address of the predetermined magnetic disk.
For example, in a case that a WIFI communication is adopted, the first terminal device may obtain an access address of the second terminal device by querying via WIFI, and transmit the address of the predetermined magnetic disk for storing the resource data to the second terminal device based on the access address of the second terminal device.
In conclusion, referring to FIG. 7, the application according to the first embodiment of the present disclosure may be a client application of a game such as Super Mario™ or Plane Wars. The first terminal device and the second terminal device each may be a mobile terminal such as a smart phone or a tablet computer. Functions realized by applying the solution in the present disclosure to three optional application scenarios are described in detail hereinafter.
In step A, a graphics application APP migration technology is applied to a first mobile terminal and a second mobile terminal. After a game client is installed to the first mobile terminal and the second mobile terminal, the graphics application APP migration is started by triggering a migration button on the first mobile terminal, i.e., the game is switched to the second mobile terminal (a mobile phone of a friend) in a process of running on the first mobile terminal, so as to allow the friend to continue to operate the running application.
In step B, after the migration button on the first mobile terminal is triggered at a first instant, an application kernel module in a background of the first mobile terminal sends a suspending instruction, to suspend the game running on the first mobile terminal at the first instant, and resource data of the game before the first instant is stored to a memory at a predetermined address.
In step C, the first mobile terminal transmits the predetermined address of the memory to the second mobile terminal in a communication mode.
In step D, the second mobile terminal obtains the resource data of the game on the first mobile terminal, which is before the first instant, based on the predetermined address of the memory.
In step E, after receiving a restart instruction, the second mobile terminal starts the local game application and loads the obtained resource data of the game to the currently running game application, thereby taking over the game from the first mobile terminal.
It can be seen from the above that the solution of steps A to E in the present disclosure may be applied to the following application scenarios, to achieve effective and efficient interaction between terminals.
In a first application, when an APP on the first mobile terminal reaches a stage, a user A may, with the above solution, instantly switch the APP to the second mobile terminal, such as a mobile phone of a user B, to continue to operate the APP from the scenario on the first mobile terminal before switching, thereby taking over an APP on a terminal by the same APP on another terminal.
In a second application, the graphics application APP migration technology is applied to a social game. Specifically, when a user A of the first mobile terminal runs a game APP to a game level, a user B of the second terminal device, such as a mobile phone, may join the game application of the user A of the first mobile terminal instantly with the solution, so that the scenario of the game may continue from the scenario before the time of switching.
Specifically, in an optional solution, a user B can take over a game level of a user A and continue the game.
According to another embodiment of the present disclosure, after the step S32, the method may further include: creating by the second terminal device a new object in the application, such that the second terminal device and the first terminal device run the application in the first state synchronously, where the created new object is controlled by the user of the second terminal device.
In an optional solution, the game can be shared between the two terminals. That is, the second terminal device can not only continue the game of the user B of the first mobile terminal but also feedback a game resource of a user B to the user A in the same manner, thereby playing the game by two game users together. In this way, the user A and the user B can play against each other in a game.
In a third application, the graphics application APP migration technology may also be applied to home devices. Specifically, in a case that a user A of the first mobile terminal experiences an application, such as a game, on a mobile phone, and then wants to switch to a PC machine in the house or a television in the house to continue the game, migration can be completed instantly with the above solution according to the present disclosure.
It should be noted that the above method embodiments are expressed as combinations of a series of actions for simplicity. Those skilled in the art should know that, the present disclosure is not limited to the described sequence of the actions, because some steps may be performed in other sequences or may be performed at the same time according to the present disclosure. Moreover, those skilled in the art should know that the embodiments described in the specification are all preferred embodiments, and actions and modules that are involved are not necessary to the present disclosure.
Based on the descriptions of the above implementations, those skilled in the art can understand that the method according to the above embodiment may be implemented by software and a general hardware platform which is necessary, or by hardware. In most situations, the former is a preferred implementation. Based on this understanding, the essence of the technical solutions or the part of the technical solutions which contributes to the conventional technology, of the present disclosure may be implemented in a form of software product, which is stored in a storage medium (such as a ROM/RAM, a magnetic disk or an optical disk) and includes several instructions to control a terminal device (which may be a mobile phone, a computer, a server or a network device, etc.) to execute the method according to the embodiments of the present disclosure.
Second Embodiment
A device embodiment for implementing the above method embodiment is further provided according to an embodiment of the present disclosure. The apparatus according to the embodiment of the present disclosure may operate in a computer terminal.
FIG. 8 is a schematic structural diagram of an apparatus for migrating application data between terminals according to the second embodiment of the present disclosure.
As shown in FIG. 8, the apparatus for migrating application data between terminals may include: a running module 80, a first obtaining module 82, a first storing module 84, a determining module 86 and a first migrating module 88.
Specifically, the running module 80 is configured to run an application on a first terminal device.
The first obtaining module 82 is configured to receive a migration instruction, and obtain resource data of a first state of the application running on the first terminal device, where the first state is a state of the application during a period from startup to an instant when the migration instruction is received.
The first storing module 84 is configured to store the resource data at a predetermined storage address.
The determining module 86 is configure to determine a second terminal device as a destination for migration of the resource data, where the second terminal device is configured with the application.
The first migrating module 88 is configured to transmit the storage address of the resource data to the second terminal device, where the second terminal device obtains the resource data by accessing the storage address and loads the resource data.
It can be seen from the above that in the solution according to the second embodiment of the present disclosure, in the process of running the application on the first terminal device, after receiving the migration instruction at the first instant, the first terminal device obtains the resource data of operation of the application during a period from an instant when the first terminal device starts the application to the first instant and stores the resource data at the predetermined storage address. When the migration instruction is received by the first terminal device, the second terminal device having a migration relation with the first terminal device may be determined, such that the second terminal device obtains the resource data based on a storage path of the resource data. With the above solution, resource data of an application running on a terminal device of a user may be transmitted to a terminal device of a friend of the user, and the terminal device of the friend of the user may run the application based on the above resource data. In this way, the application is shared, and a technical problem in the conventional technology that the efficiency of collaboration between terminal devices is poor when sharing application resources between the terminal devices is solved.
It should be noted that the running module 80, the first obtaining module 82, the first storing module 84, the determining module 86 and the first migrating module 88 correspond to the steps S20 to S28 in the first embodiment. Examples and application scenarios of the modules are the same as those of the corresponding steps, but are not limited to the content disclosed in the first embodiment. It should be noted that the modules as a part of the apparatus may operate in the computer terminal 10 according to the first embodiment, and may be implemented by software or by hardware.
Preferably, as shown in FIG. 9, the first obtaining module 82 may further include a first transmitting unit 821, a breakpoint instruction generating unit 822 and an obtaining unit 823.
Specifically, the transmitting unit 821 is configured to receive the migration instruction at the first instant and forward the migration instruction to an application kernel module.
The breakpoint instruction generating unit 822 is configured to receive by the first terminal device a breakpoint instruction generated by the application kernel module in response to the migration instruction.
The obtaining unit 823 is configured to suspend the application in response to the breakpoint instruction and obtain the resource data of the first state of the application.
It should be noted that the first transmitting unit 821, the breakpoint instruction generating unit 822 and the obtaining unit 823 correspond to the steps S221 to S223 in the first embodiment. Examples and application scenarios of the modules are the same as those of the corresponding steps, but are not limited to the content disclosed in the first embodiment. It should be noted that the modules as a part of the apparatus may operate in the computer terminal 10 according to the first embodiment, and may be implemented by software or by hardware.
Preferably, as shown in FIG. 10, the apparatus for migrating application data between terminals may further include a second transmitting module 90.
Specifically, the second transmitting module 90 is configured to transmit a restart instruction to the second terminal device via a restart interface provided by the application kernel module, and start the application by the second terminal device in response to the restart instruction and load the resource data, such that the second terminal device and the first terminal device run the application in the first state synchronously.
It should be noted that the second transmitting module 90 corresponds to the steps S30 to S32 in the first embodiment. Examples and application scenarios of the module are the same as those of the corresponding steps, but are not limited to the content disclosed in the first embodiment. It should be noted that the module as a part of the apparatus may operate in the computer terminal 10 according to the first embodiment, and may be implemented by software or by hardware.
In an embodiment, as shown in FIG. 11, the first migrating module 88 may further include a third transmitting unit 881 and a first access unit 882.
Specifically, the third transmitting unit 881 is configured to transmit the predetermined storage address to the second terminal device. The first access unit 882 is configured to access a predetermined magnetic disk based on the predetermined storage address, and obtain the stored resource data from the predetermined magnetic disk.
It should be noted that the third transmitting unit 881 and the first access unit 882 correspond to the steps S281 to S282 in the first embodiment. Examples and application scenarios of the two modules are the same as those of the corresponding steps, but are not limited to the content disclosed in the first embodiment. It should be noted that the modules as a part of the apparatus may operate in the computer terminal 10 according to the first embodiment, and may be implemented by software or by hardware.
Preferable, in the solution according to the second embodiment of the present disclosure, the address of the predetermined magnetic disk may be transmitted to the second terminal device in one or more of the following transmission: a network communication, a Bluetooth® communication, a near field communication payment and a short message.
It can be seen from the above that the solution realized by the above device embodiments of the present disclosure may be applied to the following application scenarios, which can achieve effective and efficient interaction between terminals.
In a first application, when an APP on a first mobile terminal reaches a stage, a user A may, with the above solution, instantly switch the APP to the second mobile terminal, such as a mobile phone, of a user B, to continue to operate the scenario of the APP from the scenario on the first mobile terminal before switching, thereby taking over an APP on a terminal by the same APP on another terminal.
In a second application, a graphics application APP migration technology is applied to a social game. Specifically, when a user A of a first mobile terminal runs a game APP to a game level, a user B of a second terminal device, such as a mobile phone, may join the game application of the user A of the first mobile terminal instantly with the solution, so that the scenario of the game may continue from the scenario before the time of switching.
Specifically, in an optional solution, a game level of a user A may be taken over to continue the game.
According to another embodiment of the present disclosure, after loading the resource data, the second terminal device creates a new object in the application, such that the second terminal device and the first terminal device run the application in the first state synchronously. The created new object is controlled by the user of the second terminal device.
In an optional solution, the game can be shared between the two terminals. That is, the second terminal device can not only continue the game of the user A of the first mobile terminal but also feedback a game resource of a user B to the user A in the same manner, thereby playing the game by two game users together. In this way, the user A and the user B can play against each other in a game.
In a third application, the graphics application APP migration technology may also be applied to home devices. Specifically, in a case that a user A of a first mobile terminal experiences an application, such as a game, on a mobile phone, and then wants to switch to a PC machine in the house or a television in the house to continue the game, migration can be completed instantly with the above solution according to the present disclosure.
Third Embodiment
A system embodiment for implementing the above device embodiment is further provided according to an embodiment of the present disclosure. FIG. 12 is a schematic structural diagram of a system for migrating application data between terminals according to the third embodiment of the present disclosure.
As shown in FIG. 12, the system for migrating application data between terminals may include a first terminal device 90 and a second terminal device 92.
Specifically, the first terminal device 90 is configured to run an application; receive a migration instruction, and obtain resource data of a first state of the application running on the first terminal device, where the first state is a state of the application during a period from startup to an instant when the migration instruction is received; store the resource data at a predetermined storage address; determine the second terminal device as a destination for migration of the resource data; and transmit the storage address of the resource data to the second terminal device.
The second terminal device 92 is configured with the application and has a communication relation with the first terminal device, and is configured to obtain the resource data by accessing the storage address of the resource data and load the resource data. That is, the second terminal device obtains the resource data based on the storage address of the resource data and loads the resource data to its local application.
It can be seen from the above that in the solution according to the third embodiment of the present disclosure, in the process of running the application on the first terminal device, after receiving the migration instruction at the first instant, the first terminal device obtains the resource data of operation of the application during a period from an instant when the first terminal device starts the application to the first instant and stores the resource data to a predetermined magnetic disk at a predetermined path. When the migration instruction is received by the first terminal device, the second terminal device having a migration relation with the first terminal device is determined, such that the second terminal device obtains the resource data from the predetermined magnetic disk. With the above solution, resource data of an application running on a terminal device of a user may be transmitted to a terminal device of a friend of the user, and the terminal device of the friend of the user may run the application based on the above resource data. In this way, the application is shared, and a technical problem in the conventional technology that the efficiency of collaboration between terminal devices is poor when sharing application resources between the terminal devices is solved.
It should be noted that the application in the system embodiment is not limited to a game-type application such as Super Mario™ or Plane Wars. The first terminal device is not limited to an intelligent terminal device such as a smart phone or a tablet computer. In the process of running the application on the first terminal device, a user may send the migration instruction to the first terminal device at the first instant.
Furthermore, it should be noted that the migration instruction may be an instruction generated after a button control displayed on the first terminal device is triggered by the user, or may be an instruction transmitted by a third-party device to the first terminal device. After receiving the migration instruction, the first terminal device obtains the resource data of operation of the application during a period from starting the application by the first terminal device to the first instant in response to the migration instruction. The resource data may be scenario data of the application during a period from startup to the first instant. The predetermined magnetic disk may be a magnetic disk of the first terminal device itself, or may be a database disk provided by a third-party server. After receiving the migration instruction, the first terminal device may store a resource program of the application in a file format, such as a context file format.
In addition, the second terminal device may be a target terminal device to which the user wants to migrate the application. After obtaining the resource data of the application, the second terminal device may load the resource data to its local application, that is, the second terminal runs the same application as the first terminal device.
Preferably, the system further includes: a memory and a third-party server having a function of an application kernel. The memory may be used to store the resource data. The application kernel may be provided by the first terminal device or the second terminal device, or may be provided by a third-party server.
It should be noted that, the preferred or optional embodiments of this system may have the same implementations or application scenarios as the first embodiment of method, but are not limited to the disclosure of the first embodiment.
In an optional application, before performing the function of obtaining the resource data of operation of the application during a period from an instant when the first terminal device starts the application to the first instant, the first terminal device may receive a breakpoint instruction generated by an application kernel module in a case that it is detected that the migration instruction is received by the first terminal device. In this case, the terminal device may suspend the application in response to the breakpoint instruction and perform the step of obtaining the resource data of operation of the application during a period from an instant when the first terminal device starts the application to the first instant.
It should be noted that in an optional solution of the above system, the breakpoint instruction may be an instruction generated by the application kernel module in a background of the first terminal device in response to the migration instruction after the migration instruction is received by the first terminal device. Specifically, the application kernel module provides a port for generating the breakpoint instruction. After the migration instruction is received, the breakpoint instruction is generated by invoking a breakpoint function in a database LIB via the port, and the breakpoint instruction is returned to the first terminal device.
In addition, after the breakpoint instruction generated by the application kernel module is received by the first terminal device, the breakpoint instruction controls the first terminal device to suspend the currently running application. The suspending time is the first instant. That is, the background is informed that resource data to be synchronized to the second terminal device is the resource data on the first terminal device during a period from starting the application to the first instant. The resource data described herein at least includes: an operating environment, function names of various functions for running the application and names and content of various objects for running the application. The resource data ensures that scenarios and content on the second terminal device are exactly the same as those on the first terminal device after the resource data is loaded by the second terminal.
In another optional solution, in the system embodiment, after the resource data is obtained by the second terminal device, a restart instruction may be transmitted to the second terminal device via the application kernel module. The second terminal device obtains the restart instruction via a restart interface provided by the application kernel module. Then, the second terminal device starts the application loaded with the resource data, in response to the restart instruction, such that the second terminal device and the first terminal device run the application from the first instant synchronously.
It should be noted that the restart instruction may be an instruction provided by an application kernel module in a background of the second terminal device after the resource data is obtained by the second terminal device from the predetermined magnetic disk. The restart instruction is used to control the second terminal device to start the application and load the obtained resource data to the currently running application. Specifically, the application kernel module provides a port for generating the restart instruction. After a restart instruction is received, the restart instruction is generated by invoking a restart function and a load function in a database LIB via the port.
Furthermore, it should be noted that, since resource data of operation of the application during a period from an instant when the terminal device of the user starts the application to a first instant, such as scenario data of an n-th level of the Super Mario™ game (such as a water scenario or a land scenario) and features of a character controlled by the user (such as a size of the character, with or without an amulet, and with or without a function of firing bullets), is obtained by the second terminal device, the second terminal device and the first terminal device may run the Super Mario™ game synchronously from the first instant. That is, when the Super Mario™ game runs on the second terminal device, data such as the game process, scenarios and features of the game character, is exactly the same as that in the Super Mario™ game running on the first terminal device, thereby achieving game synchronization.
In another optional solution, after the second terminal device having the migration relation with the first terminal device is determined by the system, the address of the predetermined magnetic disk may be transmitted to the second terminal device. Then the second terminal device accesses the predetermined magnetic disk based on the address of the predetermined magnetic disk, and obtains the stored resource data from the predetermined magnetic disk.
Preferably, the system may transmit the address of the predetermined magnetic disk to the second terminal device in at least one of the following transmission: a network communication, a Bluetooth® communication, a near field communication payment and a short message. For example, in a case that a WIFI communication is adopted, the first terminal device may obtain an access address of the second terminal device by querying via WIFI, and transmit the address of the predetermined magnetic disk for storing the resource data to the second terminal device based on the access address of the second terminal device.
Fourth Embodiment
A method embodiment for migrating application data between terminals is provided according to an embodiment of the present disclosure. It should be noted that, steps shown in the flow charts in the drawings may be executed in a computer system such as a set of computer executable instructions. In addition, although logical sequences are shown in the flow charts, the shown or described steps may be performed in other sequences different from those described herein in some situations.
The method embodiment according to the fourth embodiment of the present disclosure may be implemented on an arithmetical device such as a mobile terminal, a computer terminal or the like. It should be noted that the method embodiment according to the fourth embodiment of the present disclosure may be implemented on the computer terminal shown in FIG. 1.
In the above operating environment as an example, a method for migrating application data between terminals is provided according to the present disclosure, as shown in FIG. 13. FIG. 13 is a flow chart of the method for migrating application data between terminals according to the fourth embodiment of the present disclosure.
As shown in FIG. 13, the method for migrating application data between terminals may include steps S120 to S130.
In step 120, in the process of running an application on a first terminal device, a second terminal device transmits a migration request to the first terminal device to establish a migration relation between the first terminal device and the second terminal device.
Preferably, a communication relation between the two terminal devices may be established when a migration instruction is received by the first terminal device or before the migration instruction is received by the first terminal device, to build the migration relation between the two terminal devices.
The application in the above step S120 according to the present disclosure is not limited to a game-type application such as Super Mario™ or Plane Wars. The first terminal device or the second terminal device is not limited to an intelligent terminal device such as a smart phone or a tablet computer. In the process of running the application on the first terminal device, the second terminal device may transmit the migration request to the first terminal device, such that the first terminal device and the second terminal device have the migration relation.
For example, a user runs the Super Mario™ game on a terminal device. In the process of running the Super Mario™ on the terminal device, a friend of the user wants to experience the game, or the user feels that the game is too difficult and wants the friend to experience the game and provide a game strategy. A terminal device of the friend of the user, i.e., the second terminal device, may transmit a migration request to the terminal device of the user, i.e., the first terminal device. In this way, a migration relation is established between the terminal device of the user and the terminal device of the friend of the user.
In step S122, after confirming the migration request, the first terminal device obtains resource data of a first state of the application running on the first terminal device. The first state is a state of the application during a period from startup to an instant when the migration instruction is received.
In the above step S122 according to the present disclosure, after receiving the migration request transmitted by the second terminal device, the first terminal device may obtain the resource data of the first terminal device during a period from starting the application to an instant when the migration request is received, in response to the migration request. The resource data may be scenario data in the first state.
Still taking the case in which a user runs the Super Mario™ game on a terminal device as an example, upon receiving the migration request, the terminal device of the user may immediately obtain resource data of the Super Mario™ during a period from startup to an instant when the migration request is received by the terminal device of the user. It should be noted that, for the period from starting the Super Mario™ game to the instant when the migration request is received by the terminal device of the user, the instant when the migration request is received by the terminal device of the user may be a time point at which the Super Mario™ game reaches a stage or a game level. Because of some operations performed by the user in the game, the Super Mario™ game reaches to a progress or a stage. Hence, when the migration request is received by the terminal device of the user, the resource data may be more than one of the following pieces of data: application of the game itself, scenario data of an n-th level of the Super Mario™ game at the instant when the migration request is received by the terminal device of the user (such as a water scenario or a land scenario) and features of a character controlled by the user (such as a size of the character, with or without an amulet, and with or without a function of firing bullets).
In step S124, the first terminal device stores the resource data at a predetermined storage address.
The above step S124 according to the present disclosure may be implemented as storing the resource data to a predetermined magnetic disk at the predetermined storage address. The predetermined magnetic disk may be a magnetic disk of the first terminal device itself, or may be a database disk provided by a third-party server. After receiving the migration instruction, the first terminal device may store a resource program of the application in a file format, such as a context file format. It can be seen that the resource data may be stored locally, or stored in the cloud, or stored in a background via a network, or stored in other manners.
In step S126, after confirming the migration request, the first terminal device transmits the storage address of the resource data to the second terminal device.
After obtaining the resource data of the application, the second terminal device in the above step S126 may load the resource data to its local application. That is, the second terminal also has the first state of the application.
Still taking the case in which a user runs the Super Mario™ game on a terminal device as an example, in the process of operating the Super Mario™, a friend of the user may also want to experience the Super Mario™ game, or the user feels the game is too difficult and wants the friend to experience the Super Mario™ game and provide a game strategy. The user transmits application data of the Super Mario™ game and resource data of the Super Mario™ game at an instant when a migration request transmitted by a terminal device of the friend of the user is received, such as scenario data of an n-th level of the Super Mario™ game (such as a water scenario or a land scenario) and features of a character controlled by the user (such as a size of the character, with or without an amulet, and with or without a function of firing bullets), to a predetermined magnetic disk via the terminal device. The friend of the user, i.e., the second terminal device, may obtain the resource data and load the resource data to its own terminal device.
In step S128, the second terminal device obtains the resource data of the application by accessing the storage address and loads the resource data. That is, after obtaining the resource data, the second terminal device may load the resource data to its local application. Preferably, the second terminal device may obtain the resource data from the predetermined magnetic disk.
It can be seen from the above that in the solution according to the fourth embodiment of the present disclosure, in the process of running the application on the first terminal device, the second terminal device transmits the migration request to the first terminal device, such that the first terminal device and the second terminal device has the migration relation. After the migration request is confirmed by the first terminal device, the resource data of operation of the application during a period from starting the application to an instant when the migration request is received is obtained and the resource data is stored at a predetermined storage path. After the migration request is confirmed by the first terminal device, the storage address of the resource data is transmitted to the second terminal device, such that the second terminal device obtains the resource data. Then the second terminal device loads the resource data to its local application. With the above solution, resource data of an application running on a terminal device of a user may be transmitted to a terminal device of a friend of the user, and the terminal device of the friend of the user may run the application based on the above resource data. In this way, the application is shared, and a technical problem in the conventional technology that the efficiency of collaboration between terminal devices is poor when sharing application resources between the terminal devices is solved.
In an optional solution according to the present disclosure, the above step S122 may further include the following steps.
The first terminal device receives the migration instruction at a first instant, and forwards the migration instruction to an application kernel module.
The first terminal device receives a breakpoint instruction generated by the application kernel module in response to the migration instruction.
The first terminal device suspends the application in response to the breakpoint instruction and obtains the resource data of the first state of the application.
Referring to FIG. 5, the breakpoint instruction may be an instruction generated by the application kernel module in a background of the first terminal device in response to the migration request after the migration request is received by the first terminal device. Specifically, the application kernel module provides a port for generating the breakpoint instruction. After the migration request is received, the breakpoint instruction is generated by invoking a breakpoint function in a database LIB via the port, and the breakpoint instruction is returned to the first terminal device.
After the breakpoint instruction generated by the application kernel module is received by the first terminal device, the breakpoint instruction controls the first terminal device to suspend the currently running application. The suspending time is an instant when the migration request transmitted by the second terminal device is received by the first terminal device. That is, the background is informed that resource data to be synchronized to the second terminal device is the resource data during a period from starting the application by the first terminal device to an instant when the migration request is received. The resource data described herein at least includes: an operating environment, function names of various functions for running the application and names and content of various objects for running the application. The resource data ensures that scenarios and content on the second terminal device are exactly the same as those on the first terminal device after the resource data is loaded by the second terminal.
Still taking the case in which a user runs the Super Mario™ game on a terminal device as an example, the terminal device of the user suspends the running Super Mario™ game in response to a received breakpoint instruction from an application kernel, and further performs a step of obtaining resource data of operation of the Super Mario™ game during a period from an instant when the terminal device of the user starts the Super Mario™ game to an instant when the migration request is received by the terminal device of the user, such as scenario data of an n-th level of the Super Mario™ game (such as a water scenario or a land scenario) and features of a character controlled by the user (such as a size of the character, with or without an amulet, and with or without a function of firing bullets).
In another optional solution according to the present disclosure, after the step S126, the method for migrating application data between terminals may further perform the following steps.
In step S128, the application kernel module transmits a restart instruction to the second terminal device. The second terminal device obtains the restart instruction via a restart interface provided by the application kernel module.
Referring to FIG. 5, the restart instruction in the above step S128 according to the present disclosure may be an instruction provided by an application kernel module in a background of the second terminal device after the resource data is obtained by the second terminal device from the predetermined storage address. The restart instruction is used to control the second terminal device to start the application and load the obtained resource data to the currently running application. Specifically, the application kernel module provides a port for generating the restart instruction. After a restart instruction is received, the restart instruction is generated by invoking a restart function and a load function in a database LIB via the port.
Taking the case in which a user runs the Super Mario™ game on a terminal device as an example, a terminal device of a friend of a user, i.e., the second terminal device described above, receives a restart instruction transmitted by an application kernel module, via a restart interface provided by the application kernel module, after receiving data of the game at an instant when the migration request is received by the terminal device of the user, which is obtained by the terminal device of the user by operating the Super Mario™ game.
In step S130, the second terminal device starts the application in response to the restart instruction, such that the second terminal device and the first terminal device run the application in the first state synchronously.
Taking the case in which a user runs the Super Mario™ game on a terminal device as an example, a terminal device of a friend of a user, i.e., the second terminal device described above, may start the obtained Super Mario™ game in response to the restart instruction. It should be noted that, since resource data of operation of the Super Mario™ game during a period from an instant when the terminal device of the user starts the Super Mario™ game to an instant when the migration request is received, such as scenario data of an n-th level of the Super Mario™ game at an instant when the migration request is received (such as a water scenario or a land scenario) and features of a character controlled by the user (such as a size of the character, with or without an amulet, and with or without a function of firing bullets), is obtained by the second terminal device, the second terminal device and the first terminal device may run the Super Mario™ game synchronously from an instant when the migration request is received. That is, when the Super Mario™ game runs on the second terminal device, data such as the game process, scenarios and features of the game character, is exactly the same as that in the Super Mario™ game running on the first terminal device, thereby achieving game synchronization.
In another optional solution according to the present disclosure, the step S126 may further include the following steps.
The storage address of the resource data is transmitted to the second terminal device, where the storage address may be an address of a predetermined magnetic disk.
The second terminal device accesses the predetermined magnetic disk based on the storage address of the resource data, and obtains the stored resource data from the predetermined magnetic disk.
The address of the predetermined magnetic disk may be an address of a local disk of the first terminal device or an address of a database disk provided by a third-party server.
Taking the case in which a user runs the Super Mario™ game on a terminal device as an example, the second terminal device may be a terminal device of a friend of the user. It should be noted that the resource data obtained by the terminal device of the friend of the user from the predetermined magnetic disk may be data generated by the terminal device of the user, i.e., the first terminal device, in a stage of running the Super Mario™ game. That is, the resource data may be the data at an instant when the migration request is received by the terminal device of the user, such as scenario data of an n-th level of the Super Mario™ game at an instant when the migration request is received by the terminal device of the user (such as a water scenario or a land scenario) and features of a character controlled by the user (such as a size of the character, with or without an amulet, and with or without a function of firing bullets)
Preferably, in the above steps according to the present disclosure, the address of the predetermined magnetic disk may be transmitted to the second terminal device in at least one of the following transmission: a network communication, a Bluetooth® communication, a near field communication payment and a short message.
Taking the case in which a user runs the Super Mario™ game on a terminal device as an example, after resource data of the Super Mario™ game running on the terminal device of the user is stored to a predetermined magnetic disk, an address of the predetermined magnetic disk may be transmitted to a terminal device of a friend of the user in the following transmission: a network communication, a Bluetooth® communication, a near field communication payment and a short message. The terminal device of the friend of the user may obtain the resource data based on the address of the predetermined magnetic disk.
For example, in a case that a WIFI communication is adopted, the first terminal device may obtain an access address of the second terminal device by querying via WIFI, and transmit the address of the predetermined magnetic disk for storing the resource data to the second terminal device based on the access address of the second terminal device.
In conclusion, referring to FIG. 7, the application according to the fourth embodiment of the present disclosure may be a client application of a game such as Super Mario™ or Plane Wars. The first terminal device and the second terminal device each may be a mobile terminal such as a smart phone or a tablet computer. Functions realized by applying the solution in the present disclosure to three optional application scenarios are described in detail hereinafter.
In step A, a graphics application APP migration technology is applied to a first mobile terminal and a second mobile terminal. After a game client is installed to the first mobile terminal and the second mobile terminal, the graphics application APP migration is started by triggering a migration button on the first mobile terminal, i.e., the game is switched to the second mobile terminal (a mobile phone of a friend) in a process of running on the first mobile terminal, so as to allow the friend to continue to operate the running application.
In step B, after a migration request is received, the migration button on the first mobile terminal may be triggered. An application kernel module in a background of the first mobile terminal sends a suspending instruction, to suspend the game running on the first mobile terminal, and resource data of the game before the migration request is received is stored to a memory at a predetermined address.
In step C, the first mobile terminal transmits the predetermined address of the memory to the second mobile terminal in a communication mode.
In step D, the second mobile terminal obtains the resource data of the game on the first mobile terminal, which is before the migration request is received, based on the predetermined address of the memory.
In step E, after receiving a restart instruction, the second mobile terminal starts the local game application and loads the obtained resource data of the game to the currently running game application, thereby taking over the game from the first mobile terminal.
It can be seen from the above that the solution of steps A to E in the present disclosure may be applied to the following application scenarios, to achieve effective and efficient interaction between terminals.
In a first application, when an APP on the first mobile terminal reaches a stage, a user A may, with the above solution, instantly switch the APP to the second mobile terminal, such as a mobile phone, of a user B, to continue to operate the APP from the scenario on the first mobile terminal before switching, thereby taking over an APP on a terminal by the same APP on another terminal.
In a second application, the graphics application APP migration technology is applied to a social game. Specifically, when a user A of the first mobile terminal runs a game APP to a game level, a user B of the second terminal device, such as a mobile phone, may join the game application of the user A of the first mobile terminal instantly with the solution, so that the scenario of the game may continue from the scenario before the time of switching.
Specifically, in an optional solution, a game level of a user A may be taken over to continue the game.
According to another embodiment of the present disclosure, after the step S130, the method may further include: creating by the second terminal device a new object in the application, such that the second terminal device and the first terminal device run the application in the first state synchronously, where the created new object is controlled by the user of the second terminal device.
In an optional solution, the game can be shared between the two terminals. That is, the second terminal device can not only continue the game of the user B of the first mobile terminal but also feedback a game resource of a user B to the user A in the same manner, thereby playing the game by two game users together. In this way, the user A and the user B can play against each other in a game.
In a third application, the graphics application APP migration technology may also be applied to home devices. Specifically, in a case that a user A of the first mobile terminal experiences an application, such as a game, on a mobile phone, and then wants to switch to a PC machine in the house or a television in the house to continue the game, migration can be completed instantly with the above solution according to the present disclosure.
It should be noted that the above method embodiments are expressed as combinations of a series of actions for simplicity. Those skilled in the art should know that, the present disclosure is not limited to the described sequence of the actions, because some steps may be performed in other sequences or may be performed at the same time according to the present disclosure. Moreover, those skilled in the art should know that the embodiments described in the specification are all preferred embodiments, and actions and modules that are involved are not necessary to the present disclosure.
Based on the descriptions of the above implementations, those skilled in the art can understand that the method according to the above embodiment may be implemented by software and a general hardware platform which is necessary, or by hardware. In most situations, the former is a preferred implementation. Based on this understanding, the essence of the technical solutions or the part of the technical solutions which contributes to the conventional technology, of the present disclosure may be implemented in a form of software product, which is stored in a storage medium (such as a ROM/RAM, a magnetic disk or an optical disk) and includes several instructions to control a terminal device (which may be a mobile phone, a computer, a server or a network device, etc.) to execute the method according to the embodiments of the present disclosure.
Fifth Embodiment
A device embodiment for implementing the above method embodiment is further provided according to an embodiment of the present disclosure. The apparatus according to the embodiment of the present disclosure may operate in a computer terminal.
FIG. 14 is a schematic structural diagram of an apparatus for migrating application data between terminals according to the fifth embodiment of the present disclosure.
As shown in FIG. 14, the apparatus for migrating application data between terminals may include: a second obtaining module 110, a second storing module 112 and a migrating module 114.
The second obtaining module 110 is configured to obtain resource data of a first state of an application running on a first terminal device after a migration request transmitted by a second terminal device is received and confirmed by the first terminal device, in the process of running the application on the first terminal device. The first state is a state of the application during a period from startup to an instant when the migration instruction is received. The second storing module 112 is configured to store the resource data at a predetermined storage address. The migrating module 114 is configured to transmit the storage address of the resource data to the second terminal device after the migration request is confirmed by the first terminal device, such that the second terminal device obtains the resource data of the application by accessing the storage address and loads the resource data.
It should be noted that the second obtaining module 110, the second storing module 112 and the migrating module 114 correspond to the steps S120 to S126 in the fourth embodiment. Examples and application scenarios of the modules are the same as those of the corresponding steps, but are not limited to the content disclosed in the fourth embodiment. It should be noted that the modules as a part of the apparatus may operate in the computer terminal 10 according to the fourth embodiment, and may be implemented by software or by hardware.
Preferably, as shown in FIG. 15, the second obtaining module 110 may further include: a fourth transmitting module 1101.
The fourth transmitting module 1101 is configured to transmit a breakpoint instruction generated by an application kernel module to the first terminal device in a case that it is detected that the migration request is confirmed by the first terminal device. The first terminal device suspends the application in response to the breakpoint instruction and performs the step of obtaining the resource data of operation of the application during a period from an instant when the first terminal device starts the application to the first instant.
It should be noted that the fourth transmitting module 1101 corresponds to specific steps in the fourth embodiment. Examples and application scenarios of the module are the same as those of the corresponding steps, but are not limited to the content disclosed in the fourth embodiment. It should be noted that the module as a part of the apparatus may operate in the computer terminal 10 according to the fourth embodiment, and may be implemented by software or by hardware.
Preferably, as shown in FIG. 16, the apparatus for migrating application data between terminals may further include: a fifth transmitting module 118 and a loading module 120.
Specifically, the fifth transmitting module 118 is configured to transmit a restart instruction to the second terminal device. The second terminal device obtains the restart instruction via a restart interface provided by the application kernel module.
The loading module 120 is configured to load the resource data to the application in response to the restart instruction, such that the second terminal device and the first terminal device run the application in the first state synchronously.
It should be noted that the fifth transmitting module 118 and the loading module 120 correspond to the steps S128 to S130 in the fourth embodiment. Examples and application scenarios of the modules are the same as those of the corresponding steps, but are not limited to the content disclosed in the fourth embodiment. It should be noted that the modules as a part of the apparatus may operate in the computer terminal 10 according to the fourth embodiment, and may be implemented by software or by hardware.
Preferably, as shown in FIG. 17, the migrating module 114 in the apparatus for migrating application data between terminals may further include: a sixth transmitting module 122 and a second access module 124.
The sixth transmitting module 122 is configured to transmit the predetermined storage address to the second terminal device. The second access module 124 is configured to access a predetermined magnetic disk based on the predetermined storage address, and obtain the stored resource data from the predetermined magnetic disk.
It should be noted that the sixth transmitting module 122 and the second access module 124 correspond to specific steps in the fourth embodiment. Examples and application scenarios of the modules are the same as those of the corresponding steps, but are not limited to the content disclosed in the fourth embodiment. It should be noted that the modules as a part of the apparatus may operate in the computer terminal 10 according to the fourth embodiment, and may be implemented by software or by hardware.
Preferably, in the solution according to the fifth embodiment of the present disclosure, the address of the predetermined magnetic disk may be transmitted to the second terminal device in one or more of the following transmission: a network communication, a Bluetooth® communication, a near field communication payment and a short message.
It can be seen from the above that the solution realized by the above device embodiments of the present disclosure may be applied to the following application scenarios, which can achieve effective and efficient interaction between terminals.
In a first application, when an APP on a first mobile terminal reaches a stage, a user A may, with the above solution, instantly switch the APP to the second mobile terminal, such as a mobile phone, of a user B, to continue to operate the scenario of the APP from the scenario on the first mobile terminal before switching, thereby taking over an APP on a terminal by the same APP on another terminal.
In a second application, a graphics application APP migration technology is applied to a social game. Specifically, when a user A of a first mobile terminal runs a game APP to a game level, a user B of a second terminal device, such as a mobile phone, may join the game application of the user A of the first mobile terminal instantly with the solution, so that the scenario of the game may continue from the scenario before the time of switching.
Specifically, in an optional solution, a game level of a user A may be taken over to continue the game.
According to another embodiment of the present disclosure, after loading the resource data, the second terminal device creates a new object in the application, such that the second terminal device and the first terminal device run the application in the first state synchronously. The created new object is controlled by the user of the second terminal device.
In an optional solution, the game can be shared between the two terminals. That is, the second terminal device can not only continue the game of a user B of the first mobile terminal but also feedback a game resource of a user B to the user A in the same manner, thereby playing the game by two game users together. In this way, the user A and the user B can play against each other in a game.
In a third application, the graphics application APP migration technology may also be applied to home devices. Specifically, in a case that a user A of a first mobile terminal experiences an application, such as a game, on a mobile phone, and then wants to switch to a PC machine in the house or a television in the house to continue the game, migration can be completed instantly with the above solution according to the present disclosure.
Sixth Embodiment
A system embodiment for implementing the above device embodiment is further provided according to an embodiment of the present disclosure. The device according to the embodiment of the present disclosure may operate in a computer terminal.
As shown in FIG. 12, the system for migrating application data between terminals according to the present disclosure may include a first terminal device 90 and a second terminal device 91.
The first terminal device 90 is configured to run an application, and obtain resource data of a first state of the application running on the first terminal device, where the first state is a state of the application during a period from startup to an instant when a migration instruction is received; store the resource data at a predetermined storage address, and transmit the storage address of the resource data to a second terminal device. The second terminal device 91 is configured with the application and has a communication relation with the first terminal device, and is configured to obtain the resource data by accessing the storage address of the resource data and load the resource data.
It can be seen from the above that in the solution according to the sixth embodiment of the present disclosure, the first terminal device is configured to run the application. The second terminal device has the communication relation with the first terminal device and is configured to transmit a migration request to the first terminal device and load the resource data on the first terminal device to its local application, in the process of running the application on the first terminal device. After the migration request is confirmed by the first terminal device, the resource data of operation of the application during a period from starting the application to an instant when the migration request is received is stored at a predetermined path. After the migration request is confirmed by the first terminal device, the storage address of the resource data is transmitted to the second terminal device, such that the second terminal device obtains the resource data. With the above solution, resource data of an application running on a terminal device of a user may be transmitted to a terminal device of a friend of the user, and the terminal device of the friend of the user may run the application based on the above resource data. In this way, the application is shared, and a technical problem in the conventional technology that the efficiency of collaboration between terminal devices is poor when sharing application resources between the terminal devices is solved.
It should be noted that the application in the system embodiment is not limited to a game-type application such as Super Mario™ or Plane Wars. The first terminal device or the second terminal device is not limited to an intelligent terminal device such as a smart phone or a tablet computer. In the process of running the application on the first terminal device, the second terminal device may transmit the migration request to the first terminal device, such that the first terminal device and the second terminal device have the migration relation.
Furthermore, it should be noted that after receiving the migration request transmitted by the second terminal device, the first terminal device in the system embodiment may obtain the resource data of operation of the application during a period from starting the application by the first terminal device to an instant when the migration request is received in response to the migration request. The resource data may be scenario data of the application during a period from startup to an instant when the migration request is received by the first terminal.
Furthermore, it should be noted that after obtaining the resource data of the application, the second terminal device may load the resource data to its local application. That is, the second terminal runs the same application as the first terminal device.
In an optional solution, before the obtaining the resource data of operation of the application during a period from an instant when the first terminal device starts the application to an instant when the migration request is received is performed by the system, the first terminal device may receive a breakpoint instruction generated by an application kernel module in a case that it is detected that the migration request is confirmed by the first terminal device. The terminal device suspends the application in response to the breakpoint instruction and performs the step of obtaining the resource data of operation of the application during a period from an instant when the first terminal device starts the application to an instant when the migration request is received.
It should be noted that the breakpoint instruction in the system embodiment of the present disclosure may be an instruction generated by the application kernel module in a background of the first terminal device in response to the migration request after the migration request is received by the first terminal device. Specifically, the application kernel module provides a port for generating the breakpoint instruction. After the migration request is received, the breakpoint instruction is generated by invoking a breakpoint function in a database LIB via the port, and the breakpoint instruction is returned to the first terminal device.
Furthermore, it should be noted that in the system embodiment of the present disclosure, after the breakpoint instruction generated by the application kernel module is received by the first terminal device, the breakpoint instruction controls the first terminal device to suspend the currently running application. The suspending time is an instant when the migration request transmitted by the second terminal device is received by the first terminal device. That is, the background is informed that resource data to be synchronized to the second terminal device is the resource data on the first terminal device during a period from starting the application to an instant when the migration request is received. The resource data described herein at least includes: an operating environment, function names of various functions for running the application and names and content of various objects for running the application. The resource data ensures that scenarios and content on the second terminal device are exactly the same as those on the first terminal device after the resource data is loaded by the second terminal.
In an optional solution, in the system embodiment, after the resource data is obtained, a restart instruction may be transmitted to the second terminal device via the application kernel module. The second terminal device obtains the restart instruction via a restart interface provided by the application kernel module. Then, the second terminal device starts the application which is loaded with the resource data, in response to the restart instruction, such that the second terminal device and the first terminal device run the application synchronously from an instant when the migration request is received.
It should be noted that in the system embodiment of the present disclosure, the restart instruction may be an instruction provided by an application kernel module in a background of the second terminal device after the resource data is obtained by the second terminal device from the predetermined magnetic disk. The restart instruction is used to control the second terminal device to start the application and load the obtained resource data to the currently running application. Specifically, the application kernel module provides a port for generating the restart instruction. After a restart instruction is received, the restart instruction is generated by invoking a restart function and a load function in a database LIB via the port.
In an optional solution, after the second terminal device having the migration relation with the first terminal device is determined, the system may transmit the address of the predetermined magnetic disk to the second terminal device. Then the second terminal device accesses the predetermined magnetic disk based on the address of the predetermined magnetic disk, and obtains the stored resource data from the predetermined magnetic disk.
Preferably, the system may transmit the address of the predetermined magnetic disk to the second terminal device in at least one of the following transmission: a network communication, a Bluetooth® communication, a near field communication payment and a short message. For example, in a case that a WIFI communication is adopted, the first terminal device may obtain an access address of the second terminal device by querying via WIFI, and transmit the address of the predetermined magnetic disk for storing the resource data to the second terminal device based on the access address of the second terminal device.
Seventh Embodiment
A storage medium is further provided according to an embodiment of the present disclosure. Optionally, in the embodiment, the storage medium may be configured to store program codes for implementing the method for migrating application data between terminals according to the first embodiment.
Optionally, in the embodiment, the storage medium may be located in any server of a group of computer terminals in a computer network.
Optionally, in the embodiment, the storage medium is configured to store program codes for performing the following steps S20 to S27.
In step S20, an application is run on a first terminal device.
In step S22, a migration instruction is received by the first terminal device, and resource data of a first state of the application running on the first terminal device is obtained. The first state is a state of the application during a period from startup to an instant when the migration instruction is received.
In step S24, the resource data is stored at a predetermined storage address.
In step S26, a second terminal device is determined as a destination for migration of the resource data, where the second terminal device is configured with the application.
In step S17, the storage address of the resource data is transmitted to the second terminal device, where the second terminal device obtains the resource data by accessing the storage address and loads the resource data.
Optionally, the storage medium is further configured to store program codes for performing the following steps: the first terminal device receives the migration instruction at the first instant, and forwards the migration instruction to an application kernel module; the first terminal device receives a breakpoint instruction generated by the application kernel module in response to the migration instruction; and the first terminal device suspends the application in response to the breakpoint instruction and obtains the resource data of the first state of the application.
Optionally, the storage medium is further configured to store program codes for performing the following steps: the application kernel module transmits a restart instruction to the second terminal device via a restart interface, where the restart interface is provided by the application kernel module; and the second terminal device starts the application in response to the restart instruction, such that the second terminal device and the first terminal device run the application in the first state synchronously.
Optionally, the storage medium is further configured to store program codes for performing the following steps: the predetermined storage address of the resource data is transmitted to the second terminal device; and the second terminal device accesses a predetermined magnetic disk based on the address of the predetermined magnetic disk, and obtains the stored resource data from the predetermined magnetic disk.
Optionally, the storage medium is further configured to store program codes for performing the following steps: the address of the predetermined magnetic disk is transmitted to the second terminal device in one or more of the following transmission: a network communication, a Bluetooth® communication, a near field communication payment and a short message.
Optionally, in the embodiment, the storage medium may include but not limited to a medium that can store program codes, such as a USB flash disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a mobile hard disk, a magnetic disk or an optical disk.
Optionally, for specific examples of the embodiment, reference can be made to examples described in the first embodiment, the second embodiment and the third embodiment, which are not described herein.
Eighth Embodiment
A storage medium is further provided according to an embodiment of the present disclosure. Optionally, in the embodiment, the storage medium may be configured to store program codes for implementing the method for migrating application data between terminals according to the first embodiment.
In an embodiment, the storage medium may be located in any server of a group of computer terminals in a computer network.
In an embodiment, the storage medium is configured to store program codes for performing the following steps S120 to S128.
In step S120, in the process of running an application on a first terminal device, a second terminal device transmits a migration request to the first terminal device to establish a migration relation between the first terminal device and the second terminal device.
In step S122, after confirming the migration request, the first terminal device obtains resource data of a first state of the application running on the first terminal device, where the first state is a state of the application during a period from startup to an instant when a migration instruction is received.
In step S124, the first terminal device stores the resource data at a predetermined storage address.
In step S126, after confirming the migration request, the first terminal device transmits the storage address of the resource data to the second terminal device.
In step S128, the second terminal device obtains the resource data of the application by accessing the storage address and loads the resource data.
In an embodiment, the storage medium is further configured to store program codes for performing the following steps: the first terminal device receives the migration instruction at a first instant, and forwards the migration instruction to an application kernel module; the first terminal device receives a breakpoint instruction generated by the application kernel module in response to the migration instruction; and the first terminal device suspends the application in response to the breakpoint instruction and obtains the resource data of the first state of the application.
In an embodiment, the storage medium is further configured to store program codes for performing the following steps: the application kernel module transmits a restart instruction to the second terminal device, where the second terminal device obtains the restart instruction via a restart interface provided by the application kernel module; and the second terminal device starts the application in response to the restart instruction, such that the second terminal device and the first terminal device run the application in the first state synchronously.
In an embodiment, the storage medium is further configured to store program codes for performing the steps of transmitting the address of the predetermined magnetic disk to the second terminal device in one or more of the following transmission: a network communication, a Bluetooth® communication, a near field communication payment and a short message.
In the embodiment, the storage medium may include but not limited to a medium that can store program codes, such as a USB flash disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a mobile hard disk, a magnetic disk or an optical disk.
Optionally, for specific examples of the embodiment, reference can be made to examples described in the fourth embodiment, the fifth embodiment and the seventh embodiment, which are not described herein.
The sequence numbers of the above embodiments of the present disclosure are used for description only, and do not represent quality of the embodiments.
If the integrated unit in the above embodiments is implemented in software functional unit and is sold or used as a separate product, it may be stored in a computer readable storage medium. Based on this understanding, the essence of the technical solutions, the part of the technical solutions which contributes to the conventional technology, or, all or part of the technical solutions of the present disclosure may be implemented in a form of software product, which is stored in a storage medium and includes several instructions to control one or more computer devices (which may be personal computers, servers or network devices, etc.) to execute all or some of the steps in the methods according to the embodiments of the present disclosure.
In the above embodiments, descriptions of various embodiments have their own focuses. Reference can be made to related descriptions in other embodiments for a section which is not described in detail in an embodiment.
It should be understood that the disclosed client apparatus according to some embodiments of the present disclosure may be implemented in other ways. The device embodiments described above are illustrative only. For example, the units are divided merely in logical function, which may be divided by another way in actual implementation. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not performed. In addition, the disclosed or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, units or modules, which may be implemented in electrical or other forms.
The units described as separated components may or may not be physically separated. A component displayed as a unit may or may not be a physical unit, which may be located in one position or distributed on multiple network units. A part or all of the components may be selected to achieve the object of solutions in the embodiments based on practical requirements.
In addition, the functional units in the embodiments of the present disclosure may be integrated into a process unit or physically separated, or two or more units may be integrated into a unit. The integrated unit described above may be implemented in hardware or in software functional unit.
The above are only preferred embodiments of the present disclosure. It should be noted that, for those skilled in the art, changes and modifications can be made without departing from the principle of the present disclosure, and the changes and modifications should be considered within the protection scope of the present disclosure.

Claims (17)

The invention claimed is:
1. A method for migrating application data between terminals, comprising:
running a game application on a first terminal device;
receiving, by the first terminal device, a migration instruction;
obtaining, by the first terminal device, resource data of a first state of the game application running on the first terminal device in response to the migration instruction, wherein the first state comprises a state of the game application during a period from startup of the game application to an instant when the migration instruction is received;
storing the resource data at a predetermined storage address;
determining a second terminal device as a destination for migration of the resource data, wherein the second terminal device is configured with the game application; and
transmitting an instruction to the second terminal device, the instruction configured to cause the second terminal device to:
restart the game application on the second terminal device,
access the resource data based on the storage address,
load the resource data to recover the first state of the game application, and
create a new object in the game application, wherein the first terminal device and the second terminal device execute the game application starting at the first state synchronously, wherein the first terminal device controls movement of an original object to play the game application with the first terminal device and the second terminal device controls movement of the created new object to play the game application with the second terminal device.
2. The method according to claim 1, wherein obtaining resource data of the first state of the game application running on the first terminal device further comprises:
receiving, by the first terminal device, the migration instruction at a first instant, and forwarding, by the first terminal device, the migration instruction to an application kernel;
receiving, by the first terminal device, a breakpoint instruction generated by the application kernel in response to the migration instruction;
suspending, by the first terminal device, the game application in response to the breakpoint instruction; and
obtaining, by the first terminal device, the resource data of the first state of the game application.
3. The method according to claim 1, wherein the resource data comprises: an operating environment of the game application, a function name of a function for running the game application, and a name and content of an object for running the game application.
4. The method according to claim 1, wherein the migration instruction is transmitted by the second terminal device to the first terminal device.
5. The method according to claim 1, wherein the storage address of the resource data is transmitted to the second terminal device in one or more of the following: a network communication, a Bluetooth communication, a near field communication and a short message.
6. The method according to claim 3, wherein after the second terminal device obtains the resource data by accessing the storage address, the method further comprises:
transmitting, by an application kernel, the instruction to the second terminal device via a restart interface, wherein the restart interface is provided by the application kernel; and
starting, by the second terminal device, the game application in response to the instruction and loading, by the second terminal device, the resource data, such that the second terminal device and the first terminal device run the game application in the first state synchronously.
7. An apparatus for migrating application data between terminals, applied to a first terminal device, comprising:
a processor and
a memory accessible to the processor, the processor configured to:
run a game application on the first terminal device;
receive a migration instruction;
obtain resource data of a first state of the game application running on the first terminal device in response to the migration instruction, wherein the first state comprises a state of the game application during a period from startup of the game application to an instant when the migration instruction is received;
store the resource data at a predetermined storage address;
determine a second terminal device as a destination for migration of the resource data, wherein the second terminal device is configured with the game application; and
transmit an instruction to the second terminal device, the instruction configured to cause the second terminal device to:
restart the game application on the second terminal device,
access the resource data from the memory based on the storage address,
load the resource data to recover the first state of the game application, and
create a new object in the game application, wherein the first terminal device and the second terminal device execute the game application starting at the first state synchronously, wherein the first terminal device controls movement of an original object to play the game application with the first terminal device and the second terminal device controls movement of the created new object to play the game application with the second terminal device.
8. The apparatus according to claim 7, wherein the processor is further configured to:
receive the migration instruction at a first instant and forward the migration instruction to an application kernel;
receive by the first terminal device a breakpoint instruction generated by the application kernel in response to the migration instruction; and
suspend the game application in response to the breakpoint instruction and obtain the resource data of the first state of the game application.
9. The apparatus according to claim 7, wherein the resource data comprises: an operating environment of the game application, a function name of a function for running the game application, and a name and content of an object for running the game application.
10. The apparatus according to claim 7, wherein the migration instruction is transmitted by the second terminal device to the first terminal device.
11. The apparatus according to claim 7, wherein the storage address of the resource data is transmitted to the second terminal device in one or more of the following: a network communication, a Bluetooth communication, a near field communication and a short message.
12. A non-transitory computer storage medium comprising:
a plurality of computer executable instructions executable by a processor to:
cause execution of a game application on a first terminal device;
receive a migration instruction;
obtain resource data of a first state of the game application running on the first terminal device in response to the migration instruction, wherein the first state is a state of the game application during a period from startup of the (lame application to an instant when the migration instruction is received;
store the resource data at a predetermined storage address;
determine a second terminal device as a destination for migration of the resource data, wherein the second terminal device is configured with the game application; and
transmit an instruction to the second terminal device, the instruction configured to cause the second terminal device to:
restart the game application on the second terminal device,
access the resource data based on the predetermined storage address,
load the resource data to recover the first state of the game application, and
create a new object in the game application, wherein the first terminal device and the second terminal device execute the game application starting at the first state synchronously, wherein the first terminal device controls movement of an original object for playing the game application on the first terminal device and the second terminal device controls movement of the created new object for playing the game application on the second terminal device.
13. The non-transitory computer storage medium according to claim 12, wherein the computer executable instructions are further executable by the processor to:
receive the migration instruction at a first instant;
forward the migration instruction to an application kernel;
receive a breakpoint instruction generated by the application kernel in response to the migration instruction; and
suspend the game application in response to the breakpoint instruction, and obtaining, by the first terminal device, the resource data of the first state of the game application.
14. The non-transitory computer storage medium according to claim 12, wherein the resource data comprises: an operating environment of the game application, a function name of a function for running the game application, and a name and content of an object for running the game application.
15. The non-transitory computer storage medium according to claim 12, wherein the migration instruction is received from the second terminal device.
16. The non-transitory computer storage medium according to claim 12, wherein the storage address of the resource data is transmitted to the second terminal device in one or more of the following: a network communication, a Bluetooth communication, a near field communication and a short message.
17. The non-transitory computer storage medium according to claim 14, wherein the computer executable instructions are further executable by the processor to:
transmit, by an application kernel, after the second terminal device obtains the resource data by accessing the storage address, the instruction to the second terminal device via a restart interface, wherein the restart interface is provided by the application kernel.
US15/498,271 2014-10-31 2017-04-26 Method, apparatus and non-transitory computer storage medium for migrating application data between terminals Active 2036-06-12 US10587728B2 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
CN201410608206 2014-10-31
CN201410608206.2 2014-10-31
CN201410608206.2A CN105630587B (en) 2014-10-31 2014-10-31 Method, device and system for migrating application program data between terminals
PCT/CN2015/093325 WO2016066130A1 (en) 2014-10-31 2015-10-30 Method, apparatus and system for migrating application data between terminals

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2015/093325 Continuation WO2016066130A1 (en) 2014-10-31 2015-10-30 Method, apparatus and system for migrating application data between terminals

Publications (2)

Publication Number Publication Date
US20170230481A1 US20170230481A1 (en) 2017-08-10
US10587728B2 true US10587728B2 (en) 2020-03-10

Family

ID=55856633

Family Applications (1)

Application Number Title Priority Date Filing Date
US15/498,271 Active 2036-06-12 US10587728B2 (en) 2014-10-31 2017-04-26 Method, apparatus and non-transitory computer storage medium for migrating application data between terminals

Country Status (5)

Country Link
US (1) US10587728B2 (en)
JP (1) JP6417041B2 (en)
KR (1) KR101939928B1 (en)
CN (1) CN105630587B (en)
WO (1) WO2016066130A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10742694B2 (en) * 2016-09-14 2020-08-11 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Method for migrating data and terminal

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106101132B (en) * 2016-07-08 2019-04-26 腾讯科技(深圳)有限公司 One kind is formed a team system, method and device
CN106484779B (en) * 2016-09-14 2020-05-05 Oppo广东移动通信有限公司 File operation method and device
CN106775815B (en) * 2016-11-16 2020-02-18 Oppo广东移动通信有限公司 Application data migration method and device
CN106775908A (en) * 2016-11-18 2017-05-31 广东欧珀移动通信有限公司 A kind of method and device of application data migration
CN108108173A (en) * 2016-11-23 2018-06-01 中兴通讯股份有限公司 A kind of information processing method and device
CN106992882B (en) * 2017-03-24 2020-06-02 北京小米移动软件有限公司 Router file migration method and device
CN108513008A (en) * 2018-03-28 2018-09-07 努比亚技术有限公司 control right transfer method, mobile terminal and computer readable storage medium
CN109144383A (en) * 2018-07-17 2019-01-04 努比亚技术有限公司 A kind of application control method, terminal and computer readable storage medium
CN109743609B (en) * 2018-12-28 2021-03-30 深圳Tcl新技术有限公司 Control method, system, terminal and storage medium for television equipment display
CN109725809B (en) * 2018-12-29 2022-05-13 咪咕互动娱乐有限公司 Information processing method, server, terminal and computer storage medium
US10776158B2 (en) * 2019-01-31 2020-09-15 Lockheed Martin Corporation Management of application deployment across multiple provisioning layers
CN112691363A (en) * 2019-10-22 2021-04-23 上海华为技术有限公司 Cross-terminal switching method and related device for cloud games
CN112748992B (en) * 2019-10-31 2024-03-01 中国电信股份有限公司 Electronic device, method and storage medium for migrating tasks
CN111031108B (en) * 2019-11-29 2021-09-03 维沃移动通信有限公司 Synchronization method and electronic equipment
CN112650730B (en) * 2020-12-18 2022-01-04 完美世界(重庆)互动科技有限公司 Game data migration method and device, storage medium and computer equipment
CN113190162A (en) * 2021-04-28 2021-07-30 维沃移动通信有限公司 Display method, display device, electronic equipment and readable storage medium
CN115278609A (en) * 2021-04-30 2022-11-01 展讯通信(上海)有限公司 Method for establishing shared service and related product
CN113504869A (en) * 2021-06-28 2021-10-15 惠州Tcl云创科技有限公司 Data migration method and system
CN116074942A (en) 2021-10-29 2023-05-05 北京小米移动软件有限公司 Application synchronization method and device, electronic equipment and storage medium
CN114237840A (en) * 2021-11-29 2022-03-25 Oppo广东移动通信有限公司 Resource interaction method, device, terminal and storage medium
CN115080068A (en) * 2022-05-24 2022-09-20 北京快乐茄信息技术有限公司 Resource file transmission method, device, equipment and storage medium
CN117956062A (en) * 2022-10-31 2024-04-30 Oppo广东移动通信有限公司 Service circulation method, device and storage medium
CN117076428B (en) * 2023-09-14 2024-08-06 湖南大学 Information transfer migration method and full-scene intelligent living system

Citations (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05233492A (en) 1991-12-27 1993-09-10 Sharp Corp Information processor
JPH06266663A (en) 1993-03-17 1994-09-22 Sharp Corp Information processor
JP2005332160A (en) 2004-05-19 2005-12-02 Dowango:Kk Portable terminal, capture processing program, server device, capture processing system and capture processing method
US20070124775A1 (en) * 2005-09-19 2007-05-31 Dacosta Behram Portable video programs
US20070136392A1 (en) * 2005-12-12 2007-06-14 Electronics & Telecommunications Research Institute Apparatus and method for managing application context
KR20070062395A (en) 2005-12-12 2007-06-15 한국전자통신연구원 Device and method for management of application context
WO2009011040A1 (en) 2007-07-17 2009-01-22 Gmo Mobile, Inc. Mobile trading system, mobile trading method, and card application
US20110105029A1 (en) 2009-11-04 2011-05-05 Fujitsu Limited Communication terminal apparatus, software acquiring method, and recording medium
CN102298537A (en) 2011-06-10 2011-12-28 宇龙计算机通信科技(深圳)有限公司 Moving method and system of application programs
US20120208592A1 (en) * 2010-11-04 2012-08-16 Davis Bruce L Smartphone-Based Methods and Systems
US8359290B1 (en) 2010-03-29 2013-01-22 Google Inc. Smart sync—refreshing application state based on user migration patterns
CN103092702A (en) 2011-11-01 2013-05-08 宏碁股份有限公司 Data synchronization method and data synchronization system applying same
US20130124675A1 (en) 2011-11-10 2013-05-16 Sang-dok MO Apparatus and method for software migration in mobile environment
CN103793270A (en) 2012-10-26 2014-05-14 百度在线网络技术(北京)有限公司 Terminal application migrating method, device and terminal
CN103825917A (en) 2012-11-16 2014-05-28 中国移动通信集团公司 Data synchronization method, data synchronization system, data synchronization server and terminal
US20140179440A1 (en) * 2012-12-26 2014-06-26 David Perry Systems and Methods for Managing Video Game Titles and User Play Metrics for Video Game Titles Executing on a Game Cloud System
US20150111643A1 (en) * 2012-05-23 2015-04-23 King.Com Limited Systems and methods for interactive gameplay

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2025160A1 (en) * 1989-09-28 1991-03-29 John W. White Portable and dynamic distributed applications architecture
KR20050031168A (en) * 2003-09-29 2005-04-06 에스케이 텔레콤주식회사 Method and system for upgrading software of mobile station automatically in mobile communication network
CN103390122B (en) * 2012-05-09 2017-05-03 中国移动通信集团公司 Application program transmitting method, application program operating method, sever and terminal
KR20140045222A (en) * 2012-10-08 2014-04-16 엘지전자 주식회사 Mobile terminal and electronic communication method using the same
CN102981909B (en) * 2012-10-22 2015-11-25 百度在线网络技术(北京)有限公司 The method of the application program migration of control terminal, device and terminal
KR20140111434A (en) * 2013-03-11 2014-09-19 모바일그룹 주식회사 System and method for data transmission
CN103327117B (en) * 2013-07-05 2017-02-08 百度在线网络技术(北京)有限公司 Cross-system running method and device for application programs

Patent Citations (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05233492A (en) 1991-12-27 1993-09-10 Sharp Corp Information processor
JPH06266663A (en) 1993-03-17 1994-09-22 Sharp Corp Information processor
JP2005332160A (en) 2004-05-19 2005-12-02 Dowango:Kk Portable terminal, capture processing program, server device, capture processing system and capture processing method
US20070124775A1 (en) * 2005-09-19 2007-05-31 Dacosta Behram Portable video programs
US20070136392A1 (en) * 2005-12-12 2007-06-14 Electronics & Telecommunications Research Institute Apparatus and method for managing application context
KR20070062395A (en) 2005-12-12 2007-06-15 한국전자통신연구원 Device and method for management of application context
USRE45729E1 (en) 2005-12-12 2015-10-06 Electronics And Telecommunications Research Institute Apparatus and method for managing application context
US7664786B2 (en) 2005-12-12 2010-02-16 Electronics And Telecommunications Research Institute Apparatus and method for managing application context
WO2009011040A1 (en) 2007-07-17 2009-01-22 Gmo Mobile, Inc. Mobile trading system, mobile trading method, and card application
JP2011118884A (en) 2009-11-04 2011-06-16 Fujitsu Ltd Communication terminal apparatus, software acquiring method, and software acquiring program
US20110105029A1 (en) 2009-11-04 2011-05-05 Fujitsu Limited Communication terminal apparatus, software acquiring method, and recording medium
US8359290B1 (en) 2010-03-29 2013-01-22 Google Inc. Smart sync—refreshing application state based on user migration patterns
US20120208592A1 (en) * 2010-11-04 2012-08-16 Davis Bruce L Smartphone-Based Methods and Systems
CN102298537A (en) 2011-06-10 2011-12-28 宇龙计算机通信科技(深圳)有限公司 Moving method and system of application programs
CN103092702A (en) 2011-11-01 2013-05-08 宏碁股份有限公司 Data synchronization method and data synchronization system applying same
US20130124675A1 (en) 2011-11-10 2013-05-16 Sang-dok MO Apparatus and method for software migration in mobile environment
US20150111643A1 (en) * 2012-05-23 2015-04-23 King.Com Limited Systems and methods for interactive gameplay
CN103793270A (en) 2012-10-26 2014-05-14 百度在线网络技术(北京)有限公司 Terminal application migrating method, device and terminal
CN103825917A (en) 2012-11-16 2014-05-28 中国移动通信集团公司 Data synchronization method, data synchronization system, data synchronization server and terminal
US20140179440A1 (en) * 2012-12-26 2014-06-26 David Perry Systems and Methods for Managing Video Game Titles and User Play Metrics for Video Game Titles Executing on a Game Cloud System

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
Chinese Office Action with concise English Translation, issued in Chinese Application No. 201410608206.2, dated Aug. 29, 2019, pp. 1-12.
International Search Report and Written Opinion of the ISA for PCT/CN2015/093325, Haidian District, Beijing, dated Jan. 27, 2016.
Office Action regarding Japanese Patent Application No. 2017-522485, dated May 28, 2018. Translation provided by Unitalen Attorneys at Law.
Office Action regarding South Korean Patent Application No. 10-2017-7014607, dated Mar. 15, 2018. Translation provided by Unitalen Attorneys at Law.

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10742694B2 (en) * 2016-09-14 2020-08-11 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Method for migrating data and terminal

Also Published As

Publication number Publication date
KR101939928B1 (en) 2019-01-17
CN105630587A (en) 2016-06-01
KR20170075782A (en) 2017-07-03
WO2016066130A1 (en) 2016-05-06
CN105630587B (en) 2024-04-12
JP2017535859A (en) 2017-11-30
JP6417041B2 (en) 2018-10-31
US20170230481A1 (en) 2017-08-10

Similar Documents

Publication Publication Date Title
US10587728B2 (en) Method, apparatus and non-transitory computer storage medium for migrating application data between terminals
US20180367587A1 (en) Network application display control method, and real-time update method and apparatus during display
CN109525624B (en) Container login method and device and storage medium
EP3425566B1 (en) Electronic device and method of registering personal cloud apparatus in user portal server thereof
US20200007612A1 (en) Resource sharing method, device and system
JP6376638B2 (en) Server computer and game program related to game
US9063770B2 (en) System and method for mobile platform virtualization
KR20140123076A (en) A device control method and apparatus
US20170171571A1 (en) Push Video Documentation Methods and Appliances
US9838460B2 (en) Tool for sharing applications across client devices
KR20220065856A (en) Information processing methods, systems, devices, devices and storage media
WO2018063163A1 (en) Selective simulation of virtualized hardware inputs
KR101871876B1 (en) Chat information transmission method and apparatus, and chat information push method and server
JP6974458B2 (en) Game server and method for generating context-aware game information
CN110753091A (en) Cloud platform management method and device
US20140228129A1 (en) Server data update method and system
CN102509256B (en) Batch adding and screenshot method and device for Flash game
CN112328492A (en) Interaction control method and device between anchor and electronic equipment
CN103520922A (en) Method, system and device for conducting game control through mobile internet
CN113434255A (en) Virtual equipment creating method and device
CN111615171A (en) Access method and device of wireless local area network
CN113709406B (en) Software collaboration method, system and storage medium for Hongmon conference all-in-one machine
JP2019003632A (en) Method and system for utilizing inter-equipment communication technology when transmitting file by messenger
US20170195864A1 (en) Emergency Communication Method and Electronic Device
CN106790329B (en) Multi-terminal interaction method, device and server based on same webpage application

Legal Events

Date Code Title Description
AS Assignment

Owner name: TENCENT TECHNOLOGY (SHENZHEN) COMPANY LIMITED, CHINA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:WU, JIANGHONG;REEL/FRAME:042156/0395

Effective date: 20160424

Owner name: TENCENT TECHNOLOGY (SHENZHEN) COMPANY LIMITED, CHI

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:WU, JIANGHONG;REEL/FRAME:042156/0395

Effective date: 20160424

AS Assignment

Owner name: TENCENT TECHNOLOGY (SHENZHEN) COMPANY LIMITED, CHINA

Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE EXECUTION DATE PREVIOUSLY RECORDED AT REEL: 042156 FRAME: 0395. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT;ASSIGNOR:WU, JIANGHONG;REEL/FRAME:042399/0513

Effective date: 20170424

Owner name: TENCENT TECHNOLOGY (SHENZHEN) COMPANY LIMITED, CHI

Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE EXECUTION DATE PREVIOUSLY RECORDED AT REEL: 042156 FRAME: 0395. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT;ASSIGNOR:WU, JIANGHONG;REEL/FRAME:042399/0513

Effective date: 20170424

STPP Information on status: patent application and granting procedure in general

Free format text: NON FINAL ACTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER

STPP Information on status: patent application and granting procedure in general

Free format text: FINAL REJECTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION

STPP Information on status: patent application and granting procedure in general

Free format text: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS

STPP Information on status: patent application and granting procedure in general

Free format text: AWAITING TC RESP., ISSUE FEE NOT PAID

STPP Information on status: patent application and granting procedure in general

Free format text: PUBLICATIONS -- ISSUE FEE PAYMENT RECEIVED

STCF Information on status: patent grant

Free format text: PATENTED CASE

MAFP Maintenance fee payment

Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

Year of fee payment: 4