Patent · US2013005487A1 · A1 · US
Data locker synchronization
- (11) Publication number
- US2013005487A1
- (21) Application number
- 13/172,052
- (22) Filing date
- 2011-06-29
- (30) Priority date
- 2011-06-29
- (43) Publication date
- 2013-01-03
- (51) IPC
- A63F 9/24; A63F 13/00; G06F 17/00; G06F 19/00
- (52) CPC
- (73) Assignee
- Amazon Technologies Inc
- (72) Inventors
- Michael Anthony Frazzini; Ethan Z. Evans
- (54) Title
- Data locker synchronization
- (57) Abstract
Disclosed are various embodiments enabling a saved state of an application to be stored at a central location and to be retrieved by multiple computing devices executing the application. Accordingly, saved states of applications and interfaces are also enabled to follow a user from one personal computing device to the next.
- Full text
- View on Google Patents
Claims (1)
- A non-transitory computer-readable medium embodying a program executable in a computing device, the program comprising: code that receives a request from a user to emulate a mobile game, wherein the request is generated from a local computing device currently being utilized by the user; code that retrieves saved state data for the mobile game from a network storage location, wherein the saved state data of the user for the mobile game was previously provided from a mobile computing device; and code that emulates the mobile game and streams application media as part of the emulation to a local computing device, wherein the mobile game starts at a state that corresponds to the saved state data for the mobile game retrieved from the network storage location. 2. The computer-readable medium of claim 1, further comprising: code that logs off the user as a current user of the local computing device, wherein the mobile game was closed after the user was logged off the local computing device; code that logs in a new user as the current user of the local computing device; and code that receives a new request from the new user to emulate the mobile game, wherein the saved state data is maintained for respective users; and wherein the mobile game is emulated and the application media is streamed to the local computing device in response to the new request from the new user, wherein the mobile game starts at a state that corresponds to the saved state data for the mobile game that is retrieved from the network storage location for the new user, the saved state data for the new user being different from the saved state data for the user. 3. The computer-readable medium of claim 1, further comprising code that prompts the user to select a date from a plurality of dates corresponding to when instances of saved state data of the mobile game were transferred to the network storage location for the user, wherein the saved state data corresponding to the date selected is used by the mobile game. 4. A system, comprising: a computing device; and a locker management application executable in the computing device, the locker management application comprising: logic that transfers, by the computing device, a copy of a saved state data file stored locally for an application to a remote network storage location; logic that retrieves the copy of the saved state data file for the application from the remote storage location; and logic that provides the copy of the saved state data file retrieved from the remote network storage location to the application, wherein upon launching the application, the application resumes to a state that corresponds to the saved state data file for the mobile game. 5. The system of claim 4, further comprising logic that prompts a current user to select a date from a plurality of dates corresponding to instances when saved state data files were transferred to the remote network storage location for the application, wherein the saved state data file corresponding to the date selected is sent to the application being used by the current user. 6. The system of claim 4, further comprising logic that replaces the saved state data file for the application that is stored locally with the copy of the saved state data file retrieved from the remote network storage location. 7. The system of claim 4, wherein a current user is a sub-account holder to a primary account holder, wherein in response to verifying that the application is included in an entitlement locker of the primary account holder, the saved state data file in the remote network storage location for the sub-account holder is returned to the application. 8. The system of claim 4, wherein the copy of the saved state data file that is transferred to the remote network storage location is provided from a prior client computing device and is associated with a first copy of the application executing on the prior client computing device; wherein the copy of the saved state data file that is retrieved from the remote network storage location is provided to the computing device and is intended for a second copy of the application executing on the computing device. 9. The system of claim 4, wherein transference of the copy of the saved state data file from the computing device to the remote network storage location is triggered in response to at least one of occurrence of a scheduled time set to transfer the saved state data file for the application, detection of a command to close the application; detection of a command to sign the current user off the application, and detection of a command to power off a client computing device executing the application, the system further comprising: logic that detects occurrence of the scheduled time set to transfer the saved state data file for the application; logic that detects the command to close the application; logic that detects the command to sign the current user off the application; and logic that detects the command to power off a client computing device executing the application. 10. The system of claim 9, wherein in response to the copy of the saved state data file not being able to be sent to the remote network storage location due to the computing device being offline, the saved state data file is sent upon the computing device regaining connectivity with the remote network storage location. 11. The system of claim 4, further comprising: logic that logs off a current user from the computing device after detecting a designated period of inactivity on the computing device; and logic that triggers transference of the copy of the saved state data file for the application to the remote network storage location. 12. A method, comprising the steps of: receiving, by a computing device, identification of a current user of the computing device; receiving, by the computing device, a first request, from an application that the current user is using, to transfer state data for the application to a remote network storage location; and storing, by the computing device, the state data at the remote network storage location in response to granting the first request. 13. The method of claim 12, wherein the computing device comprises a network server and the first request comprises a call to execute a function on the network server to store state data parameters inputted from the application in a file structure selected by the network server, wherein the state data comprises the state data parameters. 14. The method of claim 12, further comprising the steps of: receiving, by the computing device, a second request, from the application the current user is using, to retrieve saved state data for the application from the remote network storage location; and sending to the application the saved state data from the remote network storage location in response to granting the second request. 15. The method of claim 14, wherein the computing device comprises a network server and the second request comprises a call to execute a function on the network server to retrieve from the file structure saved state data parameters and to output the saved state data parameters to the application, wherein the saved state data comprises the saved state data parameters. 16. The method of claim 14, wherein the first request is generated by a first copy of the application on a first client computing device and the second request is generated by a second copy of the application on a second client computing device. 17. The method of claim 12, further comprising the steps of: prompting the current user to select a date from a plurality of dates corresponding to instances when state data was transferred to the remote network storage location for the application, wherein the saved state data corresponding to the date selected is sent to the application being used by the current user. 18. The method of claim 12, wherein the current user is a sub-account holder to a primary account holder, wherein in response to verifying that the application is included in an entitlement locker of the primary account holder, the saved state data for the sub-account holder is provided to the application. 19. The method of claim 12, wherein the first request is triggered in response to at least one of occurrence of a scheduled time set to transfer the saved state data file for the application, detection of a command to close the application; detection of a command to sign the current user off the application, and detection of a command to power off a client computing device executing the application. 20. The method of claim 19, wherein in response to the first request not being able to be sent to the computing device due to the client computing device being offline with the computing device, the first response is placed in a queue and sent upon the client computing device becoming connected with the computing device.
Description
There are many specialized forms of personal computing devices such as, for example, smartphones, electronic book readers, tablet computers, music players, and so on. Personal computing devices are often designed to be used by the owner of the device and are not designed to be passed around between or accessed by multiple users.
Many aspects of the present disclosure can be better understood with reference to the following drawings. The components in the drawings are not necessarily to scale, emphasis instead being placed upon clearly illustrating the principles of the disclosure. Moreover, in the drawings, like reference numerals designate corresponding parts throughout the several views.
FIG. 1 is a drawing of a networked environment according to various embodiments of the present disclosure.
FIGS. 2-5 and 7 - 9 are drawings of user interfaces executed in a client in the networked environment of FIG. 1 according to various embodiments of the present disclosure.
FIG. 6 is a drawing of a user interface of a client device emulated by an emulation server application executed in a computing device in the networked environment of FIG. 1 according to various embodiments of the present disclosure.
FIGS. 10-14 are flowcharts illustrating examples of functionality implemented as portions of the locker manager application executed in a computing device in the networked environment of FIG. 1 according to various embodiments of the present disclosure.
FIG. 15 is a schematic block diagram that provides one example illustration of a computing device employed in the networked environment of FIG.
Citations (2)
- US20110083098A1
- US20110022812A1
Record as JSON
{
"publication_number": "US2013005487A1",
"country": "US",
"kind": "A1",
"title": "Data locker synchronization",
"abstract": "Disclosed are various embodiments enabling a saved state of an application to be stored at a central location and to be retrieved by multiple computing devices executing the application. Accordingly, saved states of applications and interfaces are also enabled to follow a user from one personal computing device to the next.",
"claims": [
"1. A non-transitory computer-readable medium embodying a program executable in a computing device, the program comprising: code that receives a request from a user to emulate a mobile game, wherein the request is generated from a local computing device currently being utilized by the user; code that retrieves saved state data for the mobile game from a network storage location, wherein the saved state data of the user for the mobile game was previously provided from a mobile computing device; and code that emulates the mobile game and streams application media as part of the emulation to a local computing device, wherein the mobile game starts at a state that corresponds to the saved state data for the mobile game retrieved from the network storage location. 2. The computer-readable medium of claim 1, further comprising: code that logs off the user as a current user of the local computing device, wherein the mobile game was closed after the user was logged off the local computing device; code that logs in a new user as the current user of the local computing device; and code that receives a new request from the new user to emulate the mobile game, wherein the saved state data is maintained for respective users; and wherein the mobile game is emulated and the application media is streamed to the local computing device in response to the new request from the new user, wherein the mobile game starts at a state that corresponds to the saved state data for the mobile game that is retrieved from the network storage location for the new user, the saved state data for the new user being different from the saved state data for the user. 3. The computer-readable medium of claim 1, further comprising code that prompts the user to select a date from a plurality of dates corresponding to when instances of saved state data of the mobile game were transferred to the network storage location for the user, wherein the saved state data corresponding to the date selected is used by the mobile game. 4. A system, comprising: a computing device; and a locker management application executable in the computing device, the locker management application comprising: logic that transfers, by the computing device, a copy of a saved state data file stored locally for an application to a remote network storage location; logic that retrieves the copy of the saved state data file for the application from the remote storage location; and logic that provides the copy of the saved state data file retrieved from the remote network storage location to the application, wherein upon launching the application, the application resumes to a state that corresponds to the saved state data file for the mobile game. 5. The system of claim 4, further comprising logic that prompts a current user to select a date from a plurality of dates corresponding to instances when saved state data files were transferred to the remote network storage location for the application, wherein the saved state data file corresponding to the date selected is sent to the application being used by the current user. 6. The system of claim 4, further comprising logic that replaces the saved state data file for the application that is stored locally with the copy of the saved state data file retrieved from the remote network storage location. 7. The system of claim 4, wherein a current user is a sub-account holder to a primary account holder, wherein in response to verifying that the application is included in an entitlement locker of the primary account holder, the saved state data file in the remote network storage location for the sub-account holder is returned to the application. 8. The system of claim 4, wherein the copy of the saved state data file that is transferred to the remote network storage location is provided from a prior client computing device and is associated with a first copy of the application executing on the prior client computing device; wherein the copy of the saved state data file that is retrieved from the remote network storage location is provided to the computing device and is intended for a second copy of the application executing on the computing device. 9. The system of claim 4, wherein transference of the copy of the saved state data file from the computing device to the remote network storage location is triggered in response to at least one of occurrence of a scheduled time set to transfer the saved state data file for the application, detection of a command to close the application; detection of a command to sign the current user off the application, and detection of a command to power off a client computing device executing the application, the system further comprising: logic that detects occurrence of the scheduled time set to transfer the saved state data file for the application; logic that detects the command to close the application; logic that detects the command to sign the current user off the application; and logic that detects the command to power off a client computing device executing the application. 10. The system of claim 9, wherein in response to the copy of the saved state data file not being able to be sent to the remote network storage location due to the computing device being offline, the saved state data file is sent upon the computing device regaining connectivity with the remote network storage location. 11. The system of claim 4, further comprising: logic that logs off a current user from the computing device after detecting a designated period of inactivity on the computing device; and logic that triggers transference of the copy of the saved state data file for the application to the remote network storage location. 12. A method, comprising the steps of: receiving, by a computing device, identification of a current user of the computing device; receiving, by the computing device, a first request, from an application that the current user is using, to transfer state data for the application to a remote network storage location; and storing, by the computing device, the state data at the remote network storage location in response to granting the first request. 13. The method of claim 12, wherein the computing device comprises a network server and the first request comprises a call to execute a function on the network server to store state data parameters inputted from the application in a file structure selected by the network server, wherein the state data comprises the state data parameters. 14. The method of claim 12, further comprising the steps of: receiving, by the computing device, a second request, from the application the current user is using, to retrieve saved state data for the application from the remote network storage location; and sending to the application the saved state data from the remote network storage location in response to granting the second request. 15. The method of claim 14, wherein the computing device comprises a network server and the second request comprises a call to execute a function on the network server to retrieve from the file structure saved state data parameters and to output the saved state data parameters to the application, wherein the saved state data comprises the saved state data parameters. 16. The method of claim 14, wherein the first request is generated by a first copy of the application on a first client computing device and the second request is generated by a second copy of the application on a second client computing device. 17. The method of claim 12, further comprising the steps of: prompting the current user to select a date from a plurality of dates corresponding to instances when state data was transferred to the remote network storage location for the application, wherein the saved state data corresponding to the date selected is sent to the application being used by the current user. 18. The method of claim 12, wherein the current user is a sub-account holder to a primary account holder, wherein in response to verifying that the application is included in an entitlement locker of the primary account holder, the saved state data for the sub-account holder is provided to the application. 19. The method of claim 12, wherein the first request is triggered in response to at least one of occurrence of a scheduled time set to transfer the saved state data file for the application, detection of a command to close the application; detection of a command to sign the current user off the application, and detection of a command to power off a client computing device executing the application. 20. The method of claim 19, wherein in response to the first request not being able to be sent to the computing device due to the client computing device being offline with the computing device, the first response is placed in a queue and sent upon the client computing device becoming connected with the computing device."
],
"description_excerpt": "There are many specialized forms of personal computing devices such as, for example, smartphones, electronic book readers, tablet computers, music players, and so on. Personal computing devices are often designed to be used by the owner of the device and are not designed to be passed around between or accessed by multiple users.\n\nMany aspects of the present disclosure can be better understood with reference to the following drawings. The components in the drawings are not necessarily to scale, emphasis instead being placed upon clearly illustrating the principles of the disclosure. Moreover, in the drawings, like reference numerals designate corresponding parts throughout the several views.\n\nFIG. 1 is a drawing of a networked environment according to various embodiments of the present disclosure.\n\nFIGS. 2-5 and 7 - 9 are drawings of user interfaces executed in a client in the networked environment of FIG. 1 according to various embodiments of the present disclosure.\n\nFIG. 6 is a drawing of a user interface of a client device emulated by an emulation server application executed in a computing device in the networked environment of FIG. 1 according to various embodiments of the present disclosure.\n\nFIGS. 10-14 are flowcharts illustrating examples of functionality implemented as portions of the locker manager application executed in a computing device in the networked environment of FIG. 1 according to various embodiments of the present disclosure.\n\nFIG. 15 is a schematic block diagram that provides one example illustration of a computing device employed in the networked environment of FIG.",
"cpc": [
"H04L 67/142",
"A63F 2300/554",
"A63F 9/24",
"H04L 67/02",
"H04L 67/1085",
"H04L 67/1095",
"H04L 67/131"
],
"ipc": [
"A63F 9/24",
"A63F 13/00",
"G06F 17/00",
"G06F 19/00"
],
"assignees": [
"Amazon Technologies Inc"
],
"inventors": [
"Michael Anthony Frazzini",
"Ethan Z. Evans"
],
"filing_date": "2011-06-29",
"publication_date": "2013-01-03",
"priority_date": "2011-06-29",
"application_number": "US-201113172052-A",
"family_id": "47391194",
"cited_by_count": 105,
"citations": [
"US20110083098A1",
"US20110022812A1"
]
}
Record 5,236 of 8,000 in Patents full text (MLC-0201). Request the full dataset.